云端录制

云端录制提供RESTful API,业务可以通过发送请求来使用云录制的功能。

  • 请求仅支持 HTTPS 协议;
  • 提供回调功能,业务配置后就可以收到云录制的回调通知

img

1 前提条件

  • 已经有集成了ThunderBolt SDK的应用;
  • 已开通第三方云存储服务,目前仅支持阿里云OSS;

2 实现云录制

2.1 接口鉴权认证

在发送RESTful API请求时,需使用AppID和AppSecret计算出对应鉴权信息填入HTTPS请求头部,通过签名认证来识别合法请求。
在应用申请通过后,业务可在开发者平台获取AppID和AppSecret。具体签名认证方法请参考 签名认证

2.2 RESTful API交互时序图

img

updatemixrecord更新混画布局是可选的,且可以多次调用,但是必须在启动录制之后和停止录制之前调用。

2.3 步骤一: 请求录制资源

调用 applyrecord 方法请求一个用于云录制的资源resid。

调用该方法成功后,你可以从 HTTP 响应包体中的 resid 字段得到这个ID。这个 resid 的时效为 5 分钟,你需要在 5 分钟内用这个ID开始录制。

一个 resid仅可用于一次录制。

该方法的请求和响应示例详见 applyrecord 示例

2.4 步骤二: 启动录制

获得 resid 后,在五分钟內调用 startrecord 方法加入频道启动录制。

调用该方法成功后,你可以从 HTTP 响应包体中获得一个 recordid, 该 recordid 是一次录制周期的唯一标识。

该方法的请求和响应示例详见 startrecord 示例

2.5 步骤三: 停止录制

在启动录制后,调用 stoprecord 方法停止录制。

当频道空闲(无用户发布流数据)超过预设时间(默认为 30 秒) 后,云录制也会自动停止录制。如需特殊配置请联系与您对接的技术支持人员。

该方法的请求和响应示例详见 stoprecord 示例

2.6 可选步骤:更新混流参数

在启动录制后,可以调用 updatemixrecord 方法来更新录制的混流参数。 该方法的请求和响应示例详见 updatemixrecord 示例)。

3 录制文件

3.1 录制文件命名规则

  • 混流录制的文件名命名规则: rid_{recordid}_{roomid}.m3u8
    例如:rid_ba1107310000565164da34f816f842da94d_abcabc.m3u8
  • 源流录制的文件名命名规则: rid_{recordid}_{roomid}__uid_s_{uid}__uid_e.m3u8
    例如:rid_ba1107310000565164da34f816f842da94d_abcabc__uid_s_10266666__uid_e.m3u8

上述文件名中各字段含义如下:
recordid: 录制id
roomid: 房间号
uid: 用户id
rid, uid_s, uid_e: 为固定标识

3.2 录制文件上传

后台服务器将直播媒体流进行TS切片,并不断上传到指定的oss存储路径。在完成录制文件后,会生成一个 M3U8 文件并上传。

4 注意事项

文档是否有解决您的问题?

有帮助 没帮助
提交成功,非常感谢您的反馈!

反馈

TOP