AVS視頻標準和H.264核心技術(shù)的區(qū)別
視頻編碼技術(shù)在過去幾年最重要的發(fā)展之一是由ITU和ISO/IEC的聯(lián)合視頻小組 (JVT)開發(fā)了H.264/MPEG-4 AVC標準。在發(fā)展過程中,業(yè)界為這種新標準取了許多不同的名稱。ITU在1997年開始利用重要的新編碼工具處理H.26L(長期),結(jié)果令人鼓舞,于是ISO決定聯(lián)手ITU組建JVT并采用一個通用的標準。因此,大家有時會聽到有人將這項標準稱為JVT,盡管它并非正式名稱。ITU在2003年5月批準了新的H.264標準。ISO在2003年10 月以MPEG-4 Part 10、高級視頻編碼或AVC的名稱批準了該標準。
H.264 實現(xiàn)的改進創(chuàng)造了新的市場機遇
H.264/AVC在壓縮效率方面取得了巨大突破,一般情況下達到MPEG-2及MPEG-4簡化類壓縮效率的大約2倍。在JVT進行的正式測試中,H.264在85個測試案例中有78%的案例實現(xiàn)1.5倍以上的編碼效率提高,77%的案例中達到2倍以上,部分案例甚至高達4倍。H.264 實現(xiàn)的改進創(chuàng)造了新的市場機遇,如:600Kbps的VHS品質(zhì)視頻可以通過ADSL線路實現(xiàn)視頻點播;高清晰電影無需新的激光頭即可適應(yīng)普通 DVD。
H.264標準化時支持三個類別:基本類、主類及擴展類。后來一項稱為高保真范圍擴展 (FRExt)的修訂引入了稱為高級類的4個附加類。在初期主要是基本類和主類引起了大家的興趣?;绢惤档土擞嬎慵跋到y(tǒng)內(nèi)存需求,而且針對低時延進行了優(yōu)化。由于B幀的內(nèi)在時延以及CABAC的計算復雜性,因此它不包括這兩者?;绢惙浅_m合可視電話應(yīng)用以及其他需要低成本實時編碼的應(yīng)用。
主類提供的壓縮效率最高,但其要求的處理能力也比基本類高許多,因此使其難以用于低成本實時編碼和低時延應(yīng)用。廣播與內(nèi)容存儲應(yīng)用對主類最感興趣,它們是為了盡可能以最低的比特率獲得最高的視頻質(zhì)量。
盡管H.264采用與舊標準相同的主要編碼功能,不過它還具有許多與舊標準不同的新功能,它們一起實現(xiàn)了編碼效率的提高。其主要差別,概述如下:
幀內(nèi)預測與編碼:H.264采用空域幀內(nèi)預測技術(shù)來預測相鄰塊鄰近像素的Intra-MB中的像素。它對預測殘差信號和預測模式進行編碼,而不是編碼塊中的實際像素。這樣可以顯著提高幀內(nèi)編碼效率。
幀間預測與編碼:H.264中的幀間編碼采用了舊標準的主要功能,同時也增加了靈活性及可操作性,包括適用于多種功能的幾種塊大小選項,如:運動補償、四分之一像素運動補償、多參考幀、通用 (generalized)雙向預測和自適應(yīng)環(huán)路去塊。
可變矢量塊大小:允許采用不同塊大小執(zhí)行運動補償??梢詾樾≈?(4的塊傳輸單個運動矢量,因此在雙向預測情況下可以為單個MB傳輸多達32個運動矢量。另外還支持16(8、8(16、8(8、8(4和4(8的塊大小。降低塊大小可以提高運動細節(jié)的處理能力,因而提高主觀質(zhì)量感受,包括消除較大的塊化失真。
四分之一像素運動估計:通過允許半像素和四分之一像素運動矢量分辨率可以改善運動補償。
多參考幀預測:16個不同的參考幀可以用于幀間編碼,從而可以改善視頻質(zhì)量的主觀感受并提高編碼效率。提供多個參考幀還有助于提高H.264位流的容錯能力。值得注意的是,這種特性會增加編碼器與解碼器的內(nèi)存需求,因為必須在內(nèi)存中保存多個參考幀。
自適應(yīng)環(huán)路去塊濾波器:H.264采用一種自適應(yīng)解塊濾波器,它會在預測回路內(nèi)對水平和垂直區(qū)塊邊緣進行處理,用于消除塊預測誤差造成的失真。這種濾波通常是基于4(4塊邊界為運算基礎(chǔ),其中邊界各邊的3個像素可通過4級濾波器進行更新。
整數(shù)變換:采用DCT的早期標準必須為逆變換的固點實施來定義舍入誤差的容差范圍。編碼器與解碼器之間的 IDCT 精度失配造成的漂移是質(zhì)量損失的根源。H.264利用整數(shù)4(4空域變換解決了這一問題--這種變換是DCT的近似值。4(4的小區(qū)塊還有助于減少阻塞與振鈴失真。
量化與變換系數(shù)掃描:變換系數(shù)通過標量量化方式得到量化,不產(chǎn)生加大的死區(qū)。與之前的標準類似,每個MB都可選擇不同的量化步長,不過步長以大約12.5%的復合速率增加,而不是固定遞增。同時,更精細的量化步長還可以用于色度成分,尤其是在粗劣量化光度系數(shù)的情況下。
熵編碼:與根據(jù)所涉及的數(shù)據(jù)類型提供多個靜態(tài)VLC表的先前標準不同,H.264針對變換系數(shù)采用上下文自適應(yīng)VLC,同時針對所有其他符號采用統(tǒng)一的VLC (UniversalVLC)方法。主類還支持新的上下文自適應(yīng)二進制算術(shù)編碼器 (CABAC)。CAVLC優(yōu)于以前的VLC實施,不過成本卻比VLC高。
CABAC利用編碼器和譯碼器的機率模型來處理所有語法元素 (syntax elements),包括:變換系數(shù)和運動矢量。為了提高算術(shù)編碼的編碼效率,基本概率模型通過一種稱為上下文建模的方法對視頻幀內(nèi)不斷變換的統(tǒng)計進行適應(yīng)。上下文建模分析提供編碼符號的條件概率估計值。只要利用適當?shù)纳舷挛哪P停湍芨鶕?jù)待編碼符號周圍的已編碼符號,在不同的概率模型間進行切換,進而充份利用符號間的冗余性。每個語法元素都可以保持不同的模型(例如,運動矢量和變換系數(shù)具有不同的模型)。相較于VLC熵編碼方法 (UVLC/CAVLC),CABAC 能多節(jié)省10%bit速率。
加權(quán)預測:它利用前向和后向預測的加權(quán)總和建立對雙向內(nèi)插宏模塊的預測,這樣可以提高場景變化時的編碼效率,尤其是在衰落情況下。
保真度范圍擴展:2004年7月,H.264標準增加了稱為保真度范圍擴展 (FRExt) [11]的新修訂。這次擴展在H.264中添加了一整套工具,而且允許采用附加的色域、視頻格式和位深度。另外還增加了對無損幀間編碼與立體顯示視頻的支持。FRExt修訂版在H.264中引入了4種新類,即:
•High Profile (HP):用于標準 4:2:0色度采樣,每分量8位彩色。此類引入了新的工具-- 隨后詳述。
•High 10 Profile (Hi10P):用于更高清晰度視頻顯示的標準 4:2:0 色度采樣,10位彩色。
•High 4:2:2 10 bit color profile (H422P):用于源編輯功能。
•High 4:4:4 12 bit color profile (H444P):最高品質(zhì)的源編輯與色彩保真度,支持視頻區(qū)域的無損編碼以及與新的整數(shù)色域變換(從RGB到Y(jié)UV及黑色)。
在新的應(yīng)用領(lǐng)域中,H.264 HP對廣播與DVD尤為有利。某些試驗顯示出H.264 HP的性能比MPEG2 提高了3倍。下面介紹H.264 HP中引入的主要附加工具。
自適應(yīng)殘差塊大小與整數(shù)8(8變換:用于變換編碼的殘差塊可以在8(8與4(4之間切換。引入了用于8(8塊的新16位整數(shù)變換。較小的塊仍然可以采用以前的4(4變換。
8(8亮度幀內(nèi)預測:增加了8種模式,除之前的16(16和4(4塊以外,使亮度內(nèi)部宏模塊還能夠?qū)?(8塊進行幀內(nèi)預測。
量化加權(quán):用于量化8(8變換系數(shù)的新量化加權(quán)矩陣。
單色:支持黑/白視頻編碼。
AVS視頻標準
2002 年,中國信息產(chǎn)業(yè)部成立的音視頻技術(shù)標準 (AVS)工作組宣布準備針對移動多媒體、廣播、DVD等應(yīng)用編寫一份國家標準。該視頻標準稱為AVS [14],由兩個相關(guān)部分組成針對移動視頻應(yīng)用的AVS-M和針對廣播與DVD的AVS1.0。AVS標準與H.264相似。
AVS1.0同時支持隔行和逐行掃描模式。AVS中P幀可以利用2幀的前向參考幀,同時允許B幀采用前后各一個幀。在隔行模式下,4個場可以用作參考??梢詢H在幀級執(zhí)行隔行模式中的幀/場編碼,這一點與H.264不同,其中允許此選項的MB級自適應(yīng)。AVS具有與H.264相似的環(huán)路濾波器,可以在幀級關(guān)閉。另外,B幀還無需環(huán)路濾波器。幀內(nèi)預測是以8(8塊為單位進行。MC允許對亮度塊進行1/4象素補償。ME的塊大小可以是16(16、16(8、8(16或8(8。變換方式是基于16位的8(8整數(shù)變換(與WMV9相似)。VLC是基于上下文自適應(yīng)2D運行/級別編碼。采用4個不同的Exp-Golomb編碼。用于每個已量化系數(shù)的編碼自適應(yīng)到相同8(8塊中前面的符號。由于Exp-Golomb表是參數(shù)化的表,因此表較小。用于逐行視頻序列的AVS 1.0的視頻質(zhì)量在相同比特率時稍遜于H.264主類。
AVS-M主要針對移動視頻應(yīng)用,與H.264基本規(guī)范存在交叉。它僅支持逐行視頻、I與P幀,不支持B幀。主要AVS-M編碼工具包括基于4(4塊的幀內(nèi)預測、1/4象素運動補償、整數(shù)變換與量化、上下文自適應(yīng)VLC以及高度簡化的環(huán)路濾波器。與H.264基本規(guī)范相似AVS-M中的運動矢量塊大小降至4(4,因此MB可擁有多達16個運動矢量。采用多幀預測,但僅支持2個參考幀。此外,AVS-M中還定義了H.264 HRD/SEI消息的子集。AVS-M的編碼頻率約為0.3dB,在相同設(shè)置下稍遜于H.264基本規(guī)范,而解碼器的復雜性卻降低了大約20%。
H.264和AVS的背景
H.264/MPEG-4AVC是ITU-T的VCG(Video Coding Experts Group)和ISO/IEC的MPEG(Moving Picture Experts Group)聯(lián)合開發(fā)的新一代視頻編碼標準。應(yīng)用范圍包括可視電話、視頻會議等。H.264的主要特色就是極大得提高了壓縮率,是MPEG-2及MPEG-4壓縮效率的一倍以上。H.264核心技術(shù)與之前標準相同,仍采用基于預測變換的混合編碼框架,但是在細節(jié)的實現(xiàn)上有很大不同,就是細節(jié)上的改進導致壓縮效率極大得提高。而且新一代視頻編碼標準H.264具有良好的網(wǎng)絡(luò)適應(yīng)性和容錯等特點。
AVS的誕生可以說是一個歷史的機遇,面對H.264以及MPEG-2等標準高額的專利費,我國數(shù)字視頻產(chǎn)業(yè)面臨嚴重挑戰(zhàn)。加上我國致力于提高國內(nèi)數(shù)字音視頻產(chǎn)業(yè)的核心競爭力,由國家信息產(chǎn)業(yè)部科學技術(shù)司于2006年6月批準成立了“數(shù)字音視頻編解碼技術(shù)標準工作組”,聯(lián)合國內(nèi)從事數(shù)字音視頻編解碼技術(shù)研發(fā)的科研機構(gòu)和企業(yè),針對我國音視頻產(chǎn)業(yè)的需求,提出了我國自主知識產(chǎn)權(quán)的信源編碼標準―――《信息技術(shù) 先進音視頻編碼》系列標準,簡稱AVS(audio video coding standard).自主的AVS標準在技術(shù)和性能上處于國際先進水平,如果抓住這次機遇,我國在技術(shù)-專利-標準-芯片-系統(tǒng)-產(chǎn)業(yè)這個產(chǎn)業(yè)鏈上,就有可能具有全面的主動權(quán)。
H.264和AVS核心技術(shù)分析及對比
H.264和以前的標準一樣,還是采用的混合編碼的框架,AVS視頻標準采用了與H.264類似的技術(shù)框架,包括變換、量化、熵編碼、幀內(nèi)預測、幀間預測、環(huán)路濾波等模塊。他們核心技術(shù)的不同包括以下幾點:
一、變換和量化
H.264對殘差數(shù)據(jù)采用基于塊的變換編碼,去除原始圖像的空間冗余,使圖像能力集中在小部分系數(shù)上,直流系數(shù)值一般來說是最大的,這樣可以提高壓縮比、增強抗干擾能力。先前標準一般采用DCT變換,這種變換的缺點是會出現(xiàn)失配現(xiàn)象,原始數(shù)據(jù)經(jīng)過變換和反變換恢復后會有一個差值,由于是實數(shù)運算計算量也比較大。H.264采用的是基于4&TImes;4塊的整數(shù)變換。
AVS采用8&TImes;8的整數(shù)變換,可以在16位處理器上無失配地實現(xiàn)。對高分辨率的視頻圖像去相關(guān)性要比4&TImes;4變換有效,采用了64級量化,可以適應(yīng)不同的應(yīng)用和業(yè)務(wù)對碼流和質(zhì)量的要求。
二、幀內(nèi)預測
H.264和AVS技術(shù)都采用幀內(nèi)預測的方式,用相鄰的像素預測當前塊,采用代表空間域紋理的多種預測模式。H.264的亮度預測有4&TImes;4塊和16×16塊2種預測方式,對于4×4的塊:從-135度到+22.5度方向加上一個直流預測一共是9種預測方向;對于16×16塊:有4種預測方向。色度預測是8×8塊,有4種預測模式,類似于幀內(nèi)16×16預測的4種模式,其中DC為模式0、水平為模式1、垂直為模式2、平面為模式3。
三、幀間預測
H.264幀間預測是利用以編碼視頻幀和基于塊的運動補償?shù)念A測模式,與以往標準幀間預測的區(qū)別在于塊尺寸范圍更廣、亞像素運動矢量的使用和多參考幀的運用。
H.264有16×16、16×8、8×16、8×8、8×4、4×8和4×4一共8種宏塊及子宏塊劃分,而AVS只有16×16、16×8、8×16和8×8一共4種宏塊劃分方式。
H.264支持使用多個不同的參考幀對幀間宏塊和片進行預測,AVS中P幀可以利用至多2幀的前向參考幀,B幀采用前后各一個參考幀。
四、熵編碼
H.264制定了基于信息量的熵編碼效率,一種是對所有的待編碼的符號采用統(tǒng)一的可變長編碼(UVLC),另一種是采用基于內(nèi)容的自適應(yīng)二進制算術(shù)編碼(CABAC, Context-Adaptive Binary Arithmetic Coding),大大減少了塊編碼相關(guān)性冗余,提高了編碼效率。UVLC計算復雜度較低,主要針對對編碼時間很嚴格的應(yīng)用,缺點就是效率低,碼率較高。CABAC是一種效率很高的熵編碼方法,其編碼效率比UVLC編碼高50%。
AVS熵編碼采用自適應(yīng)變長編碼技術(shù)。在AVS熵編碼過程中,所有的語法元素和殘差數(shù)據(jù)都是以指數(shù)哥倫布碼的形式映射成二進制比特流。
采用指數(shù)哥倫布碼的優(yōu)勢在于:一方面,它的硬件復雜度比較低,可以根據(jù)閉合公式解析碼子,無需查表;另一方面,它可以根據(jù)編碼元素的概率分布靈活地確定以K階指數(shù)哥倫布碼編碼,如果K選得恰當,則編碼效率可以逼近信息熵。
對預測殘差的塊變換系數(shù),經(jīng)掃描形成(level、run)對串,level、run不是獨立事件,而存在著很強的相關(guān)性,在AVS中l(wèi)evel、run采用二維聯(lián)合編碼,并根據(jù)當前l(fā)evel、run的不同概率分布趨勢,自適應(yīng)改變指數(shù)哥倫布碼的階數(shù)。
另外,在AVS中沒有SI、SP幀??梢赃@樣說,AVS是在H.264的基礎(chǔ)上發(fā)展起來的,吸收了H.264的精華,但為了繞過專利的困擾,又不得不放棄H.264的一些核心算法。換
來的代價就是,編碼效率稍微降低一點的情況下,復雜度極大得降低了。
AVS是我國自主知識產(chǎn)權(quán)的標準,現(xiàn)在還沒有大規(guī)模使用,處在起步階段。大多數(shù)企業(yè)處于觀望狀態(tài),沒有資金大量投入,面臨重重困難,但是它的廣闊前景是不容忽視的,又有國家的大力支持,一定會發(fā)展的更加完美。