當(dāng)前位置:首頁(yè) > 嵌入式 > 嵌入式教程
[導(dǎo)讀]基于ADSP-21535的MPEG-4視頻編解碼實(shí)現(xiàn)

引言

  數(shù)字視頻的大數(shù)據(jù)量給信息的存儲(chǔ)和傳輸造成了相當(dāng)大的困難,成為數(shù)字視頻應(yīng)用的瓶頸之一,數(shù)字視頻壓縮編碼是解決這一問(wèn)題的有效途徑,但在一些對(duì)實(shí)時(shí)性要求較高的場(chǎng)合,要求快速實(shí)現(xiàn)數(shù)字視頻的編解碼。采用DSP器件集成的視頻采集壓縮卡能快速實(shí)現(xiàn)視頻壓縮算法,提高處理速度,滿足實(shí)時(shí)性要求。

  本文采用Blackfin系列的DSP芯片ADSP-21535來(lái)實(shí)現(xiàn)MPEG-4視頻編解碼,詳細(xì)介紹了硬件和軟件的設(shè)計(jì)方案。

  硬件設(shè)計(jì)

  總體結(jié)構(gòu)如圖1所示。從圖中可以看出,整個(gè)系統(tǒng)包括視頻采集單元、MPEG-4編解碼單元、數(shù)據(jù)存儲(chǔ)單元、邏輯控制單元和視頻顯示單元等。采用Conexant公司的Bt829實(shí)現(xiàn)視頻信號(hào)采集,數(shù)據(jù)存儲(chǔ)采用Cypress公司的SRAM芯片CY7C104133,視頻顯示單元采用ADI公司的ADV7175,邏輯控制部分采用Altera公司的MAX7000芯片。  

  圖1  視頻編解碼器硬件框圖

  軟件設(shè)計(jì)

  MPEG-4視頻編碼是根據(jù)圖像的內(nèi)容將其分割成不同的視頻對(duì)象VO(Video Object),然后進(jìn)行編碼。其編碼過(guò)程可由3步來(lái)完成,即VO的形成、編碼和復(fù)合。它提供了靈活的框架和開(kāi)放的工具集。

  基于VOP(Video Object Plane)的編碼,VO是場(chǎng)景中的某個(gè)物體,是由時(shí)間上連續(xù)的幀畫(huà)面序列組成的,而VOP是某一時(shí)刻某一幀畫(huà)面的VO,VOP編碼是針對(duì)某一時(shí)刻該幀畫(huà)面VO的形狀、運(yùn)動(dòng)、紋理等三類(lèi)信息進(jìn)行編碼。從類(lèi)型上看包括幀內(nèi)IVOP(Intra VOP)、幀間前向因果預(yù)測(cè)PVOP(Inter Prediction VOP)、幀間雙向非因果預(yù)測(cè)BVOP(Inter Biderctional Prediction VOP)和全息靈影SVOP(Sprite VOP)。從空間上看它由若干個(gè)16×16的宏塊組成,又可分成4個(gè)8×8的亮度塊和2個(gè)8×8的色差塊。它采用位圖法對(duì)VOP的形狀進(jìn)行編碼。

  在本文設(shè)計(jì)的編解碼器中,對(duì)于352×288的VOP圖像數(shù)據(jù)編碼采用Y:U:V=4:2:0的格式,即每采樣4個(gè)亮度樣本,對(duì)應(yīng)采樣兩個(gè)色差樣本。然后,分離不同的幀格式,分別對(duì)它們進(jìn)行編碼和解碼。

  基于ADSP-21535的MPEG-4編碼優(yōu)化

  ADSP-21535采用雙MAC的結(jié)構(gòu),具有正交的類(lèi)似RISC的微處理器集,主頻可達(dá)300MHz,有專(zhuān)門(mén)的視頻處理指令、靈活的SRAM和cache結(jié)構(gòu),是一款在多媒體處理與網(wǎng)絡(luò)傳輸應(yīng)用中極具特色的芯片。因此,在編碼的過(guò)程中,應(yīng)充分考慮芯片的結(jié)構(gòu)和指令特點(diǎn),實(shí)現(xiàn)程序的優(yōu)化。

  使用硬件結(jié)構(gòu)提高處理速度

  ADSP-21535內(nèi)部有兩塊RAM,即L1RAM和L2RAM。L1RAM是核內(nèi)的高速RAM,可以按照需要定義為cache或SRAM,或者一部分?jǐn)?shù)據(jù)cache,一部分?jǐn)?shù)據(jù)SRAM。它可分成16KB指令cache和指令SRAM,也可分成32KB數(shù)據(jù)cache和數(shù)據(jù)RAM。相對(duì)來(lái)說(shuō)L2RAM離核較遠(yuǎn),如果程序或數(shù)據(jù)放在L2RAM中直接執(zhí)行,速度會(huì)比較慢。因此如果程序的數(shù)據(jù)量較小,可以把程序和數(shù)據(jù)直接放入L1RAM中執(zhí)行。但是對(duì)于數(shù)據(jù)量較大的程序來(lái)說(shuō),有時(shí)還有可能把數(shù)據(jù)放在外部存儲(chǔ)器中,如視頻采集數(shù)據(jù),這時(shí)就應(yīng)該設(shè)置好cache允許的數(shù)據(jù)地址和程序地址,然后啟動(dòng)cache,這樣程序和數(shù)據(jù)就會(huì)自動(dòng)調(diào)入L1RAM中執(zhí)行。

  運(yùn)動(dòng)估值搜索算法的并行處理

  視頻壓縮的關(guān)鍵是去除時(shí)間與空間的冗余,考慮到幀間的時(shí)間相關(guān)性強(qiáng)的特點(diǎn),為了滿足隨機(jī)存儲(chǔ)和高壓縮比的要求,一般采用幀間和幀內(nèi)的編碼技術(shù)。在MPEG-4運(yùn)動(dòng)搜索算法中是使用條塊匹配算法,需要進(jìn)行VOP范圍內(nèi)點(diǎn)的搜索。匹配使當(dāng)前的圖像與預(yù)測(cè)圖像的絕對(duì)差值和,即SAD最小。

  SAD的計(jì)算是運(yùn)動(dòng)估值中最重要的一個(gè)環(huán)節(jié),它直接影響整個(gè)運(yùn)動(dòng)搜索的速度,這也是圖像數(shù)據(jù)實(shí)時(shí)壓縮的瓶頸。Blackfin提供了一個(gè)極好的硬件指令,可以取出8個(gè)單元數(shù)據(jù)同時(shí)做4組VIDEO單元的絕對(duì)差和。ADSP-21535提供了兩種指令形式來(lái)完成這個(gè)操作,即SAA(R1:0)和SAA(R1:0,R3:2)(R代表寄存器組高低寄存器互換),將結(jié)果放在A0和A1中(A0和A1為兩個(gè)乘法器和累加器,R1和R0、R2和R3為配對(duì)的兩個(gè)寄存器,一般稱(chēng)為寄存器組0和寄存器組1)。

  由于作絕對(duì)差和是針對(duì)字節(jié)而言,所以起始字節(jié)地址不一定是以4的整數(shù)倍開(kāi)始,但是每次運(yùn)算卻必須要取出4個(gè)字節(jié)作運(yùn)算。對(duì)于此,Blackfin巧妙地根據(jù)地址的末兩位來(lái)確定運(yùn)算所取的字節(jié)。其地址指針為I0和I1,由I0和R1:0、I1和R3:2來(lái)確定運(yùn)算的8個(gè)點(diǎn)。

  用ADSP-21535計(jì)算當(dāng)前塊與目標(biāo)宏塊的SAD值的程序在此就不再贅述。

  結(jié)語(yǔ)

  整個(gè)系統(tǒng)使用Visual DSP++3.0進(jìn)行開(kāi)發(fā),通過(guò)JTAG口仿真,在CIF格式下(352×288)進(jìn)行測(cè)試。采集的幀率為25fps,對(duì)IVOP、PVOP、BVOP同時(shí)編碼,平均壓縮一幀需60ms左右,平均壓縮比為40倍左右。從這些數(shù)據(jù)可以看出,用Blackfin實(shí)現(xiàn)MPEG-4編解碼方案是可行的,能有效解決傳輸數(shù)據(jù)的瓶頸問(wèn)題,提高信號(hào)的處理速度。同時(shí)該芯片的功耗小,性能穩(wěn)定,可實(shí)現(xiàn)電源的動(dòng)態(tài)管理,有利于實(shí)現(xiàn)視頻壓縮卡的集成。當(dāng)然,如果能夠?qū)λ惴ㄟM(jìn)一步優(yōu)化,就更有利于視頻數(shù)據(jù)的實(shí)時(shí)處理和傳輸。

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

9月2日消息,不造車(chē)的華為或?qū)⒋呱龈蟮莫?dú)角獸公司,隨著阿維塔和賽力斯的入局,華為引望愈發(fā)顯得引人矚目。

關(guān)鍵字: 阿維塔 塞力斯 華為

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

關(guān)鍵字: 汽車(chē) 人工智能 智能驅(qū)動(dòng) BSP

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

關(guān)鍵字: 亞馬遜 解密 控制平面 BSP

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

關(guān)鍵字: 騰訊 編碼器 CPU

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

關(guān)鍵字: 華為 12nm EDA 半導(dǎo)體

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

關(guān)鍵字: 華為 12nm 手機(jī) 衛(wèi)星通信

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

關(guān)鍵字: 通信 BSP 電信運(yùn)營(yíng)商 數(shù)字經(jīng)濟(jì)

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

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

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

關(guān)鍵字: BSP 信息技術(shù)
關(guān)閉
關(guān)閉