當前位置:首頁 > 嵌入式 > 嵌入式軟件
[導讀]AVS-M實時編碼器的設計與實現(xiàn)

    AVS-M是AVS標準的第7部分——一款專門為移動通訊環(huán)境而設計的視頻編解碼標準。本項目的目的是要驗證AVS-M在應用環(huán)境中的性能表現(xiàn),借此證明該標準的實用價值,為其在國內的產(chǎn)業(yè)化過程作貢獻。移動通訊終端具有帶寬低,誤碼率高和計算能力弱等特點,目前主要以MPEG-4 SP為視頻編解碼的標準,今后國際上可能的升級方案有H.264和VC-1等。本項目通過在相同測試環(huán)境下對比AVS-M與H.264標準的實際性能表現(xiàn)來證明AVS-M標準的實用價值。為了貼近真實的使用環(huán)境,本項目實現(xiàn)的編碼器需要實現(xiàn)實時音視頻采集、實時編碼、實時通過以太網(wǎng)以MPEG2 TS流的形式輸出碼流的功能。

    VLC與x264是兩款遵循GPL標準發(fā)布的開源軟件,其中VLC是一個流媒體平臺,支持插件功能;x264是一款H.264編碼庫,并針對x86平臺進行了優(yōu)化。為了盡快取得驗證結果,本項目采用VLC和x264項目為設計的出發(fā)點。VLC以插件的形式實現(xiàn)了實時音視頻采集,H.264編碼,MPEG2 TS流復用和以太網(wǎng)輸出等功能,恰好契合本項目的總體需求;AVS-M標準起源于于H.264標準,兩者結構類似、功能相同,以H.264為基礎開發(fā)AVS-M標準能加快開發(fā)進度,并且采用同一代碼樹也能更好的比較AVS-M與H.264標準的實際性能差異。為了更符合實際的使用環(huán)境,本項目采用AAC+作為音頻的編碼標準。VLC本身并不支持AAC+的編碼功能,而只支持其解碼功能,在此采用3GPP工程的26410-700作為AAC+標準的實現(xiàn),通過插件的方式來實現(xiàn)AAC+音頻編碼功能。

    VLC不但支持音視頻數(shù)據(jù)的采集、編碼、復用和以太網(wǎng)發(fā)送功能,而且還支持碼流的以太網(wǎng)接收、解復用、解碼和播放功能。為了驗證編碼器的實際編碼效果,本項目也采用VLC作為碼流的接收端,通過實時觀看播放的效果來評判編碼器的性能表現(xiàn)。支持AVS-M解碼功能的VLC為另一項目的開發(fā)成果,在本文不作詳細描述。

編碼器

    音頻和視頻編碼都是計算密集型的操作,如果要實時編碼就需要一個強勁的運算平臺,這里采用一臺Dell PowerEdge 2950 服務器作用編碼器的硬件基礎。PowerEdge 2950配置有一顆Intel Xeon 5160 (Woodcrest) 3.0GHz雙核CPU、1GB DDR2內存、SATA II 硬盤、內置雙Broadcom BCM5708C NetXtreme II GigE千兆以太網(wǎng)控制器,并具有兩條PCI-X擴展插槽以擴充外設接口功能。操作系統(tǒng)選用Red Hat Enterprise Linux 4 (32bit)操作系統(tǒng)。

    PowerEdge 2950本身不具有音視頻采集接口,需要通過相應的采集卡擴展。這里采用一塊Osprey 230采集卡作為實時音視頻采集接口,它采用PCI-X接口形式,支持PAL/NTSC/SECAM視頻標準,能實時采集一路標清視頻及雙聲道的音頻。以太網(wǎng)輸出采用PowerEdge 2950內置的千兆以太網(wǎng)接口。編碼器的整體框圖如下圖所示:

    整個編碼了流程為:PAL/NTSC/SECAM的視頻信號通過Composite或S-Video接口,音頻通過雙聲道音頻接口進入Osprey 230 采集卡;Osprey 230由Video4Linux2與OSS驅動程序來驅動,VLC通過這兩個接口控制采集卡,實時讀取音視頻數(shù)據(jù),并分別將音視頻數(shù)據(jù)送到AVS-M編碼器與AAC+編碼器進行編碼;編碼后生成的碼流送到MPEG2 TS 復用器進行復用;復用后的TS流通過以太網(wǎng)接口以UDP單播或組播的方式發(fā)送出去。

1 編碼庫

    開發(fā)支持AVS-M標準的編碼庫是本項目的重點,根據(jù)AVS-M標準與H.264標準的異同對x264編碼庫進行修改,修改的原則是在不改變原先H.264編碼功能的前提下增加AVS-M編碼功能。為了同時支持上述兩個標準,在此采用運行時開關的方法使得編碼庫既支持H.264標準又支持AVS-M標準,并且兩者可以動態(tài)地切換。如下是在開發(fā)過程中涉及的兩個標準的不同部分。

a)NAL層

    AVS-M和H.264類似,碼流的基本單元都是NAL,每個NAL可以包含序列頭、圖像頭和條帶等多種語法結構。不同之處是H.264中為了避免與起始碼混淆,當NAL內部出現(xiàn)0x000001時,要在0x01之前插入一個0x03。所以我們在實現(xiàn)AVS-M時,要把這個插入0x03的模塊刪除。

b)條帶上層語義

    在AVS-M中,有和H.264相對應的序列參數(shù)集和圖像參數(shù)集。另外AVS-M增加了圖像頭,這使得每幀圖像數(shù)據(jù)的邊界清晰明了,方便了解碼器的實現(xiàn)。我們在實現(xiàn)AVS-M時,也要相應地加入圖像頭的支持。

c)幀內預測

    在亮度幀內預測中,AVS-M和H.264都有9種模式,但是他們的排列順序是不相同的,如圖1所示。

    在實現(xiàn)過程中,我們使用了一個映射表將兩種不同的排列順序聯(lián)系起來,使得代碼的改動達到了最小。當然我們也要按照標準修改幀內預測的細微差別。

    另外,AVS-M中只有4x4一種幀內預測模式,而H.264還有16x16和8x8兩種模式,所以我們要關掉兩種不用的模式。在色度方面,AVS-M不用基于“平面”的預測,所以也要把它從X264中去掉。最后還要注意,在幀間預測幀(P幀)中如果出現(xiàn)幀內預測宏塊,它的相鄰幀間預測塊的幀內預測模式的預測值在AVS-M中被定義為不可用(-1),而在H.264中被定義為DC預測模式(2)。

d)運動向量預測

    在AVS-M中,當前塊的運動向量預測是使用它左下角、上方和右上角的運動向量,而H.264是使用左上角、上方和右上角的運動向量,如圖2所示。

    另外,運動向量預測值的計算方法也略有不同。

e)分數(shù)像素插值

    在AVS-M和H.264中,半像素精度的樣本值都是使用雙線性插值的方法,當然它們使用了不同的濾波器。最需要注意的是,在水平和垂直方向都是四分之一精度的樣本預測時,AVS-M使用的是“星形”法,而H.264使用的是“菱形”法,如圖3所示。

    在AVS-M中,e,g,p和r采用下面公式計算。

e=( F+j+1 ) >> 1


g=( G+j+1 ) >> 1


p=( N+j+1 ) >> 1


r=( O+j+1 ) >> 1

    而在H.264中,e,g,p和r采用下面公式計算。

e=( b+h+1 ) >> 1


g=( b+m+1 ) >> 1


p=( h+t+1 ) >> 1


r=( m+t+1 ) >> 1

f)變換和反變換

    AVS-M和H.264使用了類似的整數(shù)DCT變換,需要注意的是色度方面。在AVS-M中,色度使用了和亮度相同的變換方法,而H.264中對色度的DC分量又進行了一次變換。

1.1.2.1 量化和反量化

    AVS-M和H.264使用了類似的量化方法,都是使用了查表、乘法和移位,而避免了除法。需要注意的是AVS-M中要對量度量化參數(shù)做一次映射來做為色度的量化參數(shù)。

g)變長編碼

    AVS-M使用了基于上下文的多階哥侖布碼,而H.264有專門的CAVLC或CABAC編碼方式。需要注意的是在AVS-M中對幀內預測增加了一種“直接”模式,即所有4x4塊都使用預測模式。所以我們在變長編碼時,要先判斷“直接”模式是否出現(xiàn),然后再進行相應的處理。

h)環(huán)路濾波

    AVS-M和H.264中都有環(huán)路濾波,這可以顯著減少塊效應,提高視覺質量。它們的具體實現(xiàn)是不同的,總體來說AVS-M要比H.264簡化。

i)調試

    在調試過程中,我們使用了比較法。就是從編碼器端將每幀的預測值和殘差存到一個文件中,然后使用標準的解碼器進行解碼,并在解碼的同時比較預測值和殘差,然后確定出錯的宏塊,進行調試。這樣通過比較編碼器端的重建圖像和解碼器端的輸出圖像,從而保證的編碼器的正確性。

優(yōu)化

    視頻編碼需要消耗大量的計算資源,如果不針對特殊平臺進行優(yōu)化就很難滿足實時編碼的要求。本項目采用的硬件平臺是Intel的Xeon系列,它具有MMX,SSE,SSE2等加速指令集。x264本身已經(jīng)針對MMX和SSE指令集進行了優(yōu)化,鑒于AVS-M與H.264的相似性,針對H.264的優(yōu)化策略應該多數(shù)多能應用于AVS-M標準上。因為在相同的輸入下優(yōu)化和不優(yōu)化的編碼器所產(chǎn)生的碼流應該二進制相等,因此在開發(fā)過程中采用了在相同輸入的前提下,比較不優(yōu)化與優(yōu)化兩個版本輸出的碼流是否是二進制相等,以確定的那些優(yōu)化模塊是AVS-M與H.264能共用的。

    具體比較時采用二分法以加快比較的速度——先屏蔽一半的優(yōu)化模塊,然后比較開啟優(yōu)化模塊與關閉優(yōu)化模塊時產(chǎn)生的碼流是否相等,如果相等則當前開啟的優(yōu)化模塊為AVS-M與H.264能共用的,如果不等則縮小范圍繼續(xù)比較,直道能確定每一個優(yōu)化模塊。經(jīng)過上述比較之后,最終確定只有四個優(yōu)化模塊二者不能共用,其他的模塊兩者都能共用,其中兩個不能共用的模塊可以通過修改C代碼解決,另兩個需要修改MMX/SSE匯編代碼。

測試

    對音視頻的編解碼效果的對比分析主要基于兩個方面——客觀指標和主觀感受。當前,已經(jīng)有不少針對AVS-M與H.264的基于客觀指標(PSNR)的對比測試了,本文沒有必要再次重復進行這些測試,本文將就二者在實時編碼條件下的觀眾主觀感受進行對比測試。測試主要以觀眾在觀看經(jīng)過實時編碼處理后的音視頻時是否能感覺到有明顯的失真現(xiàn)象為依據(jù)。考察分四個方面,即視頻的清晰程度和連貫程度及音頻的清晰程度和連貫程度,每個方面根據(jù)觀眾的實際感受進行評分,評分的標準如下表所示:

    對比測試的環(huán)境設置為視頻幀率25,固定碼率控制模式、關閉loopfilter功能、GOP為15、H.264采用baseline級;音頻采樣率為48000、雙聲道、AAC HE編碼格式、碼率52kbps。測試的結果記錄如下表所示(其中四個字母依次代表“視頻清晰程度”、“視頻連貫程度”、“音頻清晰程度”和“音頻連貫程度”)

本文小結

    比較測試的結果數(shù)據(jù),可以看出AVS-M在低碼率(32~512Kbps)、低分辨率(SQCIF~CIF)的條件下有接近H.264的性能表現(xiàn),但總體上落后與H.264標準??紤]到移動終端有限的計算能力和AVS-M相對于H.264有計算復雜度上的優(yōu)勢,我們可以確信在未來的移動通信領域AVS-M應該能占有一席之地。

參考文獻

[1]周大山,李華,張淑芳等。AVS-M視頻解碼器設計和實現(xiàn). 電視技術,2005,8:10-11
[2]信息技術先進音/視頻編碼:視頻[S].中華人民共和國國家標準.GB/T20090.2-2006,2006
[3]高文,王強,馬思偉. AVS數(shù)字音視頻編解碼標準。中興通訊技術,2006,6:6-9

本站聲明: 本文章由作者或相關機構授權發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點,本站亦不保證或承諾內容真實性等。需要轉載請聯(lián)系該專欄作者,如若文章內容侵犯您的權益,請及時聯(lián)系本站刪除。
換一批
延伸閱讀

9月2日消息,不造車的華為或將催生出更大的獨角獸公司,隨著阿維塔和賽力斯的入局,華為引望愈發(fā)顯得引人矚目。

關鍵字: 阿維塔 塞力斯 華為

加利福尼亞州圣克拉拉縣2024年8月30日 /美通社/ -- 數(shù)字化轉型技術解決方案公司Trianz今天宣布,該公司與Amazon Web Services (AWS)簽訂了...

關鍵字: AWS AN BSP 數(shù)字化

倫敦2024年8月29日 /美通社/ -- 英國汽車技術公司SODA.Auto推出其旗艦產(chǎn)品SODA V,這是全球首款涵蓋汽車工程師從創(chuàng)意到認證的所有需求的工具,可用于創(chuàng)建軟件定義汽車。 SODA V工具的開發(fā)耗時1.5...

關鍵字: 汽車 人工智能 智能驅動 BSP

北京2024年8月28日 /美通社/ -- 越來越多用戶希望企業(yè)業(yè)務能7×24不間斷運行,同時企業(yè)卻面臨越來越多業(yè)務中斷的風險,如企業(yè)系統(tǒng)復雜性的增加,頻繁的功能更新和發(fā)布等。如何確保業(yè)務連續(xù)性,提升韌性,成...

關鍵字: 亞馬遜 解密 控制平面 BSP

8月30日消息,據(jù)媒體報道,騰訊和網(wǎng)易近期正在縮減他們對日本游戲市場的投資。

關鍵字: 騰訊 編碼器 CPU

8月28日消息,今天上午,2024中國國際大數(shù)據(jù)產(chǎn)業(yè)博覽會開幕式在貴陽舉行,華為董事、質量流程IT總裁陶景文發(fā)表了演講。

關鍵字: 華為 12nm EDA 半導體

8月28日消息,在2024中國國際大數(shù)據(jù)產(chǎn)業(yè)博覽會上,華為常務董事、華為云CEO張平安發(fā)表演講稱,數(shù)字世界的話語權最終是由生態(tài)的繁榮決定的。

關鍵字: 華為 12nm 手機 衛(wèi)星通信

要點: 有效應對環(huán)境變化,經(jīng)營業(yè)績穩(wěn)中有升 落實提質增效舉措,毛利潤率延續(xù)升勢 戰(zhàn)略布局成效顯著,戰(zhàn)新業(yè)務引領增長 以科技創(chuàng)新為引領,提升企業(yè)核心競爭力 堅持高質量發(fā)展策略,塑強核心競爭優(yōu)勢...

關鍵字: 通信 BSP 電信運營商 數(shù)字經(jīng)濟

北京2024年8月27日 /美通社/ -- 8月21日,由中央廣播電視總臺與中國電影電視技術學會聯(lián)合牽頭組建的NVI技術創(chuàng)新聯(lián)盟在BIRTV2024超高清全產(chǎn)業(yè)鏈發(fā)展研討會上宣布正式成立。 活動現(xiàn)場 NVI技術創(chuàng)新聯(lián)...

關鍵字: VI 傳輸協(xié)議 音頻 BSP

北京2024年8月27日 /美通社/ -- 在8月23日舉辦的2024年長三角生態(tài)綠色一體化發(fā)展示范區(qū)聯(lián)合招商會上,軟通動力信息技術(集團)股份有限公司(以下簡稱"軟通動力")與長三角投資(上海)有限...

關鍵字: BSP 信息技術
關閉
關閉