MPEG-DASH

原文:https://blog.csdn.net/yue_huang/article/details/78466537
版权声明:本文为博主原创文章,转载请附上博文链接!

网页端的视频观看体验存在以下问题:
1. 切换画质(1080P/高清/标清)时,播放器会黑屏,并回退到关键帧重新播放。
2. 不能根据网络状况自适应调整码率(YouTube默认启用自适应码率,对照画质选项中的“Auto”)

要解决以上问题,需要引入流媒体解决方案。
DASH

DASH,又叫MPEG DASH,为什么选择DASH

YouTube采用DASH!其网页端及移动端APP都使用了DASH。DASH的其他采用者包括:Netflix, Hulu, …

什么是DASH

一种服务端、客户端的流媒体解决方案:
服务端:
将视频内容分割为一个个分片,每个分片可以存在不同的编码形式(不同的codec、profile、分辨率、码率等);
播放器端:
就可以根据自由选择需要播放的媒体分片;可以实现adaptive bitrate streaming技术。不同画质内容无缝切换,提供更好的播放体验。

DASH会通过media presentation description (MPD)将视频内容切片成一个很短的文件片段,每个切片都有多个不同的码率,DASH Client可以根据网络的情况选择一个码率进行播放,支持在不同码率之间无缝切换。

DASH中的重要概念

    MPD
    媒体文件的描述文件(manifest),作用类似HLS的m3u8文件。MPD文件以XML格式组织,其层次结构参图1。

    Representation
    对应一个可选择的输出(alternative)。如,480p video,720p video, 44100采样 audio,22050采样audio,都使用Representation描述。

    Segment(分片)
    每个Representation会划分为多个Segment。Segment分为4类,其中,最重要的是:Initialization Segment(每个Representation都包含1个Init Seg),Media Segment(每个Representation的媒体内容包含若干Media Seg)!
文件形成:

mpd文件

init文件

多个m4s文件;

正常顺序播放时序图:

如上图文字描述:

  1. 下载MPD
  2. 下载Init Seg
  3. 下载Media Seg(s)
    在第6s已经完成所有视频分片的下载。

切换画质:

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值