文档

直播封装

更新时间:

阿里云视频直播支持直播封装服务,支持CMAF、LL-HLS(低延迟HLS)等播放协议,可有效降低直播延迟。通过阅读本文,您可以了解直播封装服务的详细信息。

简介

阿里云基础直播服务提供RTMP、HTTP-FLV、HLS等播放协议。为支持更丰富、更低延迟的播放协议和体验,视频直播新增了直播封装服务,根据不同的切片类型支持低延迟HLS-TS、低延迟HLS-CMAF、HLS-CMAF封装协议,如下所示:

切片类型

支持的封装协议

支持的编码格式

TS

低延迟HLS-TS

  • 音频编码:AAC、OPUS、AC3、EAC3、MP3

  • 视频编码:H.264、H.265

CMAF

  • 低延迟HLS-CMAF

  • HLS-CMAF

  • 音频编码:AAC

  • 视频编码:H.264、H.265

功能及优势

  • 开启直播封装后,视频直播流会被切成TS或CMAF切片,通过指定的HLS或LL-HLS协议向播放用户分发,用户请求的M3U8播放列表中包含不断刷新的切片地址。

  • 相对于HLS,LL-HLS可以将切片分割成更小(0.2~1秒)的Part切片,并支持M3U8和Part切片的阻塞加载,从而实现端到端低至3~5秒的延迟;相对于TS格式,CMAF封装格式有广泛的设备和浏览器支持,且支持更新的编解码器(codec),如H.265。

  • 直播封装服务可与直播转码(含多码率转码)、直播时移等组合使用,可提供灵活、丰富的能力。

注意事项

为了CMAF和LL-HLS播放流畅,推流需确保GOP大小稳定,且直播封装切片时长为GOP时长的整数倍。如果封装配置包含转码流,也需确保转码流的GOP稳定。

对于LL-HLS协议,需要注意以下事项:

  • 在网络情况不佳时卡顿率会增高,建议与多码率转码组合使用,网络不佳时自动降低码率。

  • 需确保直播流GOP固定为1秒或2秒,否则会导致卡顿或播放失败。

  • 需使用支持LL-HLS的播放器,如AliPlayer、HLS.js、ExoPlayer等,推荐使用AliPlayer

  • 同一主播流域名最大支持直播观看人数为10万人,如需支持更多人观看,请提交工单申请。

使用流程

  1. 通过视频直播控制台或调用AddLivePackageConfig添加直播封装配置。

  2. 直播推流,注意推流域名、AppName(应用名称)、StreamName(直播流名称)需匹配封装配置,并保持直播流GOP稳定。

    本文以使用OBS推流举例说明,建议输出配置如下:

    image.png

    关于OBS更多使用信息,请参见OBS推流工具

  3. 获取对应协议播放地址,使用支持LL-HLS的播放器(推荐使用AliPlayer)播放。

    本文以使用AliPlayer播放举例说明,建议配置如下:image.png

    1. 选择视频类型为直播

    2. 输入播放地址。

      重要

      为支持浏览器跨域播放,需要配置HTTP头Access-Control-Allow-Origin,详情请参见配置HTTP消息头

      • 直播封装播放地址与普通HLS地址类似,如下所示:

        HLS:
        http://example.com/AppName/StreamName.m3u8?aliyunols=on
        
        LL-HLS:
        http://example.com/AppName/StreamName-llhls.m3u8?aliyunols=on
        说明
        • aliyunols=on为必选参数,如缺失将播放普通的HLS直播流(TS格式)。

        • 直播封装配置LL-HLS时,同时会提供HLS播放。

        • 如果开启了直播鉴权,需增加参数auth_key=<鉴权key>。

      • 直播封装可与多码率转码组合使用,如果开启了多码率转码,封装格式将采用直播封装指定的切片格式,播放地址如下所示:

        HLS:
        http://example.com/AppName/StreamName_MBRGroupId.m3u8?aliyunols=on
        
        LL-HLS:
        http://example.com/AppName/StreamName_MBRGroupId-llhls.m3u8?aliyunols=on
        说明

        MBRGroupId为多码率转码的模板组ID。

      • 直播封装可与直播时移组合使用,如果开启了直播时移,时移的封装格式将采用直播封装指定的切片长度和格式。对于HLS或低延迟HLS-CMAF格式,直播时移切片也将变成CMAF格式;对于低延迟HLS-TS格式,直播时移切片仍为TS格式。

    3. 单击播放预览

API参考

直播封装相关接口

  • 本页导读 (1)