LiveVideoStackCon2018結(jié)束了,但技術(shù)話題的熱度在微信群中仍持續(xù)不減。本次峰會(huì)主題是多媒體技術(shù)賦能新世界,共13個(gè)專場(chǎng),既有底層技術(shù)層面的講解,也有高層架構(gòu)層面的探討,還有業(yè)務(wù)層面的交流。知識(shí)豐富,內(nèi)容頗多,現(xiàn)對(duì)自己關(guān)注且參與的部分進(jìn)行總結(jié)分享。分享分為編碼篇、硬件篇、架構(gòu)篇、其他篇四個(gè)篇章。其中編碼篇分為AV1、AVS3、HEVC優(yōu)化三節(jié)內(nèi)容,硬件篇分為Intel、Xilinx、Nvidia三節(jié)內(nèi)容,架構(gòu)篇分為互動(dòng)架構(gòu)、X-CDN架構(gòu)、視頻云三節(jié)內(nèi)容,其他篇分為AI+音視頻、QoE、FFMpeg演進(jìn)三節(jié)內(nèi)容,共計(jì)九節(jié)內(nèi)容。
1. 編解碼
1.1 AV1
涉及到AV1的有三篇演講分別是Google工程師Debargha Mukherjee的《From VP9 to AV1 and beyond》、《A Technical Overview of the coding tools in AV1》和Intel工程師Faouzi Kossentini的《Accelerated Growth of the Visual Cloud Through Open Sourcing SVT-HEVC and SVT-AV1》。
我現(xiàn)場(chǎng)聽(tīng)了第一篇和第三篇,第二篇由于和第一篇是同一作者,且第二篇內(nèi)容僅是第一篇的補(bǔ)充增強(qiáng),故前兩篇統(tǒng)一進(jìn)行介紹。
(1) Alliance for Open Media and AV1

首先給出了一份數(shù)據(jù):2021年每秒鐘產(chǎn)生100萬(wàn)分鐘的視頻,這可以作為論述視頻發(fā)展重要性觀點(diǎn)的一項(xiàng)數(shù)據(jù)來(lái)源。

AV1的理念是OpenMedia,目標(biāo)即免稅編碼,進(jìn)而用來(lái)和ITU高專利費(fèi)的HEVC、VCC對(duì)抗。

AOM成員主要是互聯(lián)網(wǎng)公司(尤其是視頻網(wǎng)站)和傳統(tǒng)軟件硬件企業(yè),和以政府部門、電信企業(yè)為主導(dǎo)的ITU不太一樣。

在這里可以看到國(guó)內(nèi)的公司金山云和愛(ài)奇藝,金山云在HEVC的編碼優(yōu)化上做了很多底層的工作,在下一節(jié)中會(huì)單獨(dú)分享。

AV1采納百家眾長(zhǎng),以VP10為基礎(chǔ),算法和工具融合了Mozilla的Daala、Cisco的Thor,未來(lái)差異化的編碼器可能會(huì)越來(lái)越少。性能指標(biāo)目標(biāo)是比VP9還能壓縮30%的冗余。

AOM的四個(gè)工作組:編碼工作組、硬件工作組(畢竟AV1算法復(fù)雜度特別高)、助教組和測(cè)試組。
(2) Coding Tools

預(yù)測(cè)編碼有四種模式:幀內(nèi)模式、單幀幀間模式、復(fù)合幀間模式和幀內(nèi)幀間模式,后三種都可以看成廣義的幀間預(yù)測(cè)。

有10種遞歸的劃分方式,從HEVC的CTU開(kāi)始,宏塊劃分就以樹(shù)形遞歸來(lái)實(shí)現(xiàn)了。

幀內(nèi)預(yù)測(cè)的模式細(xì)分有8個(gè)子類。

幀內(nèi)預(yù)測(cè)方向預(yù)測(cè)子類上有56種。

平滑模式進(jìn)行四分之一內(nèi)插和Paeth模式(該模式未展開(kāi)介紹)。

通過(guò)重構(gòu)的亮度來(lái)對(duì)色差預(yù)測(cè)子模式進(jìn)行選擇,這類似于VVC的方法。

遞歸的幀內(nèi)預(yù)測(cè),以4x2為單位,用8個(gè)7抽頭濾波器獲取預(yù)測(cè)值。

根據(jù)屏幕內(nèi)容進(jìn)行幀內(nèi)塊拷貝。

根據(jù)屏幕內(nèi)容的調(diào)色板模式。

幀間預(yù)測(cè),三大亮點(diǎn):支持更多參考幀、動(dòng)態(tài)運(yùn)動(dòng)矢量參考、亞像素濾波;三大幀間預(yù)測(cè)模式:?jiǎn)螏瑤g模式、復(fù)合幀間模式和復(fù)合幀內(nèi)幀間模式;OBMC運(yùn)動(dòng)補(bǔ)償模式;仿射變換。

動(dòng)態(tài)運(yùn)動(dòng)矢量參考,時(shí)域鄰居和空域鄰居中尋找參考列表。

單幀幀間預(yù)測(cè)的場(chǎng)景,排序了4個(gè)MV組成的候選列表;同時(shí)有4種單幀模式下的MV,分別是最近MV、鄰近MV、最新MV和全局MV。

復(fù)合幀間預(yù)測(cè)的場(chǎng)景,排序了4個(gè)MV組成的候選列表;同時(shí)有8種復(fù)合模式下的MV,分別是最近MV、鄰近MV、最新MV、全局MV、新的最近MV、最近新的MV、鄰近的新MV和新的鄰近MV。其中"最近"、"鄰近"是空間域上的關(guān)系,"新"是時(shí)間域上的關(guān)系。

亞像素濾波,分為水平上平滑、常規(guī)、邊緣以及垂直上平滑、常規(guī)、邊緣的組合。

Scaled Inter Prediction就是等比例的幀幀預(yù)測(cè),每次待預(yù)測(cè)塊可以以1/2、1、2個(gè)像素進(jìn)行水平或垂直方向的移動(dòng)。

復(fù)合幀間預(yù)測(cè)是指將一下兩種幀間預(yù)測(cè)進(jìn)行組合,包括平均權(quán)重、距離權(quán)重、差異權(quán)重和楔形權(quán)重。

詳細(xì)講了一下楔形權(quán)重碼書樣式(無(wú)論是方形還是矩形,都有16個(gè)碼本),以及最終傳輸比特?cái)?shù)(5bit,含4bit形狀編號(hào)+1bit符號(hào))。

應(yīng)用舉例,衣領(lǐng)就是一個(gè)楔形,對(duì)應(yīng)上一頁(yè)的第三行第一列碼本。

幀內(nèi)幀間預(yù)測(cè)有兩種模式:漸進(jìn)模式和楔形模式,漸進(jìn)模式用的就是幀內(nèi)模式的4種情況。

靈活宏塊尺寸的幀間預(yù)測(cè)運(yùn)動(dòng)矢量補(bǔ)償。

基于純塊劃分的幀間預(yù)測(cè)面對(duì)平移的情況較為適用,但對(duì)于旋轉(zhuǎn)和帶有景深的移動(dòng)則效果很差,需要通過(guò)仿射函數(shù)的變換來(lái)實(shí)現(xiàn)更準(zhǔn)確的運(yùn)動(dòng)補(bǔ)償。

整體仿射變形模式和局部仿射變形模式。

提供16種變換基,對(duì)于普通信號(hào)進(jìn)行DCT變換,對(duì)于邊緣不進(jìn)行變換IDTX,對(duì)于殘差能量單調(diào)變化進(jìn)行ADST(非對(duì)稱離散正弦變換)或flip-ADST(翻轉(zhuǎn)非對(duì)稱離散正弦變換)。

變換分割相比HEVC的TU有矩形情況。

對(duì)于幀內(nèi)預(yù)測(cè)幀,TU需要有相同尺寸;對(duì)于遞歸預(yù)測(cè)、重建一定要在TU之上進(jìn)行;16個(gè)變換基是指水平方向和垂直方向DCT、IDX、ADST或flip-ADST的組合。

系數(shù)編碼仍為Zig-zag但處理過(guò)程中會(huì)保留一些高頻信號(hào)變換后所在的位置。

環(huán)路濾波和后處理濾波的整個(gè)流程,包括傳統(tǒng)的環(huán)路濾波、方向限定增強(qiáng)濾波、上采樣濾波、環(huán)路恢復(fù)濾波和膠片顆粒合成后處理濾波。

CDEF是一種針對(duì)邊緣的濾波,由之前Daala和Thor的組合而成;而后進(jìn)行方向估計(jì)與非線性濾波。

環(huán)路重建單元有兩種類型,7抽頭維納濾波或雙自引導(dǎo)濾波器,這一部分是之前任何編碼算法中所沒(méi)有的。

用離散對(duì)稱正規(guī)化的維納濾波器處理如上,在退化的x上去擬合y,用到了非離散線性貝葉斯估計(jì)量(LMMSE)。

帶有自引導(dǎo)的圖像濾波器及過(guò)程參數(shù)。

雙自引導(dǎo)濾波器在子空間上的投影。

超分辨率可以通過(guò)環(huán)路重建和上采樣來(lái)實(shí)現(xiàn),表格上介紹的是可以將信源圖像進(jìn)行下采樣再編碼,重建與最后輸出都能通過(guò)超分技術(shù)還原回同信源同尺寸的圖像。

膠片顆粒(Film-grain)特別難以壓縮(Film grain - Wikipedia) ,AV1通過(guò)膠片顆粒合成方法在后處理過(guò)程中實(shí)現(xiàn),這個(gè)后處理過(guò)程對(duì)于編碼循環(huán)來(lái)說(shuō)是帶外流程。

這一合成算法分為三個(gè)步驟,產(chǎn)生高斯白噪聲、產(chǎn)生膠片顆粒模板、對(duì)每個(gè)32x32塊進(jìn)行偽隨機(jī)偏移等操作。
(3). 最新編碼結(jié)果

VP9(libvpx實(shí)現(xiàn))、HEVC(X265實(shí)現(xiàn))、AV1(libaom實(shí)現(xiàn))的客觀質(zhì)量對(duì)比,baseline是VP9,AV1完勝HEVC,HEVC在色差峰值信噪比、結(jié)構(gòu)相似度以及CIEDE2000(新色差公式)上要遜色于VP9。

在VP9使用了金字塔型結(jié)構(gòu)改進(jìn)之后的客觀質(zhì)量對(duì)比,baseline仍是VP9,AV1仍完勝,HEVC在HVS峰值信噪比上遜色于改進(jìn)后的VP9。

固定質(zhì)量模式的測(cè)試,AV1優(yōu)于HEVC(HM實(shí)現(xiàn)),HEVC優(yōu)于VP9。

Facebook關(guān)于AV1和H264(X264實(shí)現(xiàn))和VP9對(duì)比,原文見(jiàn)地址。

MSU關(guān)于AV1、HEVC(多種編碼器、多種參數(shù))、VP9、AVS2(uACS2)、H264(多種編碼器)的對(duì)比,原文見(jiàn)地址。

Bitmovin關(guān)于AV1、HEVC、VP9的對(duì)比,原文見(jiàn)Multi-Codec DASH Dataset: An Evaluation of AV1, AVC, HEVC and VP9 - Bitmovin。
(4) AV1 Deployment

AV1的實(shí)施的四個(gè)階段。第一階段是創(chuàng)建工具,以及Bit-stream freeze(大概是碼流格式定義);目前處于第二階段,工具集選擇以及桌面瀏覽器實(shí)現(xiàn)(軟編軟解實(shí)現(xiàn));第三階段是軟硬混合(硬件加速)以及純硬件實(shí)現(xiàn);第四階段是獲得主流芯片的支持。

AV1計(jì)劃時(shí)間線,目前處于瀏覽器支持階段。

AV1在Google的推進(jìn)計(jì)劃,需要關(guān)注的是瀏覽器支持、WebRTC支持、Android支持、硬件實(shí)現(xiàn)的時(shí)間點(diǎn)。

目前軟編軟解已經(jīng)完成,編碼上cpu實(shí)現(xiàn),需要擴(kuò)展實(shí)現(xiàn)基于機(jī)器學(xué)習(xí)的模式?jīng)Q策或宏塊劃分決策,解碼端做的是SIMD的優(yōu)化。

編碼優(yōu)化進(jìn)展,橫坐標(biāo)2018年的日期,縱坐標(biāo)編碼480P每一幀的毫秒數(shù),隨著優(yōu)化的進(jìn)行,當(dāng)前達(dá)到了8秒一幀的編碼性能。

解碼優(yōu)化進(jìn)展,橫坐標(biāo)2018年日期,縱坐標(biāo)幀率,隨著優(yōu)化的進(jìn)行達(dá)到每秒300幀的解碼性能。

質(zhì)量提升的四個(gè)方面:幀的層級(jí)排列與碼控,基于感知的自適應(yīng)量化、前向參考關(guān)鍵幀實(shí)現(xiàn)和智能超分辨率編碼。
(5) Beyond AV1

AV1是當(dāng)下最好的編碼器,比VP9壓縮能力提升30%(達(dá)到了之前預(yù)設(shè)的目標(biāo)),比HEVC壓縮能力提升20%;但面對(duì)即將到來(lái)的VVC是有一定挑戰(zhàn),AV2將會(huì)提上日程。

AV1優(yōu)越的性能從傳統(tǒng)角度來(lái)看得益于更好的預(yù)測(cè)模式、變換模式等;以及在運(yùn)動(dòng)上的非平移運(yùn)動(dòng)模式;編碼恢復(fù)模式;學(xué)習(xí)圖像壓縮的非線性變換等等。