DASH:简介及使用方法(本文)
DASH:FFmpeg muxer参数说明
引入XXXX后,(对照竞品)网页端的视频观看体验存在以下问题:
1. 切换画质(1080P/高清/标清)时,播放器会黑屏,并回退到关键帧重新播放。
2. 不能根据网络状况自适应调整码率(YouTube默认启用自适应码率,对照画质选项中的“Auto”)
要解决以上问题,需要引入流媒体解决方案。
DASH
为什么选择DASH
YouTube采用DASH!其网页端及移动端APP都使用了DASH。DASH的其他采用者包括:Netflix, Hulu, …
什么是DASH
一种服务端、客户端的流媒体解决方案:
服务端:
将视频内容分割为一个个分片,每个分片可以存在不同的编码形式(不同的codec、profile、分辨率、码率等);
播放器端:
就可以根据自由选择需要播放的媒体分片;可以实现adaptive bitrate streaming技术。不同画质内容无缝切换,提供更好的播放体验。
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)!