国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

基于ADSP-BF561的H.264編碼器設計

2009-05-12 03:14王慶輝
現(xiàn)代電子技術 2009年5期
關鍵詞:描述符緩沖區(qū)存儲器

王慶輝 高 穎

摘 要:依據(jù) H.264 視頻編碼標準,在DSP上完成視頻編碼器的設計工作,以實現(xiàn)高質量視頻流的實時傳輸。編碼器硬件平臺選用 AD 公司的BF561開發(fā)板,圖像采集采用OV7660,利用DMA技術以達到更高效的視頻采集和數(shù)據(jù)格式轉換。測試結果表明,在DSP上實現(xiàn)實時的H.264編碼方案,并且滿足高質量、低帶寬傳輸?shù)南到y(tǒng)要求是完全可行的。

關鍵詞:H.264;編碼器;BF561;嵌入式系統(tǒng)

中圖分類號:TN919.81文獻標識碼:B

文章編號:1004-373X(2009)05-156-03

Design of H.264 Encoder Based on ADSP-BF561

WANG Qinghui,GAO Ying

(Shenyang Institute of Chemical Technology,Shenyang,110142,China)

Abstract:According to the H.264 recommendation,a video encoder is designed to implement high quality video flow transfer based on AD DSP.Hardware platform of the encoder is an image processing equipment based on DSP (BF561) and video capture uses OV7660.Video capture and data format transformation become easier when DMA is used.The result shows that it is possible to implement a real-time video encoder conformed to the H.264 standard on a single BF561 with high quality and low bandwidth.

Keywords:H.264;encoder;BF561;embedded system

0 引 言

互聯(lián)網(wǎng)的帶寬越來越大,基于互聯(lián)網(wǎng)的信息特別是聲音圖像實時數(shù)據(jù)的傳輸已經(jīng)成為可能。視頻和音頻數(shù)據(jù)的傳輸正好充分利用了互聯(lián)網(wǎng)帶寬,并達到了實時交流以及進行遠程開會的可能。視頻會議系統(tǒng)相比傳統(tǒng)的電話會議更充分利用了互聯(lián)網(wǎng)資源,從而降低了運營成本。

視頻編碼器是視頻會議系統(tǒng)的主要構成部分。目前視頻壓縮標準有H.261、H.263、MPEG4和H.264等[1]。新一代視頻編碼標準H.264與以往標準相比具有壓縮率高,網(wǎng)絡親和性好,視頻質量優(yōu)越等優(yōu)點。H.264引入了許多當前視頻編碼中的新技術[2],使得在相同的重建圖像質量下,編碼效率比H.263和MPEG-4高50%左右。因此,視頻編碼器設計中采用了H.264編碼標準,編碼器主要通過美國AD公司的BF561 DSP 芯片實現(xiàn)。目前,視頻處理方案也已經(jīng)由前幾年的ASIC方案轉向DSP平臺。在DSP平臺上進行視頻產(chǎn)品開發(fā)有以下幾方面的優(yōu)勢:第一,用戶開發(fā)自由度更大,支持多種個性化開發(fā),可以適應市場不斷提出的新要求,在第一時間提升產(chǎn)品性能,增強產(chǎn)品的競爭能力;第二,DSP處理能力強,可以在一個DSP上同時實現(xiàn)多路音、視頻信號的壓縮處理;第三,開發(fā)周期短,能實現(xiàn)快速技術更新和產(chǎn)品換代,各種新出現(xiàn)的快速及優(yōu)化算法可靈活進行升級。

1 BF561介紹

BF561采用了對稱雙核的架構,在一顆BF561芯片內(nèi)部集成了2個BF533 DSP內(nèi)核,2個內(nèi)核主頻都可以高達600 MHz,支持并行處理[3]。BF561處理器的特性保證了其強大的數(shù)字信號處理能力,并且支持低電壓低電流供電,能夠滿足多功能的數(shù)字消費類產(chǎn)品對于性能、功耗方面的要求。

1.1 DMA介紹

Blackfin處理器用直接存儲器訪問(DMA)在存儲器之間或存儲器與外設之間傳送數(shù)據(jù)。DMA控制器可在存儲器和片上外設(外設DMA)之間進行數(shù)據(jù)傳送,以及在L1/L2/L3存儲器間進行數(shù)據(jù)傳送(存儲器DMA或MDMA)。DMA控制器是Blackfin處理器架構中的重要組件,完全獨立于內(nèi)核,不會進行周期挪用,完全無需占用處理器內(nèi)核周期。在理想的應用配置中,內(nèi)核只需要設置DMA控制器,并在數(shù)據(jù)調(diào)用過程中響應中斷。

BF561有3個獨立的DMA控制器DMA1,DMA2和IMDMA。DMA1和DMA2控制器各有12個外設DMA通道和4個存儲器DMA通道。IMDMA控制器有4個存儲器DMA通道。

1.2 基于描述符的DMA

基于描述符的DMA傳送需要存儲于存儲器中的參數(shù)來初始化一個DMA隊列。描述符包括所有需對DMA控制寄存器正常編程的參數(shù)。描述符允許把多個DMA隊列鏈接在一起。在基于描述符的DMA操作中,可以對一個DMA通道編程,以便在當前傳送隊列完成后,自動設置和啟動其他DMA傳送過程。在管理一個系統(tǒng)的DMA傳送過程時,基于描述符的模型能提供最大的靈活性。

描述符列表模型分為描述符列表“小”模式和描述符列表“大”模式。在描述符列表“小”模式中,描述段包括一個16位字段,用以指向下一描述符入口地址的低16位,地址的高16位通過寄存器編程得到且保持不變,限制描述符在存儲器的一個特定64 KB大小的頁中。當描述符需要跨頁時,可用能提供32位入口地址的描述符列表“大”模式。

2 H.264視頻編碼器構成

H.264編碼器由視頻采集、數(shù)據(jù)格式轉換、H.264編碼3部分組成。視頻采集部分負責捕獲圖像,并且將捕獲到的圖像通過PPI接口填充到指定的視頻幀緩沖區(qū)中。數(shù)據(jù)格式轉換部分完成將輸入的4∶2∶2格式的圖像轉換成H.264編碼器能夠編碼的4∶2∶0格式的數(shù)據(jù)。H.264編碼部分負責對4∶2∶0格式圖像編碼[4]。

在本視頻編碼器設計中,BF561 A核用于運行操作系統(tǒng)和協(xié)議棧,而H.264算法在B核實現(xiàn)。

2.1 視頻采集

視頻采集是由攝像頭OV7660完成,OV7660是美國 OmniVision 公司開發(fā)的一款CMOS彩色圖像傳感器芯片[5],支持 VGA,QVGA,CIF等多種分辨率。視頻輸出格式有Raw RGB,GRB 4∶2∶2 和YUV/YCbCr(4∶2∶2)。在本設計中,選擇CIF YVYU(4∶2∶2)格式,需要設置其相應寄存器COM1=0X00,CLKRC=0X80,COM7=0X30,TSLB=0X05。

攝像頭配置完后,打開PPI0將視頻數(shù)據(jù)填充到Blackfin處理器的視頻幀緩沖區(qū)中。采用基于描述符的PPI DMA可以很容易的實現(xiàn)乒乓緩沖[6],從而確保不會覆蓋尚未處理完畢的輸入數(shù)據(jù)。

乒乓緩沖的原理如圖1所示。

設置兩個CIF 4∶2∶2幀大小的輸入緩沖區(qū),首先輸入數(shù)據(jù)通過PPI接口填充到4∶2∶2視頻幀1中,當?shù)谝粠瑪?shù)據(jù)填充滿時,處理器對這幀數(shù)據(jù)進行MDMA搬移和壓縮編碼等操作,與此同時,PPI繼續(xù)填充第二個視頻幀。當?shù)诙€視頻幀填充滿時,處理器處理第二個視頻幀同時填充第一個視頻幀。利用乒乓緩沖,數(shù)據(jù)將源源不斷地填充到兩個視頻幀中。

2.2 數(shù)據(jù)格式轉換

視頻采集到的圖像是交織的4∶2∶2格式的YUV視頻數(shù)據(jù),而H.264視頻編碼算法對4∶2∶0格式的視頻數(shù)據(jù)進行壓縮。4∶2∶0格式數(shù)據(jù)的亮度值緩沖區(qū)和色度值緩沖區(qū)是分離的,利用MDMA搬移,可以實現(xiàn)亮度緩沖區(qū)和色度緩沖區(qū)的分離[7]。

CIF YVYU(4∶2∶2)格式數(shù)據(jù)如表1所示,CIF 4∶2∶0格式數(shù)據(jù)如表2所示。4∶2∶2格式圖像一個宏像素中有4個Y分量,2個U分量和2個V分量[8]。4∶2∶0格式圖像一個宏像素中有4個Y分量,1個U分量和1個V分量。Y,U和V的存儲區(qū)是分開的,Y在前,然后是U,最后是V。

把4∶2∶2格式轉換成4∶2∶0格式,要保留所有的Y,并取第0,2,4,……行的U和第1,3,5……行的V。采用基于描述符列表“大”模式的MDMA,需要三對描述符source_y, dest_y,source_u,dest_u, source_v,dest_v,形成源和目的兩個描述符鏈表,進行Y,U和V的從交織的4∶2∶2格式的源數(shù)據(jù)區(qū)到Y,U和V分離的目的數(shù)據(jù)區(qū)的搬移。

當一幀CIF 4∶2∶2格式數(shù)據(jù)通過PPI填充到一個Blackfin處理器的視頻幀緩沖區(qū)中,產(chǎn)生中斷,在中斷處理子程序中啟動MDMA,分離亮度值和色度值,然后交給H.264編碼器進行編碼。

2.3 H.264編碼

等待產(chǎn)生一幀4∶2∶0格式數(shù)據(jù)后,對這一幀數(shù)據(jù)執(zhí)行H.264編碼,之后繼續(xù)等待4∶2∶0格式數(shù)據(jù)的產(chǎn)生,直至編碼結束。

3 實驗結果與分析

實驗中,H.264編碼器對攝像頭采集到的圖像編碼,并將壓縮碼流以文件的形式保存在本地存儲器中。編碼結束后,用H.264的解碼器對壓縮碼流解碼,用YUVviewerPlus.exe播放解碼后的視頻文件。

實驗中,編碼器可達到每秒鐘編碼15幀圖像的速度。解碼后的圖像清晰度與在VisualDsp++5.0[9]中用Image Viewer查看的相比,圖像質量基本相同,圖像很清晰。OV7660采集圖像的速度是每秒鐘30幀,H.264編碼器沒有達到實時編碼。

實驗中,基于BF561的H.264編碼器沒有達到實時編碼的原因是沒有對H.264開源代碼優(yōu)化。由于CIF格式圖像數(shù)據(jù)比較大,需要存儲在外部存儲器中,處理器訪問外部存儲器時間比較長;DCT和運動估計算法函數(shù)比較耗時,用C語言實現(xiàn);程序中有一些輔助函數(shù)和打印信息等,從而影響了編碼器的速度[10]。

4 結 語

基于BF561的H.264編碼器沒有達到實時編碼。未來的工作重點是利用VisualDSP++開發(fā)環(huán)境的C編譯器,進行代碼優(yōu)化;充分利用內(nèi)部存儲空間資源和盡可能通過DMA、高速緩存等減少存儲分配帶來的片內(nèi)外數(shù)據(jù)調(diào)度對系統(tǒng)性能的影響;對一些系統(tǒng)調(diào)用比較頻繁、耗時較多的模塊,如DCT和運動估計等,充分利用BF561的指令集,用匯編語言實現(xiàn);去掉源程序中不必要的輔助函數(shù)和打印信息,以實現(xiàn)基于BF561的H.264編碼器實時編碼。

隨著消費類電子產(chǎn)品進一步進入普通家庭,應用H.264標準的視頻會議、可視電話以及無人監(jiān)控系統(tǒng)等也將會得到越來越廣泛的應用。

參考文獻

[1]Analog Devices Inc..ADSP-BF561 Blackfin Processor Hardware Reference[EB/OL].Revision 1.1,2007.

[2]ITU-T REC.H.264|ISO/IEC 14496-10 AVC,Draft ITU-T Recommendation and Final Draft International Standard of Joint Video Specification[S].Thailand:The 7th Meeting:Pattaya,2003,72:7-14.

[3]H.264/MPEG-4 Part 10 White Paper.http://www.vcodex.com.

[4]畢厚杰.新一代視頻壓縮編碼標準H.264/AVC[M].北京:人民郵電出版社,2005.

[5]OV7660/OV7161 CMOS VGA (640x480) CameraChip?Implementation Guide[Z].Rev.1,2004.

[6] 凱茨.嵌入式媒體處理[M].殷福亮,陳喆,景源,譯.北京:電子工業(yè)出版社,2007.

[7]Analog Devices Inc.Video Framework Considerations for Image Processing on Blackfin Processors (EE-276) [Z].Rev.1,2005.

[8]劉峰.視頻圖像編碼技術及國際標準[M].北京:北京郵電大學出版社,2005.

[9]Analog Devices,Inc.VisualDsp++5.0 Device Drivers and System Services Manual for Blackfin Processors[Z].Revision 3.0,2007.

[10]蘇輝,孔德佳,余松煜.基于ADSP-BF533的實時圖像編碼關鍵技術[J].計算機工程與應用,2005(4):88-90.

作者簡介

王慶輝 男,1972年出生,沈陽化工學院副教授,博士。主要研究方向為多媒體通信。

高 穎 女,1978年出生,遼寧沈陽人,碩士研究生。主要研究方向為視頻數(shù)據(jù)壓縮算法和DSP實現(xiàn)。

猜你喜歡
描述符緩沖區(qū)存儲器
基于結構信息的異源遙感圖像局部特征描述符研究
靜態(tài)隨機存儲器在軌自檢算法
基于AKAZE的BOLD掩碼描述符的匹配算法的研究
Linux單線程并發(fā)服務器探索
嫩江重要省界緩沖區(qū)水質單因子評價法研究
利用CNN的無人機遙感影像特征描述符學習
關鍵鏈技術緩沖區(qū)的確定方法研究
存儲器——安格爾(墨西哥)▲
基于Nand Flash的高速存儲器結構設計
地理信息系統(tǒng)繪圖緩沖區(qū)技術設計與實現(xiàn)
屏南县| 中山市| 商洛市| 塘沽区| 台东市| 营山县| 云和县| 临泉县| 开阳县| 右玉县| 龙门县| 雅江县| 洛南县| 新民市| 仁化县| 灵山县| 贵州省| 乌恰县| 峨边| 泾川县| 平罗县| 屯门区| 夏邑县| 临海市| 东乡族自治县| 昌吉市| 林芝县| 岳西县| 平凉市| 抚州市| 黔南| 新泰市| 吴忠市| 温州市| 神农架林区| 双鸭山市| 剑川县| 凤山市| 墨玉县| 富蕴县| 罗甸县|