IPTV編解碼標(biāo)準(zhǔn)綜述
2 H.264標(biāo)準(zhǔn)簡介
2003年,ITU-T通過了一個新的數(shù)字視頻編解碼標(biāo)準(zhǔn),即H.264標(biāo)準(zhǔn),H.264是由ISO/IEC與ITU-T組成的聯(lián)合視頻組(JVT)制定的新一代視頻壓縮編解碼標(biāo)準(zhǔn)。國際電信聯(lián)盟將該系統(tǒng)命名為H.264/AVC,國際標(biāo)準(zhǔn)化組織和國際電工委員會將其稱為14496-10/MPEG-4 AVC。
H.264標(biāo)準(zhǔn)只有三個子集:基本子集、主體子集和擴(kuò)展子集。基本子集是專為視頻會議應(yīng)用設(shè)計(jì)的,這套標(biāo)準(zhǔn)幾近完美,能夠提供強(qiáng)大的差錯隱消技術(shù)(應(yīng)用該技術(shù),即使在Internet這樣的易錯網(wǎng)絡(luò)上也可以得到較好的視頻效果),并且支持低延時(shí)編/解碼技術(shù),使視頻會議顯得更自然。主體子集和擴(kuò)展子集更適合于電視應(yīng)用(數(shù)字廣播、DVD)和延時(shí)顯得并不很重要的視頻流應(yīng)用。
H.264標(biāo)準(zhǔn)的關(guān)鍵技術(shù)如下:
(1)幀內(nèi)預(yù)測編碼
幀內(nèi)編碼用來縮減圖像的空間冗余。為了提高H.264幀內(nèi)編碼的效率,在給定幀中充分利用相鄰宏塊的空間相關(guān)性,相鄰的宏塊通常含有相似的屬性。因此,在對一給定宏塊編碼時(shí),首先可以根據(jù)周圍的宏塊預(yù)測,然后對預(yù)測值與實(shí)際值的差值進(jìn)行編碼,這樣,相對于直接對該幀編碼而言,可以大大減小碼率。H.264提供6種模式進(jìn)行4×4像素宏塊預(yù)測,包括1種直流預(yù)測和5種方向預(yù)測,H.264也支持16×16的幀內(nèi)編碼。
(2)幀間預(yù)測編碼
幀間預(yù)測編碼利用連續(xù)幀中的時(shí)間冗余來進(jìn)行運(yùn)動估計(jì)和補(bǔ)償。H.264的運(yùn)動補(bǔ)償支持以往的視頻編碼標(biāo)準(zhǔn)中的大部分關(guān)鍵特性,而且靈活地添加了更多的功能,除了支持P幀、B幀外,H.264還支持一種新的流間傳送幀——SP幀,碼流中包含SP幀后,能在有類似內(nèi)容但有不同碼率的碼流之間快速切換,同時(shí)支持隨機(jī)接入和快速回放模式。
?。?) 整數(shù)變換
在變換方面,H.264使用了基于4×4像素塊的類似于DCT的變換,但使用的是以整數(shù)為基礎(chǔ)的空間變換,不存在反變換。與浮點(diǎn)運(yùn)算相比,整數(shù)DCT變換會引起一些額外的誤差,但因?yàn)镈CT變換后的量化也存在量化誤差,與之相比,整數(shù)DCT變換引起的量化誤差影響并不大。此外,整數(shù)DCT變換還具有減少運(yùn)算量和復(fù)雜度,有利于向定點(diǎn)DSP移植的優(yōu)點(diǎn)。
(4)量化
H.264中可選32種不同的量化步長,這與H.263中有31個量化步長很相似,但是在H.264中,步長是以12.5%的復(fù)合率遞進(jìn)的,而不是一個固定常數(shù)。在H.264中,變換系數(shù)的讀出方式也有兩種:之字形(Zigzag)掃描和雙掃描,大多數(shù)情況下使用簡單的之字形掃描;雙掃描僅用于使用較小量化級的塊內(nèi),有助于提高編碼效率。
(5)熵編碼
視頻編碼處理的最后一步就是熵編碼,H.264標(biāo)準(zhǔn)采用的熵編碼有兩種:一種是基于內(nèi)容的自適應(yīng)變長編碼(CAVLC)與統(tǒng)一的變長編碼(UVLC)結(jié)合;另一種是基于內(nèi)容的自適應(yīng)二進(jìn)制算術(shù)編碼(CABAC)。CAVLC與CABAC根據(jù)相臨塊的情況進(jìn)行當(dāng)前塊的編碼,以達(dá)到更好的編碼效率。CABAC比CAVLC壓縮效率高,但要復(fù)雜一些。
3 AVS標(biāo)準(zhǔn)簡介
AVS是基于我國創(chuàng)新技術(shù)和部分公開技術(shù)的自主標(biāo)準(zhǔn),AVS標(biāo)準(zhǔn)包括系統(tǒng)、視頻、音頻、數(shù)字版權(quán)管理等四個主要技術(shù)標(biāo)準(zhǔn)和一致性測試等支撐標(biāo)準(zhǔn)。2002年,在信息產(chǎn)業(yè)部支持下,成立了“數(shù)字音視頻編解碼技術(shù)標(biāo)準(zhǔn)”工作組(簡稱AVS工作組),2003年,國家發(fā)展和改革委員會批準(zhǔn)了《數(shù)字音視頻編解碼技術(shù)標(biāo)準(zhǔn)AVS研究開發(fā)與測試驗(yàn)證重大專項(xiàng)》。在國內(nèi)外上百家企業(yè)和科研單位共同參與下,AVS標(biāo)準(zhǔn)制定工作進(jìn)展順利,其中最重要的視頻編碼標(biāo)準(zhǔn)于2005年通過國家廣電總局測試,2006年1月得到信息產(chǎn)業(yè)部批準(zhǔn),2月國家標(biāo)準(zhǔn)化管理委員會正式頒布,3月1日起實(shí)施。
AVS視頻編解碼的核心技術(shù)包括:8x8整數(shù)變換、量化、幀內(nèi)預(yù)測、1/4精度像素插值、特殊的幀間預(yù)測運(yùn)動補(bǔ)償、二維熵編碼等。
(1)變換量化
AVS的8x8變換與量化可以在16位處理器上無失配地實(shí)現(xiàn),從而克服了H.264之前所有視頻壓縮編碼國際標(biāo)準(zhǔn)中采用的8x8 DCT變換存在失配的固有問題。而H.264所采用的4x4整數(shù)變換在高分辨率的視頻圖像上的去相關(guān)性能不及8x8的變換有效。AVS采用了64級量化,可以完全適應(yīng)不同的應(yīng)用和業(yè)務(wù)對碼率和質(zhì)量的要求。
(2)幀內(nèi)預(yù)測
AVS的幀內(nèi)預(yù)測技術(shù)沿襲了H.264幀內(nèi)預(yù)測的思路,用相鄰塊的像素預(yù)測當(dāng)前塊,采用代表空間域紋理方向的多種預(yù)測模式。但AVS亮度和色度幀內(nèi)預(yù)測都是以8x8塊為單位的。亮度塊采用5種預(yù)測模式,色度塊采用4種預(yù)測模式,而這4種模式中又有3種和亮度塊的預(yù)測模式相同。在編碼質(zhì)量相當(dāng)?shù)那疤嵯?,AVS采用較少的預(yù)測模式,使方案更加簡潔、實(shí)現(xiàn)的復(fù)雜度大為降低。
(3)幀間預(yù)測
幀間運(yùn)動補(bǔ)償編碼是混合編碼技術(shù)框架中最重要的部分之一。AVS標(biāo)準(zhǔn)采用了16×16,16×8,8×16和8×8的塊模式進(jìn)行運(yùn)動補(bǔ)償,而去除了H.264標(biāo)準(zhǔn)中的8×4,4×8,4×4的塊模式,目的是能更好地刻畫物體運(yùn)動,提高運(yùn)動搜索的準(zhǔn)確性。實(shí)驗(yàn)表明,對于高分辨率視頻,AVS選用的塊模式已經(jīng)能足夠精細(xì)地表達(dá)物體的運(yùn)動。較少的塊模式,能降低運(yùn)動矢量和塊模式傳輸?shù)拈_銷,從而提高壓縮效率、降低編解碼實(shí)現(xiàn)的復(fù)雜度。
AVS和H.264都采用了1/4像素精度的運(yùn)動補(bǔ)償技術(shù)。H.264采用6抽頭濾波器進(jìn)行半像素插值并采用雙線性濾波器進(jìn)行1/4像素插值。而AVS采用了不同的4抽頭濾波器進(jìn)行半像素插值和1/4像素插值,在不降低性能的情況下減少插值所需要的參考像素點(diǎn),減小了數(shù)據(jù)存取帶寬需求。
在傳統(tǒng)的視頻編碼標(biāo)準(zhǔn)中,雙向預(yù)測幀B幀都只有一個前向參考幀與一個后向參考幀,而前向預(yù)測幀P 幀則只有一個前向參考幀。AVS中P幀可以利用至多2幀的前向參考幀,而B幀采用前后各一個參考幀,P幀與B幀(包括后向參考幀)的參考幀數(shù)相同,其參考幀存儲空間與數(shù)據(jù)存取的開銷并不比傳統(tǒng)視頻編碼的標(biāo)準(zhǔn)大,而恰恰是充分利用了必須預(yù)留的資源。AVS的B幀的雙向預(yù)測使用了直接模式(direct mode)、對稱模式(symmetric mode)和跳過模式(skip mode)。使用對稱模式時(shí),碼流只需要傳送前向運(yùn)動矢量,后向運(yùn)動矢量可由前向運(yùn)動矢量導(dǎo)出,從而節(jié)省后向運(yùn)動矢量的編碼開銷。對于直接模式,當(dāng)前塊的前、后向運(yùn)動矢量都是由后向參考圖像相應(yīng)位置塊的運(yùn)動矢量導(dǎo)出,無需傳輸運(yùn)動矢量,因此也可以節(jié)省運(yùn)動矢量的編碼開銷。跳過模式的運(yùn)動矢量的導(dǎo)出方法和直接模式的相同,跳過模式編碼的塊運(yùn)動補(bǔ)償?shù)臍埐顬榱悖丛撃J较潞陦K只需要傳輸模式信號,而不需要傳輸運(yùn)動矢量、補(bǔ)償殘差等附加信息。
(4)熵編碼
AVS熵編碼采用自適應(yīng)變長編碼技術(shù),在AVS熵編碼過程中,所有的語法元素和殘差數(shù)據(jù)都是以指數(shù)哥倫布碼的形式映射成二進(jìn)制比特流。采用指數(shù)哥倫布碼的優(yōu)勢在于:一方面,它的硬件復(fù)雜度比較低,可以根據(jù)閉合公式解析碼字,無需查表;另一方面,它可以根據(jù)編碼元素的概率分布靈活地確定以k階指數(shù)哥倫布碼編碼,如果k選得恰當(dāng),則編碼效率可以逼近信息熵。對預(yù)測殘差的塊變換系數(shù),經(jīng)掃描形成(level、run)對串,level、run不是獨(dú)立事件,而存在著很強(qiáng)的相關(guān)性,在AVS中l(wèi)evel、run采用二維聯(lián)合編碼,并根據(jù)當(dāng)前l(fā)evel、run的不同概率分布趨勢,自適應(yīng)改變指數(shù)哥倫布碼的階數(shù)。
評論