发起拉转推接口(RedirectStart)

最近更新时间:2020-10-15 20:59:17

接口描述

发起拉转推任务,用于将指定的直播流转推为源站的直播视频流,并支持该直播流转码;

此接口需开通直播转码才能应用,该服务分配资源与直播转码隔离,需要单独配置,请联系技术支持。

拉流协议

直播流:rtmp/http-flv

转推流协议

直播流:rtmp

请求方式:

POST

请求参数:

参数名 类型 是否必需 描述
uniqname string 客户的域名标识
app string 客户的频道名
src array 源流地址,支持多路,支持多路。直播源流地址只支持http/rtmp协议
durl array 推流地址,长度必须和src相同,说明:src[0]推流到 → durl[0],src[1]推流到→ durl[1],如长度不一致或非地址类型:1030:invalid durl。只支持http/rtmp协议的地址。
trans_params json array 转码参数,详见下。说明:src[0]推流到 → durl[0],使用trans_params[0]的转码参数。
task_start_time int64 任务开始时间,定时任务用到。如果时间戳小于当前时间或是0或是空或者不填,代表创建拉转推任务即开始。例:想在今晚8:00启动一个任务,此参数为今晚的八点的时间戳:1594692000。仅支持提前10分钟创建。不支持临近时间点了创建。
task_stop_time int64 任务自动停止时间,如果未手动调用停止拉转推接口,则任务会一直到这个时间结束。如果时间戳小于当前时间或是0或是空或者不填,代表任务会一直轮询下去,可以通过stop接口停止。如果设置该时间要大于task_start_time 时间的10分钟。
  • 如果拉转推任务启动时失败, 任务会每分钟重试一次,重试10次后,自动认为失败。

trans_params结构:

参数名 类型 是否必需 描述
logos array 水印信息,详见下。支持多LOGO
fops json 视频转码参数,详见下
trans int 是否转码,0:否,1:是,不传默认0

logos结构:

参数名 类型 是否必需 描述
wm_image string 可访问的图片网址,支持http,https格式地址。若带了logos字段,则该字段是必填
wm_image_back string 可访问的图片网址,备用的logo地址。若上面wm_image图片下载失败,会下载该地址。支持http,https格式地址。
wm_gravity string logo位置。"TOP_LEFT", // 左上角;"TOP_CENTER", // 上部居中;"TOP_RIGHT", // 右上角;"CENTER_LEFT", // 中部靠左;"CENTER", // 居中;"CENTER_RIGHT", // 中部靠右;"BOTTOM_LEFT", // 左下角;"BOTTOM_CENTER", // 下部居中"BOTTOM_RIGHT", // 右下角。若带了logos字段,则该字段是必
wm_width int logo的宽度
wm_height int logo的高度
wm_dx int 表示logo的坐标或相对输入视频的水平偏移量,值有两种形式:整数型代表偏移像素,范围[-4096,4096],单位px;小数型范围(-1,1)小数时可添加 h 或 w 指定比率的参考是视频的宽或高,如 0.26h 表示视频高的0.26, 如果只写为0.26,那么就相当于0.26w
wm_dy int 表示logo的坐标或相对输入视频的垂直偏移量,值有两种形式:整数型代表偏移像素,范围[-4096,4096],单位px;小数型范围(-1,1)小数时可添加 h 或 w 指定比率的参考是视频的宽或高,如 0.26h 表示视频高的0.26, 如果只写为0.26,那么就相当于0.26h

fops结构:

参数名 类型 是否必需 描述
bitrate string 视频码率。比如"2000K"、"2M"
res string 分辨率,宽x高.比如:"1080×720"
fps string 帧率,使用范围1-60
vcodec string 编码格式。可选: 264/265/copy/COPY/H264/H265
acodec string 音频格式,可选:aac/copy

返回参数:

参数名 类型 是否必需 描述
errno int 错误码
errmsg string 错误信息
uniqname string 客户的域名标识
task_type string "redirect"
reqlist array 返回具体任务id与状态
reqid string 任务id
errno array 任务状态

请求示例:


POST /?Action=RedirectStart

&Version=2017-01-01

&X-Amz-Algorithm=AWS4-HMAC-SHA256

&X-Amz-Date=20170518T090434Z

&X-Amz-Credential=xxxxx

&X-Amz-SignedHeaders=xxxxx

&X-Amz-Signature=xxxxxx HTTP/1.1

Host: ket.cn-beijing-6.api.ksyun.com

Accept: application/json

{
    "uniqname":"XXX",
    "app":"XXX",
    "src":[

            "url":"rtmp://XXX/live/src_test00",
            "url":"rtmp://XXX/live/src_test01" 
    ],
    "durl":[
        "rtmp://XXX/live/lsw_test",
        "rtmp://XXX/live/lsw_test2"
    ],
    "trans_params":[{
        "logos":[
            {
                "wm_image": "https://ks3-cn-beijing.ksyun.com/XXX/XX.png",
                "wm_gravity":"TOP_LEFT",
                "wm_width":200,
                "wm_height":100,
                "wm_dx":0,
                "wm_dy":0
            }],
        "fops":{
            "bitrate":"200k",
            "res":"1080x720",
            "fps":"30",
            "vcodec":"h264",
            "acodec":"aac"
        },
        "ext_param":"",
        "trans":1
    },
{
        "logos":[
            {
                "wm_image": "https://ks3-cn-beijing.ksyun.com/XXX/XX.png",
                "wm_gravity":"TOP_LEFT",
                "wm_width":200,
                "wm_height":100,
                "wm_dx":0,
                "wm_dy":0
            }],
        "fops":{
            "bitrate":"200k",
            "res":"1080x720",
            "fps":"30",
            "vcodec":"h264",
            "acodec":"aac"
        },
        "ext_param":"",
        "trans":1
    }],
    "type":0,
    "task_start_time": 0,
    "task_stop_time": 0,
     "start_index":2
}

接口返回值:

{

"errno": 0,

"errmsg": "success",

"uniqname": "XX",

"task_type": "redirect",

"reqlist": [ // 返回成功任务的id

{

"reqid": "db3b17fa7e5c1f4ea269634cd30de254", // 第一个任务id

"errno": 0

}

...

]
}

金山云,开启您的云计算之旅

免费注册