创建云端录制任务
更新时间: 2024/03/25 11:00:41
调用此接口创建一个云端录制任务,支持录制音视频通话的过程,包括屏幕共享和其他自定义音视频,并生成录制文件。
功能描述
通过本接口实现云端录制时,可以设置音视频通话全局的录制相关参数,包括录制布局、录制模式、是否开启内容安全审核、是否添加水印等,相关配置对房间内所有成员生效。
- 录制布局:支持设置录制的画面布局,包括两种全新布局(悬浮和垂直布局),若此处设置的画面布局与控制台中的全应用录制布局设置冲突,以此处的设置为准。
- 录制模式:支持设置房间内所有成员的录制模式,包括单流录制、合流录制等。
接口说明
网易云信于 2021 年 11 月 18 日上线纯服务端的云端录制方案,即一套新版云端录制服务端 API,为您提供录制任务的启停、查询以及录制订阅列表的更新等功能。旧版云端录制 API 仍会持续维护,但我们推荐您尽快切换至新版云端录制 API,以体验更为灵活的云端录制配置。
- 在新版 API 提供更丰富的录制布局、支持订阅黑白名单设置、方案更加细节和灵活。
- 同一房间中,不可同时使用新旧两套云端录制 API。
URL
- 请求方法:POST
- URL:网易云信为该功能提供以下两个 API 请求地址,使用 V3 地址需在 URL 中指定 cname,您可以根据业务需求调用任一接口。
https://logic-dev.netease.im/v2/api/cloudrecord/submit
https://logic-dev.netease.im/v3/api/cloudrecord/submit?cname={cname}
URL 中参数说明:
参数名称 | 类型 | 示例 | 描述 |
---|---|---|---|
cname | String | abc | 房间名称。仅在调用 V3 接口时需要设置。 |
接口请求频率
默认上限为 50 次/秒,若请求频率超出限制,可能会返回 429 错误码。
若您需要上调上限,请参考如何处理调用服务端 RESTful API 超出频率限制。
请求参数
-
请求中 Header 的设置请参考请求结构描述。
-
请求中 Body 须为 JSON 格式,参数说明如下:
参数名称 | 类型 | 是否必选 | 描述 |
---|---|---|---|
cid | Number | 必选,仅适用于 V2 接口 | 房间 ID。该 ID 为创建房间接口调用成功后返回的房间 ID。仅在调用 V2 接口时需要设置。 |
recordConfig | recordConfig | 可选 | 录制模式。详细信息请参考recordConfig。 支持如下三种模式:
|
streamSubscribe | streamSubscribe | 可选 | 在录制过程中,通过黑白名单指定订阅某些用户的音频流或视频流。具体请参见订阅名单。 默认为订阅房间内所有发布的音视频流。 |
detect | detect | 可选 | 内容安全审核配置。详细信息请参考 detect。 |
layoutConfig |
可选 |
录制布局配置。详细信息请参考录制布局 |
|
watermark | watermark | 可选 | 水印配置。详细信息请参考 watermark。 |
返回参数
返回结构请参考云端录制返回结构。其中,业务相关参数封装在 record 参数中,包括:
参数名称 | 类型 | 示例 | 描述 |
---|---|---|---|
taskId | String | 1143932537695968 | 录制任务 ID,为任务唯一标识符,且房间内唯一。 |
cid | Number | 123456 | 房间 ID。 |
示例
请求示例
{
"cid":11***77184,
"recordConfig":{
"recordtype":0
},
"detect":{
"enableSpamDetect":true,
"scFrequency":1,
"detectType":1
},
"layoutConfig":{
"hostUid":66602,
"layoutType":3
},
"streamSubscribe":{
"streamType":2,
"audioUidList":{
"subscribeUids":[
4455,
66602
]
},
"videoUidList":{
"unSubscribeUids":[
4455
]
}
}
"watermark":{
"literaWms":[
{
"wmLitera":"水印测试",
"fontSize":50,
"fontColor":"#RRGGBB",
"offsetX":0,
"offsetY":0
}
],
"transparentLayers":[
{
"offsetX":0,
"offsetY":0,
"wmWidth":480,
"wmHeight":100,
"bgTransparency":3
}
],
"imgWms":[
{
"url":"https://freepngimg.com/XXX/XXX/example.png",
"offsetX":120,
"offsetY":120,
"wmWidth":100,
"wmHeight":100
}
],
"timestampWm":{
"fontSize":50,
"fontColor":"#RRGGBB",
"offsetX":0,
"offsetY":50
}
}
}
以上示例代码为订阅房间内部分用户的音频流和视频流,实现订阅房间内全部用户的音、视频流的示例代码请参考更新订阅名单。
返回示例
{
"code": 200,
"record": {
"taskId": "23d73e2ae2c74135a732c8d24739b71d8723",
"cid": 11443***77184
}
}
状态码
返回内容中,code 为 200 表示调用正常,若 code 为其他值,请根据 code 与 errmsg 在云端录制相关错误码中查看问题原因与解决方法。
此文档是否对你有帮助?