Facebook視訊支援AV1

NO IMAGE

640?wx_fmt=jpeg&wxfrom=5&wx_lazy=1&retryload=1

Facebook嘗試在自己的視訊服務中使用AV1編碼,並通過“切片 分散式”的方式解決AV1編碼延遲的問題。LiveVideoStack對文章進行了翻譯。

文 / Daniel Baulig,Yu Liu

譯 / 蔣默邱澤

審校 / 包研

最近釋出的AV1是一種全新的開源、專利免費視訊編碼標準,重點是希望壓縮效率方面更進一步。不久前Facebook釋出了包含詳細測試環境的AV1 基準測試,現在開始為Facebook視訊增加AV1編碼支援。官方AV1釋出版本的瀏覽器支援仍在開發中,編碼速度仍然滯後於當前的編碼器替代品如:x264和libvpx-vp9。為了Facebook視訊支援AV1,我們通過Chrome Canary上的MPEG-DASH來實現。要啟動此功能,我們必須使用早期版本的AV1,一旦Chrome和Firefox等主流網頁瀏覽器正式支援AV1,我們就會切換到官方的AV1發行版。

AOMedia成立於2015年,由視訊點播提供商組成包括:亞馬遜,Facebook,谷歌,微軟和Netflix,以及網路瀏覽器開發商和半導體晶片公司——他們共同開發並優化AV1,為實現更高質量的視訊和更高效的壓縮效能。AV1通過降低頻寬和儲存需求,降低4K視訊播放成本。在我們目前測試中AV1(libaom)的壓縮比libvpx-vp9提升30%,比x264提升50%。以往重複測試的條件與Facebook視訊的最常見實際使用案例非常相似,因此結果顯示AV1的內容將會減少30%~50%的緩衝。由於新的編解碼器增加了更長的編碼時間複雜度與當前的實際方案對比來看。下圖將編碼時間與當前常用的編碼方式進行比較。

640?wx_fmt=jpeg

如何AV1?

為了克服AV1編碼器的低效能問題,我們採用了基於分段切片編碼。首先視訊沿著GOP邊界切割成較小對齊GOP的視訊片檔案,以便輸出片是獨立且格式完整片視訊檔案。其中在每一片段執行切片,再輸入分散式叢集中,並對視訊每段進行並行編碼,這樣使我們可以幾乎線性加速整個AV1編碼叢集。最後這些視訊片分段編碼完成後,執行拼接合並工作,生成一個DASH(動態自適應http流傳輸)列表。要檢視Facebook視訊上現有的AV1編碼樣本視訊,請按照以下步驟操作。

https://www.google.com/chrome/browser/canary.html安裝Chrome Canary(金絲雀版本67.0.3393.0或更高開發版)。

在chrome://flags 啟用AV1視訊解碼

在下面嵌入的Facebook視訊中播放示例AV1編碼的工程樣板。(對於其他瀏覽器,非AV1編碼的視訊也可以正常播放,但不會使用AV1。) 

https://www.facebook.com/330716120785217/videos/330723190784510/

在早期階段試用AV1支援可以使社群工程師和他人有更多機會體驗今天新規格視訊編碼,而無需等待完整的網路瀏覽器支援。由於主流的網路瀏覽器有了對AV1的支援,Facebook視訊將逐漸增加使用AV1的編碼數量,同時我們繼續幫助加速視訊生態系統中AV1的開發和實施部署。

WebRTCon 2018  

繼2017年第一屆LiveVideoStackCon音視訊技術大會之後,LiveVideoStack又一次出發——WebRTCon 2018,將於5月在上海舉行,這是一次對過去幾年WebRTC技術實踐與應用落地的總結。

WebRTCon 2018設立了主題演講,WebRTC與前端,行業應用專場,測試監控和服務保障,娛樂多媒體開發應用實踐,WebRTC深度開發,解決方案專場,WebRTC服務端開發,新技術跨界,WebRTC與Codec等多個專場。邀請30餘位全球領先的WebRTC技術專家,為參會者帶來全球同步的技術實踐與趨勢解讀。

640?wx_fmt=jpeg