点击上方“LiveVideoStack”关注我们
翻译 | Alex
技术审校 | 赵军
本文来自OTTVerse,作者为Krishna Rao Vijayanagar。
MPEG-DASH
Easy Tech
#014#
MPEG-DASH是最流行的视频流协议之一,它广泛用于点播和直播,将媒体传输给各种终端设备,包括手机、平板、智能电视、游戏机等。MPEG-DASH是一种基于HTTP的流媒体传输协议,负责将视频从HTTP服务器传输给终端用户。在MPEG-DASH中,一个视频被分割成许多切片,这一信息被一个MPD记录。该MPD首先被传输给播放器,播放器基于当前网络条件和缓冲情况,基于MPD信息来请求合适码率&分辨率的视频切片。
本篇文章中,让我们一起来学习MPEG-DASH的基础知识、历史和它的重要特性等。
首先,何谓ABR技术?
DASH是Dynamic Adaptive Streaming over HTTP的简称,是一种自适应码率流媒体技术。学习ABR技术很重要,因为它可以帮助我们更好地理解什么是DASH以及为什么使用DASH。
如果你已经很熟悉ABR,那么MPEG-DASH对你来说也就没有那么难了,因为它描述了ABR相关的机制。
ABR是Adaptive Bit-Rate streaming的简称,是指为确保视频在互联网上的流畅传输,而根据带宽条件自适应地调节视频码率和质量的过程。
使用ABR技术后,视频被转码为多种分辨率和码率的组合,这种组合被称为“rendition”,这些rendition的集合形成了码率阶梯(Bitrate Ladder)。
下面就是一个码率阶梯:
1. 1080p 5.0 mbps
2. 720p 4.0 mbps
3. 640p 3.2 mbps
4. 480p 2.0 mbps
5. 270p 1 mbps
让我们假设视频已经按上述码率阶梯编码。当播放器开始播放视频时,它感知到的可用带宽假设是20mpbs。该带宽远大于码率阶梯中最高的5 mbps,所以播放器可以安全地以5mbps下载第一个视频切片(时长6s)。当播放器再次感知带宽变化,如果带宽依然很高,那么同样请求最高带宽的视频。
如果带宽突然下降到5mbps,播放器将有可能向服务器请求4mbps的切片(因为这时如果再请求5mbps的切片会很有风险)。收到4mbps的切片后,便开始播放这个视频切片。
整个视频都会持续这个过程。这就是码率和质量如何通过自适应带宽条件来不断变化的。在介绍了ABR之后,让我们来看看MPEG-DASH是如何助力ABR技术的。
什么是MPEG-DASH?
正如我们在前文所述,ABR技术用于在视频传输时通过动态改变视频码率和质量来适应带宽变化和播放器的缓冲程度。
然而,如果一次性传输整个流媒体文件,将很难做到这一点,想象一下从Dropbox、S3或者 Google Drive下载视频文件。和其他类型的文件一样(如文本、数据),这个文件仅有一个,根本没有办法暂停下载并将其切