适用场景

对于录制下来的文件,您可以:
  • 设置回调,每当一个录制文件生成,都能收到一个HTTP请求,便于您做一些业务上的实时处理。
  • 查询已录制的内容,可按时间轴展示录制内容覆盖的时间区间。
  • 将已录制的TS片段按时间段生成一个M3U8索引(写入您指定的bucket,可以直接播放)。

使用流程

直接调用相应接口。涉及到的API包括:
API名称 说明
AddLiveRecordNotifyConfig 配置某个域名下的录制回调,包括事件回调和按需录制回调。
DeleteLiveRecordNotifyConfig 如果不再需要某个域名的录制回调,可以通过该接口删除。
DescribeLiveRecordNotifyConfig 查询某个域名的录制回调
UpdateLiveRecordNotifyConfig 更新某个域名的录制回调
录制事件回调 录制事件回调给您的HTTP消息定义
DescribeLiveStreamRecordContent 查询录制内容包含的时间段
CreateLiveStreamRecordIndexFiles 根据时间段创建录制索引
DescribeLiveStreamRecordIndexFiles 根据时间段查询录制索引
DescribeLiveStreamRecordIndexFile 查询某个录制索引的信息

实践示例

  • 回调录制文件生成事件
    调用AddLiveRecordNotifyConfig接口,设置域名 test.com下直播录制文件生成事件都回调到 http://cb.test.com这个地址:
    /?DomainName=test.com
    &NotifyUrl=http://cb.test.com
    &<公共请求参数>
    设置之后,如果一条直播流 test.com/live/teststream生成录制文件(TS/MP4/FLV),您就会收到以下内容的回调:
    POST / HTTP/1.1
    Host: live.abc.com
    User-Agent: Go-http-client/1.1
    
    {
      "domain": "test.com",
      "app": "live",
      "stream": "teststream",
      "uri": "live/teststream/0_2017-03-08-23:09:46_2017-03-08-23:10:40.flv",
      "duration": 69.403,
      "start_time": 1488985786,
      "stop_time": 1488985840
    }
  • 查询录制内容覆盖的时间段

    假设您希望查找这条直播流 test.com/live/teststream2019-02-15 09:00:002019-02-15 21:00:00之间的录制内容,可按如下方式调用DescribeLiveStreamRecordContent接口:

    /?AppName=live
    &DomainName=test.com
    &StreamName=teststream
    &StartTime=2019-02-15T01:00:00Z
    &EndTime=2019-02-15T13:00:00Z
    &<公共请求参数>
  • 生成某个时间段的M3U8索引
    假设您已录制了 2019-02-15 09:00:002019-02-15 21:00:00的内容,但是想将10点到11点的内容单独生成一段M3U8录制索引,那么您可以按如下方式调用DescribeLiveStreamRecordContent接口:
    /?AppName=live
    &DomainName=test.com
    &StreamName=teststream
    &StartTime=2019-02-15T02:00:00Z
    &EndTime=2019-02-15T03:00:00Z
    &<公共请求参数>

    生成的M3U8文件将会上传到您指定的OSS bucket中(保存路径可通过AddLiveAppRecordConfig接口修改)。

注意事项

  • 以上接口中的StartTime和EndTime字段填的均是UTC时间,请注意和本地时区的对应。
  • 录制文件检索信息在视频直播系统中只保存6个月(过期会删除检索信息,但是不会删除用户录制文件)。
  • ts分片信息在视频直播系统中只保存3个月,创建手动m3u8文件只能选择最近3个月的录制内容(过期会删除ts检索信息,但是不会删除用户录制ts文件)。