国产毛片a精品毛-国产毛片黄片-国产毛片久久国产-国产毛片久久精品-青娱乐极品在线-青娱乐精品

電子工程網(wǎng)

標題: H.264編解碼器在C6416 DSP上的實現(xiàn)與優(yōu)化 [打印本頁]

作者: conniede    時間: 2010-8-28 22:16
標題: H.264編解碼器在C6416 DSP上的實現(xiàn)與優(yōu)化
隨著通信技術(shù)和信號處理技術(shù)的發(fā)展,人們對多媒體信號的需求越來越多,要求的質(zhì)量也越來越高,如何在現(xiàn)有的技術(shù)水平和硬件條件下實現(xiàn)合理、優(yōu)化、實時的多媒體通信終端設(shè)備和產(chǎn)品一直是近年來信號處理領(lǐng)域和相關(guān)公司關(guān)注的話題。

目前,隨著數(shù)字信號處理器(DSP)的高速發(fā)展,為我們實現(xiàn)高效的多媒體處理提供了可能性。尤其是TI公司的TMS320C64系列產(chǎn)品,具有高主頻,多流水線,高并行度以及專門的視頻信號處理指令等優(yōu)點,使其成為視頻處理領(lǐng)域優(yōu)選的DSP芯片之一。

其次,針對當(dāng)前網(wǎng)絡(luò)帶寬還不夠,無線通信信道誤碼率較高的情況,穩(wěn)定的低碼率視頻信號的需求一直都是必須和必要的。H.264/AVC是ITU-T視頻編碼專家組和ISO/IEC運動圖像專家組聯(lián)合提出的最新一代的視頻編碼標準。不論從編碼的效率方面,還是從有效的適應(yīng)各種網(wǎng)絡(luò)和各種應(yīng)用領(lǐng)域的靈活性方面,H.264/AVC都體現(xiàn)著視頻編碼技術(shù)的很多優(yōu)勢。這些新特性使H.264/AVC標準在實現(xiàn)和現(xiàn)有編碼標準(H.263, MPEG-4 Simple Profile)相同視覺效果的同時節(jié)省大約50%比特率。

因此,將H.264的先進技術(shù)和穩(wěn)定的媒體處理器相結(jié)合,實現(xiàn)高效的媒體通信平臺有著一定的工程意義和市場價值。

H.264簡介

H.264是ITU-T和ISO/IEC聯(lián)合制定的最新編碼標準,它最先由ITU-T于1997年提出,目標是提出一種更高性能(相對于當(dāng)時的H.263)的視頻編碼標準。相對于其它標準,H.264具有以下特點:

1. 低碼率,高質(zhì)量  

在相同質(zhì)量的情況下,H.264相對于H.263的Baseline可以節(jié)約40%~50%的碼率。

2. 廣闊的應(yīng)用范圍  

H.264的不同Profile既可以應(yīng)用于有嚴格時延限制的實時通信中,也可以應(yīng)用于對時延要求不高的其他應(yīng)用中(視頻存儲、流媒體等等)。  

3. 魯棒性  

H.264在設(shè)計時,針對分組交換網(wǎng)如Internet中的分組丟失和無線網(wǎng)絡(luò)中比特誤碼都提出了相應(yīng)的工具,使得H.264在這些網(wǎng)絡(luò)中傳播時具有更強的抗誤碼性能。

4. 對各種網(wǎng)絡(luò)的友好性。

H.264中增加了NAL層,負責(zé)將編碼器的輸出碼流適配到各種類型的網(wǎng)絡(luò)中,從而提供了友好的網(wǎng)絡(luò)接口。H.264之所以能夠達到以上性能,是因為采用了以下一些先進的技術(shù):

首先是幀內(nèi)預(yù)測編碼,充分利用圖像空域相關(guān)性,來降低碼率。共有13種預(yù)測模式(4×4塊大小9種預(yù)測模式,16×16塊大小4種預(yù)測模式),這在以往標準中是沒有的。

其次采用新的運動估計方法。H.264有7種塊匹配模式,編碼時對其逐一計算,選擇最優(yōu)。例如較為精細的部分采用4×4塊大小,不運動的背景可以采用16×16塊大小等等。以往標準只有固定的一種或兩種塊大小模式。H.264采用多幀參考,最大限度利用實域相關(guān)性。參考幀可以從1幀到15幀,以往標準都是單幀參考。還有采用1/4或1/8精度的亞象素運動估計,以往標準至多采用1/2精度亞象素搜索,而且不是必選選項。為了消除視頻編碼中常出現(xiàn)的塊效應(yīng),H.264使用了去塊效應(yīng)濾波器。

它還采用整數(shù)DCT變換,以提高變換速度,采用CAVLC,CABAC等新的熵編碼方法以提高編碼效果。

NVDK開發(fā)平臺介紹  

NVDK是TI的第三方ATEME公司推出的基于TI的C64系列DSP評估開發(fā)套件,是一套適用于圖像、視頻信號處理的高速DSP開發(fā)平臺。該套件為諸如視頻基礎(chǔ)設(shè)施及網(wǎng)絡(luò)化視頻設(shè)備等高級視頻應(yīng)用制造商提供了方便,提高了數(shù)字視頻應(yīng)用項目的開發(fā)速度。

NVDK的核心是一塊C6416DSP,主頻600Mhz,處理能力達到4800MIPS。它具有64個獨立通用寄存器,1M字節(jié)的片上內(nèi)存,具有64位和16位片外內(nèi)存接口各一個。它還具有豐富的DMA通道,大大緩解了CPU的運算壓力。此外,C6416支持8,16 ,32,40,64位數(shù)據(jù)讀寫及運算,具有豐富的媒體處理指令,如一條指令對4個字節(jié)的數(shù)據(jù)進行加、減、乘、求絕對值、點乘等運算,方便進行媒體處理開發(fā)。

此外,NVDK板上還有豐富的音視頻接口,并提供相關(guān)的視頻捕獲,格式轉(zhuǎn)換,視頻播放等函數(shù),大大方便我們的工作。

H.264編解碼器在DSP上的實現(xiàn)與優(yōu)化

將H.264在DSP上實現(xiàn)與優(yōu)化,需要經(jīng)過以下幾個步驟:PC機端算法實現(xiàn)及優(yōu)化,代碼移植,DSP端代碼優(yōu)化。下面就著幾個方面逐一進行介紹:

1. PC機端算法實現(xiàn)與優(yōu)化。  

我們選取ITU-T公布的JM6.1e參考軟件作為我們的優(yōu)化對象,目標是實現(xiàn)一個base-line profile的實時編解碼算法。但是JM6.1e代碼復(fù)雜,冗余度很大,需要在PC機端對其進行較大調(diào)整,涉及工作有:去除冗余代碼、規(guī)范程序結(jié)構(gòu)、全局和局部變量的調(diào)整和重新定義、結(jié)構(gòu)體的調(diào)整等。

2. 代碼移植  

代碼移植,就是將在PC端跑通的程序,移植到DSP端,使其能夠初步運行。需要考慮的問題主要是一些內(nèi)存分配,語法規(guī)則等問題。

3. DSP端代碼的優(yōu)化  

通過把PC機H.264代碼DSP化,可以在DSP上實現(xiàn)H.264的編解碼算法,但是,這樣實現(xiàn)的算法運行效率很低,因為所有的代碼都是由C語言編寫,并沒有完全利用DSP的各種性能。所以必須結(jié)合DSP本身的特點,對其進一步優(yōu)化,才能實現(xiàn)H.264視頻解碼器算法對視頻圖像的實時處理。

代碼的優(yōu)化分為三個層次:項目級優(yōu)化,算法級優(yōu)化,指令級優(yōu)化。

* 項目級優(yōu)化項目級優(yōu)化,是對項目的整體優(yōu)化,主要手段有以下幾點:

首先是利用CCS編譯器提供的優(yōu)化功能,對優(yōu)化選項進行選擇和配置,如打開O-3選項等。

其次對程序結(jié)構(gòu)進行調(diào)整,對不適合DSP執(zhí)行的語句進行改寫,以提高代碼的并行性。

最后是對內(nèi)存進行合理分配,因為DSP資源有限,我們把一些常用數(shù)據(jù),如全局變量,程序等數(shù)據(jù)分配到訪問速度高的片內(nèi)內(nèi)存,把占用空間較大的數(shù)據(jù)分配在片外,如幀存等。

* 算法級優(yōu)化

是利用H.264的自身特點,提出快速高效算法,從算法上挖掘潛力,提高運行速度,達到優(yōu)化目的。這部分工作主要集中在編碼器優(yōu)化方面。

視頻編碼中,運動估計部分是運算量最大的一塊,研究顯示,對于H.264,單幀參考,運動估計占總運算量的70%,5幀參考,這個比例能達到90%,因此,提出有效快速的運動估計算法非常有必要,我們通過研究提出了基于預(yù)測和早停止技術(shù)的運動估計算法,主要方法是利用周邊鄰塊對當(dāng)前塊運動矢量進行預(yù)測,并設(shè)定自適應(yīng)閾值,使搜索提前停止。我們提出的算法,在搜索窗32時,每塊平均搜索點數(shù)3-4個左右,和全搜索算法的4225余個點相比,提高速度1000多倍。和一些經(jīng)典快速算法相比,優(yōu)勢也很明顯, H.264算法中,亞象素運動估計采用全搜索,1/4精度下,需要搜索1 6個點。我們提出了自己的亞象素快速搜索算法,平均搜索點數(shù)7個,節(jié)省運算量60%以上。我們提出的新算法提高編碼速度很明顯,而且質(zhì)量也較好,PSNR損失不到0.06dB,碼率增大2%左右。這對于運動估計算法基本可以忽略不計。

此外,我們針對幀間編碼7中塊大小匹配模式,以及幀內(nèi)預(yù)測13中模式太過復(fù)雜,運算量太大的問題,提出了我們自適應(yīng)模式選擇算法,不需要將所有模式全部計算,就能找到一種相對最優(yōu)的模式。這些算法,都大大提高了代碼的運行速度,在速度與質(zhì)量上達到較好的折中。

* 指令級優(yōu)化  

如果上述優(yōu)化方法無法達到實時要求,就需要進行指令級優(yōu)化了,主要手段有。

* 循環(huán)拆解,將C語言中的for循環(huán)打開,排流水線,提高并行性

* 調(diào)用系統(tǒng)提供的豐富的內(nèi)聯(lián)函數(shù)

* 調(diào)整數(shù)據(jù)結(jié)構(gòu),將需要大規(guī)模訪問的數(shù)據(jù),在內(nèi)存中將它們放置在一起,方便DMA機制的訪問,或并行指令的處理,如插值函數(shù)模塊。

* 將耗時函數(shù)抽取出來,用線性匯編改寫,充分利用豐富的媒體處理指令【5】,最大限度的利用DSP的并行性。例如,運動估計中頻繁調(diào)用的SAD計算,是對相應(yīng)象素點做差,并對殘差場求絕對值和的計算。原始算法是對每一對象素點分別求差,再對其絕對值累加。我們對其進行了線性匯編的改寫,使用了SUBABS4(一次對兩對4字節(jié)數(shù)據(jù)做差并求絕對值),DOTPU4(一次對兩對4字節(jié)數(shù)據(jù)做內(nèi)積),LDW\LDNW(一次讀取4字節(jié)數(shù)據(jù))等指令,使代碼并行性有了很大提高。對16×16的塊來說,優(yōu)化前需要指令1000余條,優(yōu)化后,200條就足夠了。 我們充分利用系統(tǒng)并行性,對耗時函數(shù)進行匯編語言改寫,涉及函數(shù)有DCT變換,反DCT變換,整象素運動估計,亞象素搜索,幀內(nèi)編碼函數(shù),插值函數(shù)等,效果明顯。

算法性能的評測及前景展望  

在NVDK C6416環(huán)境下,測試了編解碼器算法,對QCIF測試序列,編碼器40_50幀/秒的編碼碼速度,解碼器達到50_60幀/秒的解碼速度,遠遠達到了實時性解碼的目的。

因為代碼的兼容性和可移植性,我們可以把在C6416上實現(xiàn)的編解碼算法移植到TI公司推出的媒體處理專用芯片TMS320DM642上,利用其豐富的媒體處理接口和協(xié)處理器,實現(xiàn)更好的性能。
作者: hszx    時間: 2011-2-11 08:20





歡迎光臨 電子工程網(wǎng) (http://m.qingdxww.cn/) Powered by Discuz! X3.4
主站蜘蛛池模板: 韩国一级毛片在线观看 | 国产一级视频在线 | 欧美 日韩 视频 | 亚洲欧美日韩国产 | 国产在线观看一区精品 | 亚洲成人免费在线 | 成人免费观看男女羞羞视频 | 国产一区二区精品在线观看 | 欧美人与动性行为高清视频 | 欧美一级视频免费观看 | 天天摸天天摸色综合舒服网 | 国产精品久久久久久吹潮 | 在线视频免费观看a毛片 | 免费国产成人午夜私人影视 | 一级毛片视频免费 | 免费看污污的网站 | 窝窝午夜一级看片爽 | 1204你懂的国产国片免费 | 99热这里有免费国产精品 | 精品高清国产a毛片 | www.精品视频| 五月天美女| 牛牛av | 在线播放精品视频 | 老司机亚洲精品影院在线 | 日韩视频在线观看 | www亚洲视频 | 欧美日韩一区在线观看 | 奶茶视频影院播放 | 国产午夜精品一区二区 | 在线观看黄免费 | 亚洲黄色片在线观看 | 中文字幕免费观看视频 | 亚洲一区二区三区免费视频 | 国产高清精品一级毛片 | 成人免费观看网欧美片 | 欧美一级日韩一级 | 日本免费三级网站 | 在线看欧美日韩中文字幕 | 久久久久久极精品久久久 | 日韩视频在线观看免费 |