直播录像

最近更新时间:2023-09-07 11:53:12

查看PDF

注意事项

使用前提

  • 请先联系商务开通云直播服务、CDN服务、KS3服务及点播转码服务
  • 主账号需要有可用的AKSK,用于存放录像文件的bucket设置为公开读写

配置生效时间

  • 配置生效时间默认为5分钟
  • 配置作用时间是在直播推流开始时刻,录制过程中不更新配置

说明

  • 开通MP4/FLV录像功能,需要先开启HLS录像
  • 支持录像的直播中心:华北1(北京)、华北2(北京)、东南亚1(新加坡)
  • 文件保存时间可以自定义修改,在对象存储(KS3)控制台操作即可
  • 直播录像是对音视频封装格式的转换,不修改编码参数,因此当同一个录制文件前后编码参数不一致时,可能导致MP4、FLV录制文件异常。当相同流名前后推流编码参数不一致时建议关闭拼接功能,若有拼接需求可通过媒体处理将文件拼接

概念解释

  • 切割:设置切割时长,当录制文件超过设定的切割时长后将按照命名规则生成新文件。假设推流6h,设置切割时长为2h,即每过2h会生成一次录制文件,最终会产生3个命名不同的文件。
  • 断流拼接:假设断流拼接时长设为3min,断流3min之内重新推流,会在之前的录制文件后拼接;如果超过3min,重新推流,会按命名规则生成新文件。

开通方式

  • 云直播控制台开通

录像格式

录制文件格式支持:HLS、MP4、FLV

录像规则

HLS录像

  • 录像生成规则:同流名3分钟(可配)内断流重推对录像文件进行拼接,录像文件总时长超过6小时(可配)进行切割

  • ks3存储空间: 自定义设置

  • ks3存储路径:/record/{App}/{StreamName}/hls/

  • 文件名:{StreamName}-{StartTime}-{EndTime}.m3u8

  • 文件名格式:[流名]-[文件开始录制时间]-[文件结束录制时间].m3u8

  • 存储路径:/record/{App}/{StreamName}/hls/{StreamName}-{StartTime}-{EndTime}.m3u8

  • 示例:/record/yourapp/yourstream/hls/yourstream-1585829187-1585829324.m3u8

MP4录像

  • 录像生成规则:同一条直播流3分钟(可配)内断流重推对录像文件进行拼接,录像文件总时长超过6小时进行切割

  • ks3存储空间: 自定义设置

  • ks3存储路径:/record/{App}/{StreamName}/mp4/

  • 文件名:{StreamName}-{StartTime}-{EndTime}.mp4

  • 文件名格式:[流名]-[文件开始录制时间]-[文件结束录制时间].mp4

  • 示例:/record/yourapp/{yourstream}/mp4/yourstream-1585829187-1585829324.mp4

FLV录像

  • 录像生成规则:同流名3分钟(可配)内断流重推对录像文件进行拼接,录像文件总时长超过6小时(可配)进行切割

  • ks3存储空间: 自定义设置

  • ks3存储路径:/record/{App}/{StreamName}/flv/

  • 文件名:{StreamName}-{StartTime}-{EndTime}.flv

  • 文件名格式:[流名]-[文件开始录制时间]-[文件结束录制时间].flv

  • 示例:/record/yourapp/{yourstream}/flv/yourstream-1585829187-1585829324.flv

录像回调

HLS录像回调

回调url配置

在云直播控制台配置录像文件的回调url即可,在录像文件生成后我们会通过HTTP POST的方式发回调通知您。

回调示例

回调信息如下:

{
    "status":3,
    "taskid":"xxxxx",
    "items":[
        {
           
            "desc":"success",
            "keys":[
                "/record/yourapp/StreamName/hls/StreamName-1594951180-1594953010.m3u8"
            ],
            //以下为历史遗留字段,无实际意义,忽略即可
            "cmd":"",
            "vdoid":"",
            "code":3
        }
    ],
    "mediaSize":0
}

如您需要在回调内容中增加录像文件的开始时间、结束时间、bucket等信息,请联系技术支持配置新版hls录像回调。

参数说明

参数 示例 描述
status 3 任务执行的状态(3:成功;4:失败)
taskid 00PNwad2wdoO 执行本次录像操作的唯一任务ID
desc success 任务执行的结果
keys 见回调示例 m3u8文件在ks3中的路径

MP4/FLV录像回调

回调url配置

在云直播控制台配置录像文件的回调url即可,在录像文件生成后我们会通过HTTP POST的方式发回调通知您。

回调示例

{
    "taskid":"eb12e806cd3042345919d4ee8e539ez120230505",
    "type":"avtrans",
    "details":{
        "errnum":0,
        "bucket":"yourks3bucket",
        "starttime":"1456800010",
        "endtime":"1456800020",
        "stream":"yourstreamname",
        "items":[
            {
                "dstpath":"/record/yourapp/StreamName/mp4/StreamName-1594951180-1594953010.mp4",
                "outMediainfo":"{\"metadata\":{},\"format\":{\"format_name\":\"mp4\",\"size\":1027254935,\"duration\":\"5241\",\"bit_rate\":1568024},\"streams\":[{\"codec_name\":\"h264\",\"codec_type\":\"video\",\"width\":1280,\"height\":720,\"r_frame_rate\":\"25/1\"},{\"index\":1,\"codec_name\":\"aac\",\"codec_type\":\"audio\",\"channels\":2,\"sample_rate\":32000}]}"
            }
        ]
    },
 //以下为历史遗留字段,无实际意义,忽略即可
    "items":[
        {
            "cmd":"tag=avtranstag=saveas&bucket=media-kslive&object=YTMwNGQzNzQzZTdhNGRmNmE1NzAwZjkxNDJhY2RjZTlfdmRvaWQyMDE3MDkwNC5tcDQ=",
            "desc":"success",
            "keys":[
                "xxxxx.mp4"
            ],
            "code":3
        }
    ],
 "status":3
}

参数说明

字段名 类型 描述
taskid string 任务ID
type string 任务类型
details json object 更详细的信息
  • details更详细的说明:
字段名 类型 描述
errnum int 任务执行状态码,0为成功,非0失败
errmsg string errnum!=0时展示详细错误信息
bucket string 存储录像文件的ks3bucket
stream string 流名
starttime string 该流起始时间
endtime string 该流结束时间
items json array 录像文件详细音视频信息
  • items更详细的说明:
字段名 类型 描述
dstpath string 文件在ks3中的路径
outMediainfo string 音视频信息,string内部是json串
  • 对输出文件信息outMediainfo的说明
字段名 类型 描述
metadata json object 视频metadata,读取不到置空
streams json array 视频及音频信息列表
format json object 视频文件信息

metadata部分

字段名 类型 描述
rotate string 旋转信息

streams部分

字段名 类型 描述
index int 序号
codec_type string 流类型
codec_name string 编码格式
bit_rate int 码率,单位bps
width int
height int
r_frame_rate string 帧率
channels int 声道数
sample_rate int 音频采样率

format部分

字段名 类型 描述
duration string 文件时长,单位秒
format_name string 文件格式
size int 文件大小,单位字节
bit_rate int 文件平均码率,单位bps

文档内容是否对您有帮助?

根本没帮助
文档较差
文档一般
文档不错
文档很好

在文档使用中是否遇到以下问题

内容不全,不深入
内容更新不及时
描述不清晰,比较混乱
系统或功能太复杂,缺乏足够的引导
内容冗长

更多建议

0/200

评价建议不能为空

提交成功!

非常感谢您的反馈,我们会继续努力做到更好!

问题反馈