开始录制后,你可以调用 update
方法更新如下录制配置:
每次调用该方法都会覆盖原来的设置。
update
请求仅在会话内有效。如果录制启动错误,或录制已结束,调用 update
将返回 404。update
方法更新录制设置,请在收到上一次 update
响应后再进行调用,否则可能导致请求结果与预期不一致。该 API 需要在 URL 中传入以下参数。
参数 | 类型 | 描述 |
---|---|---|
appid |
String | 你的项目使用的 App ID。必须使用和待录制的频道相同的 App ID。 |
resourceid |
String | 通过 acquire 请求获取的 resource ID。 |
sid |
String | 通过 start 请求获取的录制 ID。 |
mode |
String | 录制模式,支持单流模式 individual 、合流模式 mix 、页面录制模式 web 。 |
Content-Type
: application/json
Authorization
: 该字段的值需参考认证说明。该 API 需要在请求包体中传入以下参数:
参数 | 类型 | 描述 |
---|---|---|
cname |
String | 待录制的频道名。需要和你在 acquire 请求中输入的 cname 相同。 |
uid |
String | 字符串内容为云端录制服务在频道内使用的 UID,用于标识该录制服务,需要和你在 acquire 请求中输入的 UID 相同。 |
clientRequest |
JSON Object | 客户请求参数,你需要根据不同的场景设置对应的字段。streamSubscribe :JSON Object,用于更新订阅名单。仅适用于单流录制模式 individual 和合流录制模式 mix 。webRecordingConfig :JSON Object,用于更新页面录制参数。仅适用于页面录制模式 web 。rtmpPublishConfig :JSON Object,用于更新页面录制转推到 CDN 参数。仅适用于页面录制模式 web 。 |
streamSubscribe
包含以下参数:
audioUidList
:(选填)JSON Object 类型。音频订阅名单。如果 recordingConfig
中的 streamTypes
为 1
(只订阅视频),设置该参数会报错。
videoUidList
:(选填)JSON Object 类型。视频订阅名单。如果 recordingConfig
中的 streamTypes
为 0
(只订阅音频),设置该参数会报错。
webRecordingConfig
包含以下参数:
onhold
:Bool 类型。设置是否在页面录制过程中暂停生成页面录制。true
:暂停页面录制。录制服务暂停生成录制文件。false
:继续页面录制。录制服务继续生成录制文件。如果页面录制已暂停,调用 update
方法并将 onhold
参数设置为 false
继续页面录制。rtmpPublishConfig
包含以下参数:
outputs
:JSON Array 类型。当前最大支持的转推路数为 1。你需要设置以下参数:rtmpUrl
:String 类型。页面录制转推到 CDN 的推流地址(URL),当前只支持 RTMP 和 RTMPS 协议。请求 URL:
https://api.sd-rtn.com/v1/apps/{appid}/cloud_recording/resourceid/{resourceid}/sid/{sid}/mode/{mode}/update
Content-type
为 application/json;charset=utf-8
Authorization
为 Basic authorization,生成方法请参考 RESTful API 认证。
请求包体内容如下:
{
"cname":"httpClient463224",
"uid":"527841",
"clientRequest":{
"streamSubscribe":{
"audioUidList":{
"subscribeAudioUids":[
"#allstream#"
]
},
"videoUidList":{
"unSubscribeVideoUids":[
"444",
"555",
"666"
]
}
}
}
}
{
"cname":"httpClient463224",
"uid":"527841",
"clientRequest":{
"webRecordingConfig":{
"onhold":false
}
}
}
{
"cname":"httpClient463224",
"uid":"527841",
"clientRequest":{
"rtmpPublishConfig":{
"outputs":[
{
"rtmpUrl":"rtmp://1.1.1.1:1935/live/test"
}
]
}
}
}
如果返回的 HTTP 状态码为 200
,表示请求成功,响应包体中包含以下字段:
resourceId
: String 类型,云端录制使用的 resource ID。sid
: String 类型,录制 ID。标识每次录制周期。如果 HTTP 状态码不为 200
,请参考响应状态码排查问题。
{
"resourceId":"JyvK8nXHuV1BE64GDkAaBGEscvtHW7v8BrQoRPCHxmeVxwY22-x-kv4GdPcjZeMzoCBUCOr9q-k6wBWMC7SaAkZ_4nO3JLqYwM1bL1n6wKnnD9EC9waxJboci9KUz2WZ4YJrmcJmA7xWkzs_L3AnNwdtcI1kr_u1cWFmi9BWAWAlNd7S7gfoGuH0tGi6CNaOomvr7-ILjPXdCYwgty1hwT6tbAuaW1eqR0kOYTO0Z1SobpBxu1czSFh1GbzGvTZG",
"sid":"38f8e3cfdc474cd56fc1ceba380d7e1a"
}