<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>

新聞中心

EEPW首頁(yè) > 消費電子 > 設計應用 > TMS320C6201在MPEG-4視頻解碼器中的應用

TMS320C6201在MPEG-4視頻解碼器中的應用

——
作者: 時(shí)間:2008-01-10 來(lái)源: 收藏

  引言

  隨著(zhù)網(wǎng)絡(luò )和多媒體技術(shù)的發(fā)展,視覺(jué)通信的重要性和需求急劇增加,如桌面視頻會(huì )議、移動(dòng)終端、基于因特網(wǎng)的視音頻通信等。隨之而來(lái)的是視頻壓縮技術(shù)的迅速發(fā)展和視頻壓縮標準的不斷推出。國際運動(dòng)圖像編碼專(zhuān)家組(MPEG)先后推出了MPEG-1、MPEG-2和.是由國際運動(dòng)圖像專(zhuān)家組于1998年11月制定的。它是一個(gè)面向多媒體應用的壓縮標準,其應用覆蓋范圍遠大于MPEG-1和MPEG-2等標準。從移動(dòng)可視電話(huà)到專(zhuān)業(yè)視頻編輯,既支持自然圖像,也支持計算機合成圖像。最重要的是它支持交互功能。這是由于采用了與其它標準不同的、基于對象的圖像描述方式。目前,國內有關(guān)MPEG-4應用技術(shù)的研究及開(kāi)發(fā)的工作正在悄然興起。筆者在研究了MPEG-4視頻標準之后,充分利用的硬件資源和軟件優(yōu)化,實(shí)時(shí)實(shí)現了嵌入式MPEG-4。

  

MPEG-4的一個(gè)VOP的解碼過(guò)程圖

  1 MPEG-4視頻碼流及主要算法

  MPEG-4采用了基于對象的壓縮編碼技術(shù)。在編碼前,首先要對視頻序列進(jìn)行分析,從原理圖像中分割出各個(gè)視頻對象,然后南分別對每個(gè)視頻對象單獨編碼。每個(gè)對象都有自己的形狀信息(shape)、運動(dòng)信息(motion)、紋理信息(texture)。對視頻對象的編碼就是對這3種信息進(jìn)行編碼。MPEG-4通過(guò)運動(dòng)預測和運行補償來(lái)去除連續幀之間的時(shí)間冗余。運動(dòng)預測與運動(dòng)補償的精度可以為整像素、半像素或1/4像素,另外還增了重疊運動(dòng)補償方式。與形狀相關(guān)算法有:基于鄰近信息的算術(shù)編碼、水平和垂直填補、擴張填補等。與紋理編碼相關(guān)的算法有:離散余弦變換(DCT)、量化、DCT系數的DC/AC差分預測、Zig-Zag掃描、游程編碼、霍夫曼變長(cháng)編碼等。

  筆者實(shí)現的是MPEG-4的SVP(Simple Visual Profile)視頻解碼。視頻序列全部為矩形,所以不存在任意形狀編碼。視頻序列按照視頻對象層VOL(Video Object Layer)、視頻對象平臺VOP(Video Object Plane)、宏塊MB(Macro Block)視順序編成一串碼流。1個(gè)VOL中包含多個(gè)VOP,1個(gè)VOP中包含多個(gè)MB。MB是碼流中的基本單位。MB又分為幀內MB(intraMB)、幀間MB(imterMB)。幀間4VMB(inter4VMB)等幾種。在I-VOP中,所有的宏塊都是intraMB。P-VOP中宏塊有多種可能,可以是intraMB、interMB或inter4VMB。P-VOP中的interMB或inter4VMB的碼流描述如下:

  MB碼流=MB形狀+MB頭信息+MV+DCT紋理信息(Y1+Y2+Y3+Y4+U+V)由于是矩形幀,所以無(wú)形狀編碼MB shape部分。

  MB頭信息中主要包括4個(gè)參數:not_coded(本MB是否編碼的標志位)、mcbpc(色度塊U和V是否編碼的標志位)、cbpy(亮度塊Y1~Y4是否編碼的標志位)、dquant(本MB中DCT系數量化步長(cháng)的增量值)。

  MV為運動(dòng)矢量,實(shí)際寫(xiě)入碼流的是運動(dòng)矢量誤差值(ΔMV),這是因為編碼中MV采用差分編碼。如果MB是一個(gè)interMB,則表示本MB只有1個(gè)運動(dòng)矢量,所以在碼流中只傳1個(gè)ΔMV;如果MB是一個(gè)inter4VMB,則表示本MB有4個(gè)運行矢量,即每個(gè)子塊(block)有1個(gè)運動(dòng)矢量,所以在碼流中需傳送4個(gè)ΔMV,即mvd1、mvd2、mvd3和mvd4。

  最后是一連串經(jīng)過(guò)量化、Zig-Zag掃描、游程編碼和霍夫曼變長(cháng)編碼的DCT系數,按照Y1、Y2、Y3、Y4、U和V的先后順序編碼。

{{分頁(yè)}}

  2 DSP及EVM板介紹

  2.1 DSP

  TMS320C6201是美國TI公司的C6000系列新一代數字信號處理器中的第1個(gè)產(chǎn)品,于1997年3月發(fā)布。它是一個(gè)32bit的定點(diǎn)DSP芯片。該芯片具有8個(gè)相互獨立的功能單元,可以工作在200MHz的CPU時(shí)鐘頻率,全速運行時(shí)可達到1600 MIPS。其主要特性包括:

  芯片內核采用VelociTI TM先進(jìn)的超長(cháng)指令字(VLIW)結構,具有高度的并行性和快速的運行能力,每個(gè)時(shí)鐘周期最多可同時(shí)執行8條32位指令,并且所有的指令都可以有條件執行;

  具有豐富的指令系統且可對字節操作,支持16位的乘法運算;

  有4個(gè)彼此獨立的快速的DMA通道,可以進(jìn)行多種形式的數據傳輸。

  片內數據存儲區和程序存儲區各64KB,并支持多種數據寬度8位/16位/32位;32位的外部存儲器接口,提供與片外SDRAM、SDSRAM和SRAM的直接接口。

  TMS320C6201的以上特點(diǎn),能滿(mǎn)足視頻圖像處理的實(shí)時(shí)性要求。例如:TMS320C6201 DSP計算1塊8



評論


相關(guān)推薦

技術(shù)專(zhuān)區

關(guān)閉
国产精品自在自线亚洲|国产精品无圣光一区二区|国产日产欧洲无码视频|久久久一本精品99久久K精品66|欧美人与动牲交片免费播放
<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>