2024/10/25 14:59:33
设置延时转码
如果普通的单流转码录制不满足你的业务需求,你可以进一步设置延时转码。设置后,录制服务会在录制后 24 小时内(特殊情况下会到 48 小时以上)对录制文件进行转码生成 MP4 文件,并将 MP4 文件上传至你指定的第三方云存储。
本文介绍如何使用云端录制 RESTful API 进行延时转码,并重点说明了相关参数的设置方法。
注意
在延时转码场景下,录制文件会在声网边缘服务器上缓存,最长不超过 24 小时。如果你的业务对信息安全敏感,为了确保数据合规,请慎重考虑是否使用延时转码功能。如有任何疑虑,请联系声网技术支持。
前提条件
开始前,请参考使用 RESTful API 开始云端录制进行一次完整的录制流程体验。
实现步骤
本节介绍如何在申请录制服务器资源后,设置延时转码。
为了实现延时转码功能,调用 acquire
申请录制服务器资源时需要将 ClientRequest.scene
设为 2
。
以下介绍设置延时转码的 clientRequest
关键配置,确保你进行正确设置以实现预期的录制效果。
-
设置
appsCollection.combinationPolicy
字段为postpone_transcoding
。 -
设置
transcodeOptions.transConfig.transMode
字段为postponeTranscoding
。 -
延时转码场景下,
format
字段暂时只能设为mp4
。
在调用 start
时参考如下代码设置,即可实现延时转码:
JSON
{
"cname": "httpClient463224",
"uid": "527841",
"clientRequest": {
"token": "<your_token>",
"appsCollection": {
"combinationPolicy": "postpone_transcoding"
},
"transcodeOptions": {
"container": {
"format": "mp4"
},
"transConfig": {
"transMode": "postponeTranscoding"
}
},
"recordingConfig": {
"channelType": 1,
"streamTypes": 2,
"streamMode": "default",
"videoStreamType": 0,
"maxIdleTime": 30,
"subscribeAudioUids": [
"123",
"456"
],
"subscribeVideoUids": [
"123",
"456"
],
"subscribeUidGroup": 0
},
"recordingFileConfig": {
"avFileType": [
"hls"
]
},
"storageConfig": {
"vendor": 2,
"region": 3,
"bucket": "xxxxx",
"accessKey": "xxxxx",
"secretKey": "xxxxx",
"fileNamePrefix": [
"directory1",
"directory2"
]
}
}
}
参考信息
常见问题
- 应用崩溃后对云端录制有什么影响?
- 如何选择云存储 bucket 区域及处理跨区上传问题?
- 为什么无法通过浏览器调用云端录制 RESTful API?
- 为什么第三方云储存中没有录制文件?
- 如何获取 M3U8 文件地址?
- 云端录制如何处理服务器断网、进程被杀问题?
相关文档
在设置延时转码过程中,你还可以参考如下文档: