直播录制

更新时间: 2022/10/10 02:01:23

设置录制配置

设置频道下的录制相关配置。

URL

POST https://vcloud.163.com/app/record/channel/updateConfig HTTP/1.1
Content-Type: application/json;charset=utf-8

请求参数

参数 类型 是否必选 描述
cid String 必选 频道ID。
duration Int 必选 录制周期, 取值范围[5,120], 单位分钟, 默认5。
format Int 必选 录制切片视频容器格式, 取值0-mp4, 1-flv, 2-mp3, 4-hls,默认1。
filename String 必选 录制切片文件名前缀, 要求非空, 字符长度不大于64。
tsNameTemplate String 可选 ts切片的名称模板,仅在格式为hls时有效,如{UnixTimestamp}_{Sequence}表示以生成ts的服务器毫秒时间戳、下划线、切片序号命名ts。
  • 在推流过程中调用此接口,相关参数变化会在下次推流中生效。

  • 字符长度指的是字符编码单元的数量。

  • format值意义如下:0-mp4, 1-flv, 2-mp3, 4-hls, 在mp3录制场景下, 即使推流有视频流, 录制也只会包含音频流。

  • 录制切片在点播系统中的名称为{filename}_{sliceStartTime}_{sliceEndTime}, 如:20180808演唱会直播_20180808-200106_20180808-220105。

  • 如果录制format是hls,且传入tsNameTemplate,即指定ts切片的名称模板,则录制文件m3u8中的ts切片命名方式遵循模板;如果传入tsNameTemplate且format不是hls,则返回参数错误。

    tsNameTemplate必须包含{UnixTimestamp}和{Sequence},允许传入a-z、A-Z、0-9、_(下划线),且除去{UnixTimestamp}和{Sequence}之后长度不得超过8位。

返回参数

参数 类型 说明
code Int 状态码。
requestId String 请求id。
msg String 错误信息, 非200状态码下返回。

示例

curl请求示例

curl -X POST -H "Content-Type: application/json" -H "AppKey: 29781bbc4db54742a3ebcxxxxxxxxxxx" -H "Nonce: 12345" -H "CurTime: 1469171950571" -H "CheckSum: 4ba6ca70c685eb900917e423eadaxxxxxxxxxxxxx" -d '{"cid": "cidxxxxxxxxx","duration": 300,"format": 0, "filename":"20180808演唱会直播"}' https://vcloud.163.com/app/record/channel/updateConfig

返回示例

    //成功结果示例。
    "Content-Type": "application/json; charset=utf-8"
    {        
        "code":200,
        "requestId": "xxx"
    }
    
    //错误返回示例。
    "Content-Type": "application/json; charset=utf-8"
    {
        "code":723,
        "msg":"使用直播录制功能需开通云点播服务",
        "requestId": "xxx"
    }

状态码

HTTP状态码 说明
200 操作成功。
409 认证失败。
501 内部错误。
607 用户信息不存在。
613 CheckSum为空。
614 AppKey为空。
615 CurTime为空。
617 频道信息与当前用户不匹配。
618 查询数据信息不存在。
631 请求参数错误。
647 频道不存在。
723 使用直播录制功能需开通云点播服务。

查询录制配置设置

获取频道下的录制相关配置。

URL

POST https://vcloud.163.com/app/record/channel/getConfig HTTP/1.1
Content-Type: application/json;charset=utf-8

请求参数

参数 类型 是否必选 描述
cid String 必选 频道ID。

返回参数

参数 类型 说明
code int 状态码。
requestId String 请求id。
ret JSON 返回信息, 200状态码下返回。
msg String 错误信息, 非200状态码下返回。

其中,ret格式如下:

参数 类型 说明
cid String 频道。
duration Int 录制周期, 单位分钟。
format Int 录制切片视频容器格式。
filename String 录制切片文件名前缀。

示例

curl请求示例

curl -X POST -H "Content-Type: application/json" -H "AppKey: 29781bbc4db54742a3ebcxxxxxxxxxxx" -H "Nonce: 12345" -H "CurTime: 1469171950571" -H "CheckSum: 4ba6ca70c685eb900917e423eadaxxxxxxxxxxxxx" -d '{"cid": "cidxxxxxxxxx"}' https://vcloud.163.com/app/record/channel/getconfig

返回示例

    //成功结果示例。
    "Content-Type": "application/json; charset=utf-8"
    {        
        "code":200,
        "requestId": "xxx",
        "ret":{
            "cid": "xxx",
            "duration": 120,
            "format": 0
            "filename": "20180808演唱会直播",
        }
    }
    
    //错误返回示例。
    "Content-Type": "application/json; charset=utf-8"
    {
        "code":723,
        "msg":"使用直播录制功能需开通云点播服务",
        "requestId": "xxx"
    }

状态码

状态码 说明
200 操作成功。
409 认证失败。
501 内部错误。
607 用户信息不存在。
613 CheckSum为空。
614 AppKey为空。
615 CurTime为空。
617 频道信息与当前用户不匹配。
631 请求参数错误。
647 频道不存在。
723 使用直播录制功能需开通云点播服务。
658 直播录制配置不存在。

自动录制开关设置

设置频道下的自动录制开关。

URL

POST https://vcloud.163.com/app/channel/autoRecordSwitch HTTP/1.1
Content-Type: application/json;charset=utf-8

请求参数

参数 类型 是否必选 描述
cid String 必选 频道ID。
needRecord Int 可选 自动录制开关,0:关闭,1:打开
  • 「创建频道」后,自动录制开关默认为关闭。
  • 在推流过程中调用此接口,相关参数变化在下次推流时才会生效。
  • 无needRecord参数,则此次操作无变更。

返回参数

参数 类型 说明。
code int 状态码。
requestId String 请求id。
msg String 错误信息, 非200状态码下返回。

示例

curl请求示例

curl -X POST -H "Content-Type: application/json" -H "AppKey: 29781bbc4db54742a3ebcxxxxxxxxxxx" -H "Nonce: 12345" -H "CurTime: 1469171950571" -H "CheckSum: 4ba6ca70c685eb900917e423eadaxxxxxxxxxxxxx" -d '{"cid": "cidxxxxxxxxx", "needRecord": 1}' https://vcloud.163.com/app/channel/autoRecordSwitch

返回示例

    //成功结果示例。
    "Content-Type": "application/json; charset=utf-8"
    {        
        "code":200,
        "requestId": "xxx"
    }
    
    //错误返回示例。
    "Content-Type": "application/json; charset=utf-8"
    {
        "code":723,
        "msg":"使用直播录制功能需开通云点播服务",
        "requestId": "xxx"
    }

状态码

状态码 说明
200 操作成功。
409 认证失败。
501 内部错误。
607 用户信息不存在。
613 CheckSum为空。
614 AppKey为空。
615 CurTime为空。
617 频道信息与当前用户不匹配。
631 请求参数错误。
647 频道不存在。
723 使用直播录制功能需开通云点播服务。
658 直播录制配置不存在。

开启直播中录制

该接口用于主动发起频道下的直播录制。

返回结果状态码为200,表明录制任务成功发起。非200状态码,请根据错误码按需进行重试等相应操作。

录制任务成功发起后,如果推流中止而导致拉不到流,超时后任务会自动停止,同时发送频道状态变动的通知。重新推流直播后,需要用户自己重新请求发起。超时时间为 30 s。

主动录制提供了实时控制录制时间的能力,不建议用户将该接口与自动录制同时间混合使用。

URL

POST https://vcloud.163.com/app/record/channel/start HTTP/1.1
Content-Type: application/json;charset=utf-8

请求参数

参数 类型 是否必选 描述
cid String 必选 频道ID.

返回参数

参数 类型 说明
code int 状态码。
requestId String 请求id。
ret JSON 返回信息, 200状态码下返回。
msg String 错误信息, 非200状态码下返回。

其中,ret格式如下,以下字段都是非必需返回:

参数 类型 说明
cid String 频道。
jobId Long 直播录制任务系统内部编号,仅供关联参考。
devMsg String 补充说明。

示例

curl请求示例

curl -X POST -H "Content-Type: application/json" -H "AppKey: 29781bbc4db54742a3ebcxxxxxxxxxxx" -H "Nonce: 12345" -H "CurTime: 1469171950571" -H "CheckSum: 4ba6ca70c685eb900917e423eadaxxxxxxxxxxxxx" -d '{"cid": "cidxxxxxxxxx"}' https://vcloud.163.com/app/record/channel/start

返回示例

    //成功结果示例。
    "Content-Type": "application/json; charset=utf-8"
    {        
        "code":200,
        "requestId": "xxx",
        "ret":{
            "cid": "xxx",
            "jobId": 123456
        }
    }
    
    //成功结果示例。
    "Content-Type": "application/json; charset=utf-8"
    {        
        "code":200,
        "requestId": "xxx",
        "ret":{
            "cid": "xxx",
            "jobId": 123456,
            "devMsg": "录制任务已存在",
        }
    }
    
    //错误返回示例。
    "Content-Type": "application/json; charset=utf-8"
    {
        "code":723,
        "requestId": "xxx",
        "msg":"使用直播录制功能需开通云点播服务"
    }

响应状态码

状态码 说明
200 操作成功。
409 认证失败。
501 内部错误。
607 用户信息不存在。
613 CheckSum为空。
614 AppKey为空。
615 CurTime为空。
617 频道信息与当前用户不匹配。
618 查询数据信息不存在。
631 请求参数错误。
634 频道创建录制失败。
647 频道不存在。
654 录制任务暂不支持此协议地址。
723 使用直播录制功能需开通云点播服务。

结束直播中录制

该接口用于结束频道下的直播录制。

在录制任务运行后,如果系统未收到该接口请求,那么在推流行为结束后拉流超时,任务会自动停止,如果注册了状态回调,系统会发送一个状态通知。重新推流直播后,需要用户自己重新请求发起直播录制。

URL

POST https://vcloud.163.com/app/record/channel/stop HTTP/1.1
Content-Type: application/json;charset=utf-8

请求参数

参数 类型 是否必选 描述
cid String 必选 频道ID。

示例

curl请求示例

curl -X POST -H "Content-Type: application/json" -H "AppKey: 29781bbc4db54742a3ebcxxxxxxxxxxx" -H "Nonce: 12345" -H "CurTime: 1469171950571" -H "CheckSum: 4ba6ca70c685eb900917e423eadaxxxxxxxxxxxxx" -d '{"cid": "cidxxxxxxxxx"}' https://vcloud.163.com/app/record/channel/stop

返回参数

参数 类型 说明
code Int 状态码。
requestId String 请求id。
ret JSON 返回信息, 200状态码下返回。
msg String 错误信息, 非200状态码下返回。

其中,ret格式如下,以下字段都是非必需返回:

参数 类型 说明
cid String 频道。
jobId long 直播录制任务系统内部编号,仅供参考,0表示任务已经因为拉流超时而停止。
devMsg String 补充说明。

返回示例

    //成功结果示例。
    "Content-Type": "application/json; charset=utf-8"
    {        
        "code":200,
        "requestId": "xxx",
        "ret":{
            "cid": "xxx",
            "jobId": 123456
        }
    }
    
    //错误返回示例。
    "Content-Type": "application/json; charset=utf-8"
    {
        "code":723,
        "requestId": "xxx",
        "msg":"使用直播录制功能需开通云点播服务"
    }

响应状态码

状态码 说明
200 操作成功。
409 认证失败。
501 内部错误。
607 用户信息不存在。
613 CheckSum为空。
614 AppKey为空。
615 CurTime为空。
617 频道信息与当前用户不匹配。
618 查询数据信息不存在。
631 请求参数错误。
647 频道不存在。
654 录制任务暂不支持此协议地址。
655 录制任务系统停止失败。
656 录制任务停止失败。
723 使用直播录制功能需开通云点播服务。

录制重置

该接口用于对频道下正在进行的录制任务进行重置,此时会进行切片,并以最新录制配置发起新的录制任务。

录制重置适用于自动录制和主动录制。

URL

POST https://vcloud.163.com/app/record/channel/reset HTTP/1.1
Content-Type: application/json;charset=utf-8

参数说明

参数 类型 是否必选 描述
cid String 必选 频道ID。

返回参数

参数 类型 说明
code int 状态码。
requestId String 请求id。
ret JSON 返回信息, 200状态码下返回。
msg String 错误信息, 非200状态码下返回。

其中,ret格式如下,以下字段都是非必需返回:

参数 类型 说明
pullUrl String 拉流地址。
jobId Long 直播录制任务系统内部编号,仅供参考,0表示任务已经因为拉流超时而停止。
devMsg String 补充说明。

示例

curl请求示例

curl -X POST -H "Content-Type: application/json" -H "AppKey: 29781bbc4db54742a3ebcxxxxxxxxxxx" -H "Nonce: 12345" -H "CurTime: 1469171950571" -H "CheckSum: 4ba6ca70c685eb900917e423eadaxxxxxxxxxxxxx" -d '{"cid": "cidxxxxxxxxx"}' https://vcloud.163.com/app/record/channel/reset

返回示例

    //成功结果示例。
    "Content-Type": "application/json; charset=utf-8"
    {        
        "code":200,
        "requestId": "xxx",
        "ret":{
            "cid": "xxx",
            "jobId": 123456
        }
    }
    
    //错误返回示例。
    "Content-Type": "application/json; charset=utf-8"
    {
        "code":723,
        "requestId": "xxx",
        "msg":"使用直播录制功能需开通云点播服务"
    }

状态码

状态码 说明
200 操作成功。
409 认证失败。
501 内部错误。
607 用户信息不存在。
613 CheckSum为空。
614 AppKey为空。
615 CurTime为空。
617 频道信息与当前用户不匹配。
618 查询数据信息不存在。
631 请求参数错误。
647 频道不存在。
654 录制任务暂不支持此协议地址。
655 录制任务系统停止失败。
657 录制任务重置失败。
723 使用直播录制功能需开通云点播服务。

开启直播中区间录制

发起一次区间录制。

URL

POST https://vcloud.163.com/app/record/channel/intervalstart HTTP/1.1
Content-Type: application/json;charset=utf-8

请求参数

参数 类型 是否必选 描述
cid String 必选 32位频道ID, 指代拉流地址。
format Int 可选 录制视频容器格式, 范围 [0-1] ,默认1。
filename String 必选 点播业务文件名前缀,要求非空,字符长度不大于64。
identifier String 必选 32位字符uuid, 用于start和end标识配对。
customedCallbackTag String 可选 自定义文件回调标签,字符长度不大于64。
  • 字符长度指的是字符编码单元的数量。
  • 录制切片在点播系统中的名称为{filename}_{sliceStartTime}_{sliceEndTime}, 如:20180808演唱会直播_20180808-200106_20180808-220105。
  • format值意义如下:0-mp4, 1-flv。
  • 同频道下任务数上限是3,第4个任务的请求会将最早提交的任务停止。

返回参数

参数 类型 说明
code Int 状态码。
requestId String 请求id。
ret JSON 返回信息, 200状态码下返回。
msg String 错误信息, 非200状态码下返回。

其中,ret格式如下,以下字段都是非必需返回:

参数 类型 说明
cid String 频道。
identifier long 32位uuid。
devMsg String 补充说明。

示例

curl请求示例

curl -X POST -H "Content-Type: application/json" -H "AppKey: 29781bbc4db54742a3ebcxxxxxxxxxxx" -H "Nonce: 12345" -H "CurTime: 1469171950571" -H "CheckSum: 4ba6ca70c685eb900917e423eadaxxxxxxxxxxxxx" -d '{"cid": "cidxxxxxxxxx","watermarkUrl": "http://xx/xx/xx","watermarkCoordinate": "5%_5%_0", "format":0, filename":"20180808演唱会直播", "outputApp":"xx", identifier":"xx","customedCallbackTag":"xx"}' https://vcloud.163.com/app/record/channel/intervalstart

返回示例

    //成功结果示例。
    "Content-Type": "application/json; charset=utf-8"
    {        
        "code":200,
        "requestId": "xxx",
        "ret":{
            "cid": "xxx",
            "identifier": "xxx",
            "devMsg": "录制任务已结束",
        }
    }
    
    //错误返回示例。
    "Content-Type": "application/json; charset=utf-8"
    {
        "code":723,
        "msg":"使用直播录制功能需开通云点播服务",
        "requestId": "xxx"
    }

响应状态码

状态码 说明
200 操作成功。
409 认证失败。
501 内部错误。
607 用户信息不存在。
613 CheckSum为空。
614 AppKey为空。
615 CurTime为空。
617 频道信息与当前用户不匹配。
618 查询数据信息不存在。
631 请求参数错误。
647 频道不存在。
723 使用直播录制功能需开通云点播服务。

结束直播中区间录制

结束一次区间录制。

URL

POST https://vcloud.163.com/app/record/channel/intervalstop HTTP/1.1
Content-Type: application/json;charset=utf-8

请求参数

参数 类型 是否必选 描述
cid String 必选 频道ID, 指代拉流地址。
identifier String 必选 32位uuid, 用于start和end配对。
  • start发起后,stop的请求会结束此次区间录制,identifier则用于精确控制频道下某个任务的停止。
  • 十五分钟之内,若无stop请求,区间录制任务不会因推流的断续而结束。若十五分钟后仍无stop请求,则任务在拉流失败后会自行停止。

返回参数

参数 类型 说明
code Int 状态码。
requestId String 请求id。
ret JSON 返回信息, 200状态码下返回。
msg String 错误信息, 非200状态码下返回。

其中,ret格式如下,以下字段都是非必需返回:

参数 类型 说明
cid String 频道。
identifier String 32位uuid。
devMsg String 补充说明。

示例

curl请求示例

curl -X POST -H "Content-Type: application/json" -H "AppKey: 29781bbc4db54742a3ebcxxxxxxxxxxx" -H "Nonce: 12345" -H "CurTime: 1469171950571" -H "CheckSum: 4ba6ca70c685eb900917e423eadaxxxxxxxxxxxxx" -d '{"cid": "cidxxxxxxxxx","identifier": xxx"}' https://vcloud.163.com/app/record/channel/intervalstop

返回示例

    //成功结果示例。
    "Content-Type": "application/json; charset=utf-8"
    {        
        "code":200,
        "requestId": "xxx",
        "ret":{
            "cid": "xxx",
            "identifier": "xxx",
            "devMsg": "录制任务已结束",
        }
    }
    
    //错误返回示例。
    "Content-Type": "application/json; charset=utf-8"
    {
        "code":723,
        "msg":"使用直播录制功能需开通云点播服务",
        "requestId": "xxx"
    }

响应状态码

状态码 说明
200 操作成功。
409 认证失败。
501 内部错误。
607 用户信息不存在。
613 CheckSum为空。
614 AppKey为空。
615 CurTime为空。
617 频道信息与当前用户不匹配。
618 查询数据信息不存在。
631 请求参数错误。
647 频道不存在。
723 使用直播录制功能需开通云点播服务。

设置录制视频存活时间

用户可设置录制视频的存活时间,过期后视频将被自动删除。

设置的录制视频存活时间只对新生成的录制视频起效,对设置前已经存在的录制视频无效。

URL

POST https://vcloud.163.com/app/record/setExpire HTTP/1.1
Content-Type: application/json;charset=utf-8

请求参数

参数 类型 是否必选 描述
cid String 可选 频道ID。
lifespan Long 必选 录制视频存活时间(单位:秒),范围:[1天-1年]
如果cid为NULL,则是用户级别的存活时间
如果cid不为NULL,则是频道级别的存活时间。

如果同时设置了用户级别和频道级别的存活时间,如:设置用户级别存活时间为172800(2天),频道ID为"cidxxx"的录制视频存活时间为86400(1天),那么频道"cidxxx"下产生的录制视频的存活时间为1天,除了"cidxxx"之外的所有频道产生的录制视频的存活时间为2天。

返回参数

http响应:json

参数 类型 说明
code int 状态码。
msg String 错误信息。

示例

curl请求实例

curl -X POST -H "Content-Type: application/json" -H "AppKey: 29781bbc4db54742a3ebcxxxxxxxxxxx" -H "Nonce: 12345" -H "CurTime: 1469171950571" -H "CheckSum: 4ba6ca70c685eb900917e423eadaxxxxxxxxxxxxx" -d '{"cid":"cidxxxxxxxxx", "lifespan": 86400}' https://vcloud.163.com/app/record/setExpire

返回示例

//返回结果格式。
"Content-Type": "application/json; charset=utf-8"
{
    "code" : XXX,
    "msg" : XXX
}

//错误返回示例。
"Content-Type": "application/json; charset=utf-8"
{
    "code":723,
    "msg":"使用直播录制功能需开通云点播服务"
}

响应状态码

状态码 说明
200 操作成功。
409 用户登录认证失败。
602 查询失败。
607 用户信息不存在。
613 CheckSum为空。
614 AppKey为空。
615 CurTime为空。
618 查询数据信息不存在。
631 请求参数错误。
638 访问频率超限,每个应用对该接口限制为500次/分钟。

查询录制视频存活时间

用户可查询之前设置的录制视频的存活时间,包括用户级别和频道级别,频道级别按频道ID升序返回。

URL

POST https://vcloud.163.com/app/record/getExpire HTTP/1.1
Content-Type: application/json;charset=utf-8

请求参数

参数 类型 是否必选 描述
records int 可选 单页记录数,不超过200,默认值为10。
pnum int 可选 要取第几页,默认值为1。

返回参数

参数 类型 说明
cid String 频道ID。
lifespan Long 录制视频存活时间(秒)。
pnum Long 当前页。
totalRecords Long 总记录数。
totalPnum Long 总页数。
records Long 单页记录数。
code int 状态码。
msg String 错误信息。

示例

curl请求示例

curl -X POST -H "Content-Type: application/json" -H "AppKey: 29781bbc4db54742a3ebcxxxxxxxxxxx" -H "Nonce: 12345" -H "CurTime: 1469171950571" -H "CheckSum: 4ba6ca70c685eb900917e423eadaxxxxxxxxxxxxx" -d '{"records":10, "pnum": 1}' https://vcloud.163.com/app/record/getExpire

返回示例

//正确返回示例。
"Content-Type": "application/json; charset=utf-8"
{
	"ret": {
	    // 用户级别的存活时间。
		"userLevel": 172800,
		// 频道级别的存活时间。
		"channelLevel": {
			"pnum": 1,
			"list": [{
			    // <cid:lifespan>
				"03ba531015dd4b6bb7574fcdfe4103d5": 86400
			}, {
				"055fa99af861422e9d72e1917dec2cfb": 86400
			}, {
				"0ca6689b337349c4878f808a98d52c61": 86400
			}, {
				"11eeeb1c3cb64e178c0500d5ce21aa38": 86400
			}, {
				"15b481e68e8d44f096b2ba9c10012cd5": 86400
			}, {
				"196d092940a84751bc6c065829f547e5": 86400
			}, {
				"205f4d4e1b8e445e8f7d5d36af2952ce": 86400
			}, {
				"2e72caafd0bf4debb15358d160754a9d": 86400
			}, {
				"3e3dedd39017481c91713ec0611942ad": 86400
			}, {
				"43deb4dd899744ab9067b2a1b7803004": 86400
			}],
			"totalRecords": 12,
			"totalPnum": 2,
			"records": 10
		}
	},
	"requestId": "livec67488ad5a434afbab6cfdde4e9a5e4e",
	"code": 200
}

响应状态码

状态码 说明
200 操作成功。
409 用户登录认证失败。
602 查询失败。
607 用户信息不存在。
613 CheckSum为空。
614 AppKey为空。
615 CurTime为空。
618 查询数据信息不存在。
631 请求参数错误。
638 访问频率超限,每个应用对该接口限制为500次/分钟。

取消录制视频存活时间

用户可取消录制视频的存活时间。取消后,录制视频不再有存活时间的概念,除非主动删除否则视频将永久保存。

URL

POST https://vcloud.163.com/app/record/cancelExpire HTTP/1.1
Content-Type: application/json;charset=utf-8

请求参数

参数 类型 是否必选 描述
cid String 可选 频道ID
如果cid为NULL,则取消用户级别的存活时间
如果cid不为NULL,则取消频道级别的存活时间。

取消用户级别和频道级别的存活时间是互不影响的。如果同时设置了用户级别和频道级别的存活时间:取消某频道级别的存活时间后,该频道下的录制视频的存活时间遵循用户级别的设置;取消用户级别的存活时间后,频道下的录制视频的存活时间仍遵循该频道的设置。

返回参数

参数 类型 说明
code int 状态码。
msg String 错误信息。

示例

curl请求示例

curl -X POST -H "Content-Type: application/json" -H "AppKey: 29781bbc4db54742a3ebcxxxxxxxxxxx" -H "Nonce: 12345" -H "CurTime: 1469171950571" -H "CheckSum: 4ba6ca70c685eb900917e423eadaxxxxxxxxxxxxx" -d '{"cid":"cidxxxxxxxxx"}' https://vcloud.163.com/app/record/cancelExpire

返回示例

//返回结果格式。
"Content-Type": "application/json; charset=utf-8"
{
    "code" : XXX,
    "msg" : XXX
}

//错误返回示例。
"Content-Type": "application/json; charset=utf-8"
{
    "code":723,
    "msg":"使用直播录制功能需开通云点播服务"
}

响应状态码

状态码 说明
200 操作成功。
409 用户登录认证失败。
602 查询失败。
607 用户信息不存在。
613 CheckSum为空。
614 AppKey为空。
615 CurTime为空。
618 查询数据信息不存在。
631 请求参数错误。
638 访问频率超限,每个应用对该接口限制为500次/分钟。

获取录制视频文件列表

获取某频道录制视频文件列表,按生成时间由近至远提供分页。

URL

POST https://vcloud.163.com/app/videolist HTTP/1.1
Content-Type: application/json;charset=utf-8

请求参数

参数 类型 是否必选 描述
cid String 必选 频道ID,32位字符串。
records int 可选 单页记录数,默认值为10,最多1000条。
pnum int 可选 要取第几页,默认值为1。

返回参数

参数 类型 说明
code int 状态码。
msg String 错误信息。
videoList JsonArray 录制视频列表。
video_name String 录制后文件名,格式为filename_YYYYMMDD-HHmmss_YYYYMMDD-HHmmss, 文件名_录制起始时间(年月日时分秒) -录制结束时间(年月日时分秒)。
orig_video_key String 视频文件在点播桶中的存储路径。
uid Long 无效字段,无需关注。
vid Long 视频文件ID。
pnum Long 当前页。
totalRecords Long 总记录数。
totalPnum Long 总页数。
records Long 单页记录数。

示例

curl请求示例

curl -X POST -H "Content-Type: application/json" -H "AppKey: 29781bbc4db54742a3ebcxxxxxxxxxxx" -H "Nonce: 12345" -H "CurTime: 1469171950571" -H "CheckSum: 4ba6ca70c685eb900917e423eadaxxxxxxxxxxxxx" -d '{"cid":"cidxxxxxxxxx","records":xx, "pnum":xx}' https://vcloud.163.com/app/videolist
    
curl -X POST -H "Content-Type: application/json" -H "AppKey: 027338bf05cc4a65b5d98bc9d6af80b3" -H "Nonce: 12345" -H "CurTime: 1469427735815" -H "CheckSum: 86d9602149544997a86769a8d6088cabb12b212b" -d '{"cid":"c82a2b4afe124f53b41b30296768103b","records":10, "pnum":1}' https://vcloud.163.com/app/videolist

返回示例

    //返回结果格式。
    "Content-Type": "application/json; charset=utf-8"
    {
        "code" : XXX,
        "msg" : XXX,
         "ret" : {
            "pnum" : XXX,
            "totalRecords" : XXX,
            "totalPnum" : XXX,
            "records" : XXX,
            "videoList" : [
                {
                    "video_name" : XXX,
                    "orig_video_key" : XXX,
                    "uid" : XXX,
                    "vid" : XXX
                },
    
                {
                    "video_name" : XXX,
                    "orig_video_key" : XXX,
                    "uid" : XXX,
                    "vid" : XXX
                },
    
                ...
    
            ]
        }
    }
    
    //成功结果示例。
    "Content-Type": "application/json; charset=utf-8"
    {
        "ret":{
            "pnum" : 1,
            "totalRecords" : 69,
            "totalPnum" : 7,
            "records" : 10,
            "videoList":[
                {
                    "video_name":"new_20160628-113352_20160628-133351",
                    "orig_video_key":"1_291e3a9d662c4cfaa672bad689f0750b_1467084832593_1467092031353_1312-00001.flv",
                    "uid":24133,
                    "vid":42
                },
                {
                    "video_name":"new_20160628-093349_20160628-113352",
                    "orig_video_key":"1_291e3a9d662c4cfaa672bad689f0750b_1467077629013_1467084832593_1312-00000.flv",
                    "uid":24133,
                    "vid":41
                },
                ...
            ]
        },
        "code":200
    }

响应状态码

状态码 说明
200 操作成功。
409 用户登录认证失败。
501 内部错误。
613 CheckSum为空。
614 AppKey为空。
615 CurTime为空。
617 频道信息与当前用户不匹配。
618 频道信息不存在。
631 请求参数错误。
638 访问频率超限,每个应用对该接口限制为80次/秒。

获取某一时间范围的录制视频文件列表

通过开始和结束的时间点,获取某频道录制视频文件列表。时间跨度不能超过1周。

URL

POST https://vcloud.163.com/app/vodvideolist HTTP/1.1
Content-Type: application/json;charset=utf-8

请求参数

参数 类型 是否必选 描述
cid String 必选 频道ID,32位字符串。
beginTime long 必选 查询的起始时间戳(毫秒)。
endTime long 必选 查询的结束时间戳(毫秒)。
sort int 可选 排序字段,取值为0时降序,为1时升序,默认降序。

返回参数

参数 类型 说明
code int 状态码。
msg String 错误信息。
videoList JsonArray 录制视频列表。
name String 录制后文件名,格式为filename_YYYYMMDD-HHmmss_YYYYMMDD-HHmmss, 文件名_录制起始时间(年月日时分秒) -录制结束时间(年月日时分秒)。
url String 视频文件在点播桶中的存储路径。
vid Long 视频文件ID。

示例

curl请求示例

curl -X POST -H "Content-Type: application/json" -H "AppKey: 29781bbc4db54742a3ebcxxxxxxxxxxx" -H "Nonce: 12345" -H "CurTime: 1469171950571" -H "CheckSum: 4ba6ca70c685eb900917e423eadaxxxxxxxxxxxxx" -d '{"cid":"cidxxxxxxxxx", "beginTime":begintime, "endTime":endTime}' https://vcloud.163.com/app/vodvideolist
    
curl -X POST -H "Content-Type: application/json" -H "AppKey: 027338bf05cc4a65b5d98bc9d6af80b3" -H "Nonce: 12345" -H "CurTime: 1469427735815" -H "CheckSum: 86d9602149544997a86769a8d6088cabb12b212b" -d '{"cid":"291e3a9d662c4cfaa672bad689f0750b", "beginTime":1476115200000, "endTime":1476201600000}' https://vcloud.163.com/app/vodvideolist

返回示例

    //返回结果格式。
    "Content-Type": "application/json; charset=utf-8"
    {
        "code" : XXX,
        "msg" : XXX,
         "ret" : {
            "videoList" : [
                {
                    "name" : XXX,
                    "url" : XXX,
                    "vid" : XXX
                },
    
                {
                    "name" : XXX,
                    "url" : XXX,
                    "vid" : XXX
                },
    
                ...
    
            ]
        }
    }
    
    //成功结果示例。
    "Content-Type": "application/json; charset=utf-8"
    {
        "ret":{
            "videoList":[
                {
                    "name":"new_20160628-113352_20160628-133351",
                    "url":"1_291e3a9d662c4cfaa672bad689f0750b_1467084832593_1467092031353_1312-00001.flv",
                    "vid":42
                },
                {
                    "name":"new_20160628-093349_20160628-113352",
                    "url":"1_291e3a9d662c4cfaa672bad689f0750b_1467077629013_1467084832593_1312-00000.flv",
                    "vid":41
                },
                ...
            ]
        },
        "code":200
    }

状态码

状态码 说明
200 操作成功。
409 用户登录认证失败。
501 内部错误。
613 CheckSum为空。
614 AppKey为空。
615 CurTime为空。
617 频道信息与当前用户不匹配。
618 频道信息不存在。
631 请求参数错误。
638 访问频率超限,每个应用对该接口限制为80次/秒。

发起定时录制

创建定时录制任务,在指定开始时间启动录制,并在指定结束时间结束录制。

URL

POST https://vcloud.163.com/app/record/channel/schedule/submit HTTP/1.1
Content-Type: application/json;charset=utf-8

请求参数

参数 类型 是否必选 描述
cid String 必选 32位频道ID, 指代拉流地址。
identifier String 必选 8位随机字符串,用于submit和end配对。
startTime Long 必选 定时录制的开始时间戳,毫秒。
endTime Long 可选 定时录制的结束时间戳,毫秒,不填则会在直播结束拉不到流后自动停止。
format Int 可选 录制视频容器格式, 范围 [0-1] ,0-mp4, 1-flv,默认1。
filename String 可选 点播业务文件名前缀,要求非空,字符长度不大于64。
duration Int 可选 录制周期, 取值范围[5,120], 单位分钟, 默认120。
customedCallbackTag String 可选 自定义文件回调标签,字符长度不大于64。
  • 字符长度指的是字符编码单元的数量。
  • 录制切片在点播系统中的名称为{filename}_{sliceStartTime}_{sliceEndTime}, 如:20180808演唱会直播_20180808-200106_20180808-220105。
  • format、filename、duration均为非必传字段,不传则默认使用频道录制配置,传则只在此次定时录制中生效。
  • 同频道下任务数上限是10。
  • 同频道下不同定时录制任务的开始时间和结束时间不允许相交。

返回参数

参数 类型 说明
code Int 状态码。
requestId String 请求id。
ret JSON 返回信息, 200状态码下返回。
msg String 错误信息, 非200状态码下返回。

其中,ret格式如下,以下字段都是非必需返回:

参数 类型 说明
cid String 频道。
identifier String 8位随机字符串,用于submit和stop标识配对。

示例

curl请求示例

curl -X POST -H "Content-Type: application/json" -H "AppKey: 29781bbc4db54742a3ebcxxxxxxxxxxx" -H "Nonce: 12345" -H "CurTime: 1469171950571" -H "CheckSum: 4ba6ca70c685eb900917e423eadaxxxxxxxxxxxxx" -d '{"cid": "cidxxxxxxxxx","format":0, filename":"20180808演唱会直播", identifier":"xx","customedCallbackTag":"xx","startTime":xxxxx}' https://vcloud.163.com/app/record/channel/schedule/submit

返回示例

    //返回结果格式
    "Content-Type": "application/json; charset=utf-8"
    {        
        "code":200,
        "requestId": "xxx",
        "ret":{
            "cid": "xxx",
            "identifier": "xxx"
        }
    }
    
    //错误返回示例
    "Content-Type": "application/json; charset=utf-8"
    {
        "code":723,
        "msg":"使用直播录制功能需开通云点播服务",
        "requestId": "xxx"
    }

响应状态码

HTTP状态码 说明
200 操作成功。
409 认证失败。
501 内部错误。
607 用户信息不存在。
613 CheckSum为空。
614 AppKey为空。
615 CurTime为空。
617 频道信息与当前用户不匹配。
618 查询数据信息不存在。
631 请求参数错误。
647 频道不存在。
652 录制任务已存在。
723 使用直播录制功能需开通云点播服务。
1700 录制并发任务数超限。
1701 录制任务数超限。

结束定时录制

取消或结束定时录制任务。

URL

POST https://vcloud.163.com/app/record/channel/schedule/stop HTTP/1.1
Content-Type: application/json;charset=utf-8

请求参数

参数 类型 是否必选 描述
cid String 必选 频道ID,指代拉流地址。
identifier String 必选 8位随机字符串,用于submit和end配对。
  • submit发起后,stop的请求会结束此次定时录制,identifier则用于精确控制频道下某个任务的停止。
  • 若一直无stop请求,停止推流后录制将自动停止。

返回参数

参数 类型 说明
code Int 状态码。
requestId String 请求id。
ret JSON 返回信息, 200状态码下返回。
msg String 错误信息, 非200状态码下返回。

示例

curl请求示例

curl -X POST -H "Content-Type: application/json" -H "AppKey: 29781bbc4db54742a3ebcxxxxxxxxxxx" -H "Nonce: 12345" -H "CurTime: 1469171950571" -H "CheckSum: 4ba6ca70c685eb900917e423eadaxxxxxxxxxxxxx" -d '{"cid": "cidxxxxxxxxx","identifier": "xxx"}' https://vcloud.163.com/app/record/channel/schedule/stop

返回示例

    //成功结果示例。
    "Content-Type": "application/json; charset=utf-8"
    {        
        "code":200,
        "requestId": "xxx",
    }
    
    //错误返回示例。
    "Content-Type": "application/json; charset=utf-8"
    {
        "code":723,
        "msg":"使用直播录制功能需开通云点播服务",
        "requestId": "xxx"
    }

响应状态码

HTTP状态码 说明
200 操作成功。
409 认证失败。
501 内部错误。
607 用户信息不存在。
613 CheckSum为空。
614 AppKey为空。
615 CurTime为空。
617 频道信息与当前用户不匹配。
618 查询数据信息不存在。
631 请求参数错误。
647 频道不存在。
723 使用直播录制功能需开通云点播服务。
1702 录制任务不存在。
此文档是否对你有帮助?
有帮助
去反馈
  • 设置录制配置
  • URL
  • 请求参数
  • 返回参数
  • 示例
  • curl请求示例
  • 返回示例
  • 状态码
  • 查询录制配置设置
  • URL
  • 请求参数
  • 返回参数
  • 示例
  • curl请求示例
  • 返回示例
  • 状态码
  • 自动录制开关设置
  • URL
  • 请求参数
  • 返回参数
  • 示例
  • curl请求示例
  • 返回示例
  • 状态码
  • 开启直播中录制
  • URL
  • 请求参数
  • 返回参数
  • 示例
  • curl请求示例
  • 返回示例
  • 响应状态码
  • 结束直播中录制
  • URL
  • 请求参数
  • 示例
  • curl请求示例
  • 返回参数
  • 返回示例
  • 响应状态码
  • 录制重置
  • URL
  • 参数说明
  • 返回参数
  • 示例
  • curl请求示例
  • 返回示例
  • 状态码
  • 开启直播中区间录制
  • URL
  • 请求参数
  • 返回参数
  • 示例
  • curl请求示例
  • 返回示例
  • 响应状态码
  • 结束直播中区间录制
  • URL
  • 请求参数
  • 返回参数
  • 示例
  • curl请求示例
  • 返回示例
  • 响应状态码
  • 设置录制视频存活时间
  • URL
  • 请求参数
  • 返回参数
  • 示例
  • curl请求实例
  • 返回示例
  • 响应状态码
  • 查询录制视频存活时间
  • URL
  • 请求参数
  • 返回参数
  • 示例
  • curl请求示例
  • 返回示例
  • 响应状态码
  • 取消录制视频存活时间
  • URL
  • 请求参数
  • 返回参数
  • 示例
  • curl请求示例
  • 返回示例
  • 响应状态码
  • 获取录制视频文件列表
  • URL
  • 请求参数
  • 返回参数
  • 示例
  • curl请求示例
  • 返回示例
  • 响应状态码
  • 获取某一时间范围的录制视频文件列表
  • URL
  • 请求参数
  • 返回参数
  • 示例
  • curl请求示例
  • 返回示例
  • 状态码
  • 发起定时录制
  • URL
  • 请求参数
  • 返回参数
  • 示例
  • curl请求示例
  • 返回示例
  • 响应状态码
  • 结束定时录制
  • URL
  • 请求参数
  • 返回参数
  • 示例
  • curl请求示例
  • 返回示例
  • 响应状态码