14 转码相关接口
14.1.转码接口
-
用途 对上传到服务器上的视频进行转码,转码后可以面向互联网或局域网发布播出。
-
请求 transcodeMgr/?request=transcode&application=vod&src=案例视频8.mp4&src_id=video89&video_bitrate=800&audio_bitrate=60&width=0&height=0&deinterlace=OFF&encoding=UTF-8&audio_stream=&output_formats=hls;flv;mp4&publish=&title= 参数说明:
-
src* 输入文件名,如果文件在转码目录的下级子目录内,则需要包含该子目录,如: subdir/myvideo.mp4。中文文件名参数使用UTF-8字符集编码。
-
encoding* 输入文件名在服务器上的实际字符集编码。如果是UTF-8可以省略。
-
src_id* 转码后输出资源的资源编号,由转码方提供(可以和集成的业务系统关联对应),只能包含英文字符和数字,要确保其唯一性。这个编号就是资源在流媒体服务器上的播出流名称,可以使用该编号获取播出视频流。
-
application* 应用名,定义转码结束后资源发布到流媒体服务器上的哪个应用下。该应用名和流名称(对应src_id)可以确定一个资源的播出地址。
-
video_bitrate* 视频转码的比特率,单位Kbps,如果省略表示不对视频进行转码。只有视频格式是H264,并且码率大小适合播出(如在2Mbps以下),才可以省略该参数。
-
audio_bitrate* 音频转码的比特率,单位Kbps,如果省略表示不对音频进行转码。只有音频格式是AAC,并且码率大小适合播出(如在100Kbps以下),才可以省略该参数。
-
width* 视频转码输出的画面宽度,省略或者设为0表示不改变画幅,使用原始视频的画幅大小。
-
height* 视频转码输出的画面高度,省略或者设为0表示不改变画幅,使用原始视频的画幅大小。
-
deinterlace* 对于隔行扫描的视频画面,该参数定义是否进行画面的反交错处理,ON表示要进行反交错,OFF或者省略表示不进行反交错处理。
-
audio_stream* 音频流索引号,对于多语言的多媒体提文件,会包含多个语言的音频流,使用该参数可以选择一种语言输出。不清楚怎么使用时,请省略该参数,大部分情况下不需要提供。
-
output_formats* 转码输出格式,可以是flv,hls,mp4格式的一种或几种,多种格式使用分号隔开。
-
publish* 如果需要将转码输出的视频信息发布到第三方系统,可以提供发布地址,转码结束后会将视频信息提交给该地址。如果没有该需求,请省略该参数和title参数。
-
title* 如果要进行转码信息发布,可以提供一个发布的标题。
-
响应
{"code":0 }
14.2.转码接口
- 用途 查询服务器上正在转码的转码任务的进度,该接口返回所有正在转码任务的列表。
- 请求 transcodeMgr/?request=list_working
- 响应
{"code":0,"data":{"count":1,"items":[{"status":"working","src_file":"案例视频8.mp4","application":"vod","bitrate":"800","width":"640","height":"352","bitrate_audio":"56","src_id":"8ass3","add_time":"1516947498","from":null,"start_time":"1516947498","encode_progress":"1.0%","work_duration":1}]} }
返回0或多个转码任务的进度信息。
- src_file* 转码文件名
- application* 输出应用名
- src_id* 资源编号
- start_time* 开始转码时间,Unix时间戳
- encode_progress* 转码进度,百分比格式
- work_duration* 转码持续时间,单位秒
- bitrate* 视频转码码率,Kbps
- bitrate_audio* 音频转码码率,Kpbs
- width* 转码输出画幅宽度
- height* 转码输出画幅高度
14.3.停止转码接口
-
用途 停止一个正在转码的任务。
-
请求 transcodeMgr/?request=stop_transcode&src_id=8ass3
-
src_id* 转码任务的资源编号,由转码接口传入。
-
响应
{"code":0 }