日韩床上生活一级视频|能看毛片的操逼网站|色悠悠网站在线观看视频|国产免费观看A淫色免费|国产av久久久久久久|免费A级视频美女网站黄|国产毛片av日韩小黄片|热久久免费国产视频|中文字幕无码色色|成人在线视频99久久久

機(jī)電之家資源網(wǎng)
單片機(jī)首頁(yè)|單片機(jī)基礎(chǔ)|單片機(jī)應(yīng)用|單片機(jī)開發(fā)|單片機(jī)文案|軟件資料下載|音響制作|電路圖下載 |嵌入式開發(fā)
培訓(xùn)信息
贊助商
基于TMS320C64x DSPs的MPEG-4實(shí)時(shí)編碼器設(shè)計(jì)與實(shí)現(xiàn)
基于TMS320C64x DSPs的MPEG-4實(shí)時(shí)編碼器設(shè)計(jì)與實(shí)現(xiàn)
 更新時(shí)間:2008-8-17 15:58:05  點(diǎn)擊數(shù):18
【字體: 字體顏色

       信息時(shí)代對(duì)于視頻通訊的需求越來(lái)越廣,從較低碼率的可視電話、視頻會(huì)議、實(shí)時(shí)監(jiān)控到高碼率的空中偵察、數(shù)字電視等,迫切要求將高效率、高質(zhì)量的視頻壓縮算法實(shí)用化。MPEG-4于2000年正式成為國(guó)際標(biāo)準(zhǔn)并不斷地?cái)U(kuò)展。它不僅支持碼率低于64kbps的多媒體通信,還能支持廣播級(jí)的視頻應(yīng)用。與以前的視頻標(biāo)準(zhǔn)相比,MPEG-4可以提供更高的壓縮效率、更好的交互性以及更強(qiáng)的抗誤碼能力。目前,MPEG-4已經(jīng)成為視頻壓縮標(biāo)準(zhǔn)的主流。

  MPEG-4算法非常復(fù)雜,其編解碼的實(shí)時(shí)性難以保證,通常只能實(shí)現(xiàn)對(duì)中低分辯率視頻的實(shí)時(shí)編碼。本文基于TI公司的C64x系列DSPs設(shè)計(jì)并實(shí)現(xiàn)了一種MPEG-4編碼器,實(shí)現(xiàn)了對(duì)D1分辨率(720×576)視頻的實(shí)時(shí)編碼,且在保證輸出碼率低于1Mbps的同時(shí),解碼圖像具有較高的峰值信噪比和較好的視覺(jué)效果。

      1 編碼系統(tǒng)的硬件結(jié)構(gòu)

  編碼系統(tǒng)以TMS320DM642高性能通用DSP芯片為核心。圖1為系統(tǒng)框圖。

                 

                                             圖1 編碼器系統(tǒng)框圖

       1.1 TMS320DM642芯片的特點(diǎn)

  DM642屬于TI公司的C64x系列DSPs。Veloci TI結(jié)構(gòu)使C6000 DSPs在視頻和圖像處理中得到廣泛應(yīng)用。CPU的VLIW結(jié)構(gòu)由多個(gè)并行運(yùn)行的執(zhí)行單元組成,這些單元在單個(gè)周期內(nèi)可執(zhí)行多條指令。并行是C6000獲得高性能的關(guān)鍵。C64x在C6000的基礎(chǔ)上有一些重要的改進(jìn)。除了有更高的時(shí)鐘頻率外,C64x從以前的Veloci TI結(jié)構(gòu)擴(kuò)展到Veloci TI.2結(jié)構(gòu),包含了許多新的指令,增加了額外的數(shù)據(jù)通道,寄存器的數(shù)量也增加了一倍。這些擴(kuò)展使得CPU可以在一個(gè)時(shí)鐘周期內(nèi)處理更多的數(shù)據(jù),從而獲得更高的運(yùn)算性能。

  DM642芯片集成了各種片內(nèi)外設(shè),使得開發(fā)視頻和圖像領(lǐng)域的應(yīng)用更為方便。它帶有三個(gè)可配置的視頻端口,提供與視頻輸入、視頻輸出以及碼流輸入的無(wú)縫接口。這些視頻端口支持許多格式的視頻輸入/輸出,包括BT.656、HDTV Y/C、RGB以及MPEG-2碼流的輸入。利用DM642開發(fā)視頻編碼器,其視頻輸入部分只需要一塊視頻采集芯片即可,如Phillips的SAA7113,無(wú)需外加邏輯控制電路和FIFO緩存,使硬件系統(tǒng)更為簡(jiǎn)單和穩(wěn)定。DM642的其它外設(shè)包括:10Mbps/100Mbps的以太網(wǎng)口(EMAC)、多通道音頻串口(McASP)、外部存儲(chǔ)器接口(EMIF)、主機(jī)接口(HPI)、多通道緩沖串口(McBSP)以及PCI接口等。

       1.2 系統(tǒng)工作流程

  該編碼系統(tǒng)可分為圖像壓縮卡和主機(jī)兩部分。其工作流程如圖2所示。

                       

                                           &nb

sp;  圖2 系統(tǒng)工作流程圖

  首先主機(jī)通過(guò)PCI初始化DSP并對(duì)其加載程序;DSP開始運(yùn)行MPEG-4編碼程序,從視頻端口獲取實(shí)時(shí)采集的視頻,如圖1所示。SAA7113輸出BT.656格式的數(shù)字視頻,作為DM642 VPORT的輸入,VPORT輸出YUV(4:2:0)格式的圖像,作為編碼程序的輸入;DSP完成一幀圖像的編碼,通過(guò)PCI向主機(jī)發(fā)出中斷;主機(jī)響應(yīng)中斷,從DSP的存儲(chǔ)空間讀取原始圖像數(shù)據(jù)和壓縮后的碼流。主機(jī)程序在VC++環(huán)境下編寫,提供與用戶交互的界面,可對(duì)數(shù)據(jù)進(jìn)行各種處理,包括原始視頻的實(shí)時(shí)播放、保存,壓縮碼流的實(shí)時(shí)解壓播放、保存、回放、網(wǎng)絡(luò)傳輸,從網(wǎng)絡(luò)接收壓縮碼流實(shí)時(shí)解壓回放等。

  需要注意的是原始圖像和壓縮碼流在DSP中的存儲(chǔ)。視頻端口、編碼程序和主機(jī)都要訪問(wèn)原始圖像,例如在某一時(shí)刻,編碼程序訪問(wèn)當(dāng)前幀圖像,主機(jī)讀取上一幀圖像,而視頻端口正在輸入下一幀圖像,為了避免訪問(wèn)沖突,原始圖像在DSP中采用三緩沖區(qū)進(jìn)行管理。壓縮碼流由編碼程序?qū)懭?主機(jī)讀取,所以采用乒乓制進(jìn)行存儲(chǔ)。

       1.3 內(nèi)存分配

  DM642片內(nèi)只有256KB的存儲(chǔ)空間,因此當(dāng)前幀、參考幀和當(dāng)前幀的重建幀都必須放至片外存儲(chǔ)器,壓縮碼流若被主機(jī)讀取,也放至片外。其它數(shù)據(jù)如程序代碼、全局變量、VLC碼表、各編碼模塊產(chǎn)生的中間數(shù)據(jù)等均可放至片內(nèi)。

  由于CPU訪問(wèn)片外的速度通常要比訪問(wèn)片內(nèi)慢幾十倍,片外數(shù)據(jù)的傳輸通常成為程序運(yùn)行時(shí)的瓶頸,即使代碼效率很高,流水線也會(huì)因?yàn)榈却龜?shù)據(jù)而被嚴(yán)重阻塞。解決這一問(wèn)題的有效方法是用EDMA傳送數(shù)據(jù)。程序是逐個(gè)宏塊進(jìn)行編碼的,在編碼當(dāng)前宏塊的同時(shí),EDMA將下一個(gè)宏塊的數(shù)據(jù)、用到的參考幀數(shù)據(jù)由片外傳送至片內(nèi);當(dāng)前宏塊做完運(yùn)動(dòng)補(bǔ)償后,EDMA將重建后的宏塊由片內(nèi)傳送至片外。這樣CPU只對(duì)片內(nèi)數(shù)據(jù)進(jìn)行操作,使得流水線可以順利進(jìn)行,而壓縮碼流按逐個(gè)碼字有時(shí)間間隔地寫入,可由CPU直接寫至片外。

       2 采用預(yù)測(cè)技術(shù)的運(yùn)動(dòng)估計(jì)算法

  運(yùn)動(dòng)估計(jì)是MPEG-4編碼中計(jì)算量最大的一部分,占據(jù)整個(gè)編碼時(shí)間的50%以上。各種快速運(yùn)動(dòng)估計(jì)算法也成為近年來(lái)研究的熱點(diǎn)。本文通過(guò)實(shí)驗(yàn)證明,采用預(yù)測(cè)技術(shù)的運(yùn)動(dòng)估計(jì)不但可以大大縮短計(jì)算時(shí)間,而且也有助于提高圖像的質(zhì)量。

  宏塊(Macro Block)的運(yùn)動(dòng)矢量(Motion Vector)在時(shí)間和空間都具有相關(guān)性,預(yù)測(cè)的原理就是利用當(dāng)前幀和參考幀內(nèi)相鄰位置宏塊的MV來(lái)預(yù)測(cè)當(dāng)前宏塊的MV。下面詳述本文所采用的預(yù)測(cè)算法。

  (1)確定當(dāng)前宏塊MV的7個(gè)候選值PreMV1~7。

  如圖3所示。PreMV1=(0,0);PreMV4取當(dāng)前宏塊左邊相鄰宏塊的MV值;PreMV5取上邊相鄰宏塊的MV值;PreMV6取右上方相鄰宏塊的MV值;PreMV2=mid{PreMV4, PreMV5, PreMV6},即取三者的中值;PreMV3取參考幀相同位置宏塊的MV值;PreMV7取參考幀右下方相鄰宏塊的MV值。

             

                                        圖3 預(yù)測(cè)運(yùn)動(dòng)矢量示意圖

  (2)確定篩選候選值的依據(jù)——SAD(絕對(duì)誤差和)的門限值ThreshSAD。

  SAD是確定最佳匹配塊的準(zhǔn)則。門限值ThreshSAD是指這樣一個(gè)值:如果參考幀內(nèi)某一宏塊和當(dāng)前宏塊的SAD小于ThreshSAD,則當(dāng)前宏塊的MV值就可取作二者之間的位移。因此,ThreshSAD就可作為篩選7個(gè)候選值的依據(jù)。

  由于SAD在空間上的相關(guān)性,ThreshSAD由相鄰宏塊的SAD值來(lái)確定:

  ThreshSAD=Min{SADleft,SADtop,SADtop_left}

  其中,SADleft、SADtop、SADtop-right分別為MBleft、MBtop、MBtop-right和其對(duì)應(yīng)匹配塊的SAD值,ThreshSAD取三者的最小值。

  (

  • 上一篇: 病毒防火墻解決方案
  • 下一篇: 便攜式連接:USB能否通過(guò)網(wǎng)絡(luò)工作?
  • 發(fā)表評(píng)論   告訴好友   打印此文  收藏此頁(yè)  關(guān)閉窗口  返回頂部
    熱點(diǎn)文章
     
    推薦文章
     
    相關(guān)文章
    網(wǎng)友評(píng)論:(只顯示最新5條。)
    關(guān)于我們 | 聯(lián)系我們 | 廣告合作 | 付款方式 | 使用幫助 | 機(jī)電之家 | 會(huì)員助手 | 免費(fèi)鏈接

    點(diǎn)擊這里給我發(fā)消息66821730(技術(shù)支持)點(diǎn)擊這里給我發(fā)消息66821730(廣告投放) 點(diǎn)擊這里給我發(fā)消息41031197(編輯) 點(diǎn)擊這里給我發(fā)消息58733127(審核)
    本站提供的機(jī)電設(shè)備,機(jī)電供求等信息由機(jī)電企業(yè)自行提供,該企業(yè)負(fù)責(zé)信息內(nèi)容的真實(shí)性、準(zhǔn)確性和合法性。
    機(jī)電之家對(duì)此不承擔(dān)任何保證責(zé)任,有侵犯您利益的地方請(qǐng)聯(lián)系機(jī)電之家,機(jī)電之家將及時(shí)作出處理。
    Copyright 2007 機(jī)電之家 Inc All Rights Reserved.機(jī)電之家-由機(jī)電一體化網(wǎng)更名-聲明
    電話:0571-87774297 傳真:0571-87774298
    杭州濱興科技有限公司提供技術(shù)支持

    主辦:杭州市高新區(qū)(濱江)機(jī)電一體化學(xué)會(huì)
    中國(guó)行業(yè)電子商務(wù)100強(qiáng)網(wǎng)站

    網(wǎng)站經(jīng)營(yíng)許可證:浙B2-20080178-1