LL-DASH CMAF 低延迟直播

本文详细介绍了LL-DASH低延迟直播技术,包括CMAF的作用,LLDASH的原理和规范实现,如Chunked transfer encoding、时钟同步以及媒体分段。同时讨论了低延迟ABR算法的重要性,指出L2A-LL和LoL算法的优秀表现。LL-DASH提供1到6秒的低延迟体验,适用于互动直播场景。
摘要由CSDN通过智能技术生成

使用 DASH 直播时一般会有几十秒的直播延迟,对于互动直播这么高的延迟根本互不动。要降低直播延迟一般会减少视频分段时长。

上图中展示了不同时长的视频片段对应的延迟,减小视频片段时长虽然可以降低延迟,但是也会增加资源消耗和视频码率,而且就算使用 1 秒的视频分段,延迟也会比下面介绍的 LLDASH 方案高。

介绍

LLDASH(Low Latency DASH)最早在 2017 年提出并成立工作组,在 2019 年 DVB 发布了 DVB-DASH with low latency 规范,基于 DVB 和 DASH IF 联合开发的这份报告 DVB and DASH-IF in 2017 on Low-Latency DASH 在 2020 年 DASH IF 发布了 Low-latency Modes for DASH 规范。

DVB(Digital Video Broadcasting)数字视频广播,是一系列数字电视国际开放标准,由 DVB Project 维护。DVB Project 是一个由 300 多个成员组成的工业组织,它是由欧洲电信标准化组织、欧洲电子标准化组织和欧洲广播联盟联合组成的联合专家组发起的。

DASH IF(DASH Industry Forum)DASH 行业论坛,它主要由流媒体公司组成,如 Akamai、谷歌、微软等。DASH IF 主要标准化互操作性,促进 MPEG-DASH 发展,并帮助其从规范过渡到真正的业务。

所以目前一共有 DVB 和 DASH IF 两套 LLDASH 规范,这两套低延迟方案非常相似只有一点不同,由于 DASH IF 较晚发布所以在 DASH IF 规范中也说明了与 DVB 不同的部分。而且这两个规范是完全向下兼容普通 DASH 直播的。

CMAF

虽然 MPEG-DASH 规范并没有限制内容格式,但是两种 LLDASH 规范中都是使用 CMAF 格式。这容易让人产生 CMAF 和低延迟划等号的误解,CMAF 本身并不会降低延迟,例如 HLS 支持 MPEG-TS 和 CMAF 两种格式,如果将普通 HLS 直播 MPEG-TS 分片换成 CMAF 分片,这并不会降低直播延迟。CMAF 最大的作用是统一播放格式,从而节省存储空间。不过 CMAF 提供了一些工具使低延迟 DASH 成为可能。

原理

LLDASH 与上篇文章介绍的 LHLS 非常相似,都是将一个分片变成一个个小 Chunk,这些小 Chunk 可以在分片完全生成之前被播放器使用 HTTP/1.1 的 Chunked transfer encoding 功能下载并缓存,从而降低直播延迟。

如上图所示,普通 DASH 直播中一个 MP4 分段只有完全编码后才能输出被请求。LLDASH 中将视频片段分割为一个个小 Chunk,编码器可以每生成一个 Chunk 就输出,传递给播放器缓存播放。

CMAF 中 ftyp 和 moov 盒子组成初始化分段,每一个 Chunk 由 moof 和 mdat 盒子组成。播放器会先请求初始化分段,然后请求最新的媒体分段,服务器会将分段的一个个 Chunk 返回给播放器播放。

播放器请求拉流时,可能如上图所示,一个视频片段被分为 3 个 Chunk。当前播放器发送请求给服务器时,视频片段还没被完全生成,服务器会保持连接不断开,每当生成一个 Chunk 就立马推送给播放器。

规范实现

对于使用 DASH IF 低延迟规范的 MPD,应该添加 http://www.dashif.org/guidelines/low-latency-live-v5 到 MPD@profiles 属性中进行标识,下面是一个符合 DASH IF 低延迟规范的 MPD 例子。

<?xml version="1.0" encoding="utf-8"?>
<MPD
  xmlns="urn:mpeg:dash:schema:mpd:2011"
  availabilityStartTime="1970-01-01T00:00:00Z"
  id="Config part of url maybe?&#
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值