开始录制后,你可以调用 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/jsonAuthorization: 该字段的值需参考认证说明。该 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"
}