获取录制文件
更新时间: 2024/03/25 11:00:40
云端录制结束后,NERTC 会将录制文件保存至点播服务器,您可以通过云端录制消息抄送将录制文件的信息推送到您的服务器,或者通过 NERTC 服务端接口查询录制文件的信息。
功能描述
- 在单流录制模式下,每个订阅主播生成一个录制文件。
- 在合流录制模式下,只有一个合流后媒体的录制文件。
录制文件类型
云端录制支持录制视频或音频流,根据录制模式生成不同的文件类型。
录制类型 | 文件类型 | 设置方式 |
---|---|---|
仅录制音频流 | 生成 .aac 音频文件。 |
调用创建云端录制任务接口,并将 streamSubscribe.streamType 参数指定为 0。 |
仅录制视频流 | 生成无声音的 .mp4 视频文件。 |
调用创建云端录制任务接口,并将 streamSubscribe.streamType 参数指定为 1。 |
同时录制音频流和视频流 | 默认仅生成有声音的 .mp4 视频文件。如果您需要额外保存一份 .aac 音频文件,请联系商务经理咨询并开通相关服务。 |
调用创建云端录制任务接口,并将 streamSubscribe.streamType 参数指定为 2。 |
录制文件的命名规则
录制文件的命名规则如下:
- 音视频单人录制文件:
uid-cid-timestamp-sliceindex.filetype
- 音视频混合录制文件:
0-cid-timestamp-sliceindex-mix.filetype
( -mix 表示该文件为混合录制) - 互动直播录制文件:
taskId-cid-timestamp-sliceindex.filetype
录制文件切片规则
如果单通通话录制时长超过默认切片时长,或媒体流曾经中断等情况下,云端录制服务会自动将录制文件进行切片保存。
- 在指定切片时长内,每个用户对应的各种录制文件都是唯一的。例如单流录制模式下,即使某用户停止上行音视频流、或退出重新进入房间,也只会生成一份对应 UID 的音频或视频文件。
- 切片时长默认 2 小时,若有需要,请联系技术支持修改切片时长。
接收录制文件
如果开启了云端录制消息抄送,录制完成后,文件信息会以抄送形式发送到您的指定服务器,具体请参考录制文件下载信息抄送。
查询录制文件
您也可以查询指定房间的录制文件信息,包括录制文件的文件名、URL等。
注意事项
本接口的 Content-Type 为 application/x-www-form-urlencoded,服务端其他 API 接口的 Content-Type 为 application/json。请求 Header 中的其他部分请参考服务端 API 请求结构。
URL
- 请求方法:POST
- URL:
https://api.netease.im/nimserver/history/queryMediaFileByChannelId.action
请求参数
-
请求中 Header 的设置请参考请求结构描述。
-
请求中 Body 的参数说明如下:
参数名称 | 类型 | 是否必选 | 示例 | 描述 |
channelId | Long | 是 | 52026368004000 | 房间 ID。该 ID 为创建房间接口调用成功后返回的房间 ID。 |
返回参数
参数名称 | 类型 | 示例 | 描述 |
code | Number | 200 | 状态码。 |
fileInfos | JSONArray | - | 指定房间中生成的所有录制文件的对应信息。 |
channelId | Long | 52026368004000 | 房间 ID。 |
fileInfos:
参数名称 | 类型 | 示例 | 描述 |
vid | Number | 1234567890 | 云端录制文件的标识。 |
createTime | Number | 1587718829022 | 云端录制文件的生成时间。 |
objectName | String | 123-22222222-1589020209203-0.mp4 | 云端录制生成的文件名。 |
url | String | `http://vod9***.***.127.net/0-22222222-1589020209203-0-mix.mp4` | 云端录制文件的对应地址,获取此地址后可以通过播放器 SDK 播放。 |
curl请求示例
curl -X POST -H "AppKey: go9dnk49bkd9jd**********" -H "Nonce: 4tgggergigwow********" -H "CurTime: 1443592222" -H "CheckSum: 9e9db3b6c9abb2e1962cf3e6f7316*******" -H "Content-Type: application/x-www-form-urlencoded" -d 'channelId=123' 'https://api.netease.im/nimserver/history/queryMediaFileByChannelId.action'
正常返回示例
{
"code": 200,
"fileInfos": [
{
"vid": 1234567890
"createTime": 1587718829022,
"objectName": "123-22222222-1589020209203-0.mp4",
"url": "http://vod9***.***.127.net/123-22222222-1589020209203-0.mp4"
},
{
"vid": 5432167890
"createTime": 1587718828946,
"objectName": "0-22222222-1589020209203-0-mix.mp4",
"url": "http://vod9***.***.127.net/0-22222222-1589020209203-0-mix.mp4"
}
],
"channelId": 52026368004000
}
错误码
-
header 中的状态码:
状态码列表请参考 header 中的 HTTP 状态码。
-
body 中的错误码(code)
该接口在 HTTP Body 中返回错误码(code),错误码列表请参考业务错误码。
此文档是否对你有帮助?