據悉HTTP的動態自適應流(Dynamic Adaptive Streaming over HTTP,縮寫 DASH,也稱 MPEG-DASH)是一種自適應比特率流技術,使高質量流媒體可以通過傳統的 HTTP 網絡服務器以互聯網傳遞。目前 Youtube、Netflix、Hulu 視頻網站都采用了 DASH 技術。
DASH 類似蘋果公司的 HTTP Live Streaming(HLS)方案,MPEG-DASH 會將內容分解成一系列小型的基于 HTTP 的文件片段,每個片段包含很短長度的可播放內容,而內容總長度可能長達數小時(例如電影或體育賽事直播)。內容將被制成多種比特率的備選片段,以提供多種比特率的版本供選用。當內容被 MPEG-DASH 客戶端回放時,客戶端將根據當前網絡條件自動選擇下載和播放哪一個備選方案。客戶端將選擇可及時下載的最高比特率片段進行播放,從而避免播放卡頓或重新緩沖事件。也因如此,MPEG-DASH 客戶端可以無縫適應不斷變化的網絡條件并提供高質量的播放體驗,擁有更少的卡頓與重新緩沖發生率。
B站表示,15年的B站采用了整段的FLV和MP4,該方案好處是簡單且兼容性高,抖音和今日頭條采用了該方案。但缺點是視頻時長增長,整段的 MP4 頭部過于復雜,體積龐大,導致拉取與加載極為緩慢。
16年的B站為了規避該問題,使用了分段 FLV 提升加載速度,好處是頭部小,加載速度高。愛奇藝和優酷采用了此方案。簡單且兼容性高,所以使用至今,中間由于 flv.js 出現,擴展到全平臺。但隨著用戶增加,網絡種類的情況變得更加復雜,因此需要引入 Dynamic Adaptive Streaming/Bitrate 技術,提升用戶體驗。另外還需要考慮多音軌和多視頻軌。
B站表示,期待部署DASH后,普通用戶觀看視頻會更流暢,根據網速切換視頻的清晰度,切換過程對用戶無感。很容易支持音頻模式,后臺只拉取音頻,播放流暢,支持新的多音軌、多視頻軌、多字幕軌等。
對于UP主來說,采用DASH后,除了將1080P+/1080P60/720P60以外的清晰度,進行全二壓處理,根據情況輸出1080P+/1080P60/720P60/720P/480P/360P等6種ing視頻規格,音頻輸出為320kbps/64kbps 兩種規格,上傳文件從最大4GB增加到8GB。