本系列主要介紹視頻編解碼芯片的設計,以HEVC視頻編碼標準為基礎,簡要介紹編解碼芯片的整體硬件架構設計以及各核心模塊的算法優化與硬件流水線設計。本文將介紹視頻編碼技術的混合編碼框架和國內外主流編碼標準的發展歷程與特點。
針對不同冗余,各種視頻編碼算法層出不窮;現如今硬件條件的持續發展,也為高壓縮率的復雜算法提供了實現條件,視頻編碼的國際標準也持續更迭。
1視頻編碼技術框架
視頻編碼技術自誕生以來,不斷更新換代,致力于更優的編碼效率和壓縮效果,而更高的壓縮效率來源于更高效的編碼算法。雖然各種視頻編碼標準及其算法之間略有區別,但它們的編碼架構都是類似的。自第一代編碼標準誕生以來,各種視頻編碼標準均采用混合編碼 (Hybrid Coding) 框架,通用處理流程依次為預測、變換、量化、熵編碼,并且每個流程都以塊作為處理單位。下圖1是混合編碼框架的示意圖。
圖1 混合編碼框架
編碼時,首先讀入原始圖像塊,而后基于重建圖像,選擇進行幀內或幀間預測,從而得到預測圖像塊。原始圖像塊和預測圖像塊之差即為(變換前的)殘差數據塊,對其進行變化和量化之后,便可得到能量更為集中的系數數據塊。系數數據塊一方面會和預測模式一起經過熵編碼,得到壓縮后的碼流;另一方面會經過反量化、反變換,得到(變換后的)殘差數據塊,將其與預測圖像塊相加即可得到重建圖像塊。此外,重建環路中的環路濾波可提升視頻的主觀和客觀質量。
為了提高壓縮的效果,視頻編碼標準會提供一系列的編碼工具,而編碼的過程其實就是在選擇這些編碼工具及其組合的過程。越先進的標準,其提供的編碼工具一般也越多。
2視頻編碼標準
幾十年間,新的視頻編碼算法層出不窮。然而,商業視頻編碼應用趨向于使用有限的幾個標準化方法進行視頻壓縮。國際上一直以來制定視頻編碼標準的主要組織為,國際電信聯盟-電信標準化部門 (ITU-T) ,以及國際標準化組織 (ISO) /國際電工委員會 (IEC)。
其中,ITU-T成立了視頻編碼專家組VCEG,ISO/IEC成立了運動圖像專家組MPEG,二者至今已單獨或聯合地制定了H.26x和MPEG-x等一系列視頻編碼標準,在國際上受到了廣泛的使用和研究。中國的數字音視頻編解碼技術標準工作組,則是面向我國的信息產業需求,制定了具有自主知識產權的AVS系列標準。另外,由Google、Amazon、Mozilla等公司發起創立的開放多媒體聯盟 (AOMedia) 則致力于建設免費的(或專利友好的)的視頻編解碼標準。下圖2顯示了一些主流視頻標準的發展歷程。
圖2
同一時期的不同編碼標準,可能會用不同的算法方案實現類似的高效率編碼;而同一編碼標準的代際之間算法有較大差別,不論是對已有算法的優化,還是提出新的算法,都是為了得到更高的編碼效率。以H.26x系列標準的發展為例:H.261標準可以認為是混合編碼標準的鼻祖,應用于可視電話、會議電視等方面。H.262標準等同于MPEG-2的視頻部分,支持按幀或場進行分塊,應用范圍包括數字衛星電視、數字有線電視等,也成為了DVD的核心技術,并且也成功地適用于后來的高清電視(HDTV)。H.263標準則進一步提出了許多新的編碼技術選項,包括無限制的運動矢量模式、基于語法的算術編碼、高級預測模式、PB幀模式等,使得H.263的編碼性能大大提升,成為低碼率視頻會議應用首選的編碼算法。H.264(AVC)標準仍然沿用混合編碼框架,并在混合編碼的框架下增加了對更多先進編碼技術的支持,包括多方向幀內預測、多參考幀運動補償、可變的分塊大小、1/4像素精度的運動補償、4×4及8×8整數DCT變換、內容自適應的環路去方塊濾波、自適應熵編碼CABAC(上下文自適應二進制算術編碼)和CAVLC(上下文自適應變長編碼)等。H.264具有優秀的編碼性能、網絡適配性以及抗出錯性能。因此,H.264在視頻存儲、廣播、交互式網絡視頻等方面都得到了廣泛的應用,至今仍是應用最為廣泛的編碼標準。H.265(HEVC)標準相較于H.264標準,在保證相同視頻質量的前提下,視頻編碼所需的碼率進一步降低了50%,并控制編碼端的計算復雜度增加不超過3倍。隨著網絡技術以及芯片處理能力的提升,H.265的出現使得在有限的帶寬下能夠傳輸更高質量的網絡視頻,能夠支持4K和8K超高清視頻的應用。H.265標準中,典型的技術創新包括基于大尺寸四叉樹(Quad-tree)塊的劃分技術和殘差編碼結構、更多角度的幀內預測、運動矢量合并模式、高精度運動補償、自適應環路濾波等。H.266(VVC)標準的編碼效率要遠超H.26x系列標準的前幾代,在相同的視覺質量下,H.266的碼率相較于H.265可降低40%左右。除了傳統的應用領域外,H.266標準的關鍵應用領域還特別包括了超高清視頻,高動態范圍、寬色域視頻、沉浸式媒體應用等。
3視頻編碼技術發展
以下總結了H.266標準相較于H.265標準新增的部分技術[1],從中可以感受到視頻編碼標準的更新思路及趨勢。
塊劃分
幀內預測
幀間預測
①自適應運動適量精度 (AMVR, Adaptive MV resolution)
②帶有運動矢量差值的Merge模式 (MMVD, Merge MVD)
③對稱MVD模式 (SMVD, Symmetric MVD)
④解碼端運動矢量修正 (DMVR, Decoder-side MV refinement)
雙向光流(BDOF, Bi-directional optical flow)、光流預測細化 (PROF, Prediction refinement with opticalflow)
變換
量化
重建環路與環路濾波
其他
總而言之,各代視頻編碼標準的更迭發展,無外乎是通過更大的塊尺寸、更多的分塊方法、更多的幀內和幀間預測模式、更高的精度、更多的變換函數、更多的環路濾波器選擇、更有適應能力的熵編碼,來獲取更好的壓縮效率和更好的質量。
參考文獻:[1] François E,Kerdranvat M, Julian R, et al. VVC per-tool performance evaluation compared toHEVC[C]//IBC. 2020.