H.264標準以其高視頻壓縮比、高圖像質(zhì)量、良好的網(wǎng)絡(luò)適應(yīng)性得到了市場的廣泛認可。其應(yīng)用目標范圍較寬,可以滿足不同速率、不同解析度以及不同傳輸、存儲場合的需求。但算法的復(fù)雜度高,必須有強勁有力的硬件作支持。
2 H.264便攜式實時編解碼器方案比較
目前DSP是實現(xiàn)H.264視頻編解碼的主流。DSP芯片采用多總線多功能單元的哈佛結(jié)構(gòu),加上帶有強烈針對性的指令集設(shè)計,實際的處理能力非常高。但是由于H.264算法的復(fù)雜性,需要更快的DSP,這樣將會導(dǎo)致價格提高和功耗增大。對于H.264便攜式實時編解碼器來說,DSP架構(gòu)往往不能同時滿足編解碼速度和功耗這兩方面的要求。另外,對于H.264編解碼軟件,雖然有開源的編解碼器可以參考,但代碼的修改、移植過程仍然相當復(fù)雜。
因此,可以考慮使用專用的硬件來實現(xiàn)H.264便攜式實時編解碼器。目前市場上主要有兩種形式:一種采用IP(Intellectual Property)核,一種采用ASIC芯片。
2.1 基于IP核的編解碼器
目前,基于IP核的編解碼器是比較常見的,能提供H.264編解碼IP核的廠家主要有4i2i,IndigoVision,Sarnoff,Chips&Media,Ocean Logic,Innovative Semi-conductors,eInfoChips,CAST,Barco-Silex,Ateme,創(chuàng)意電子以及國內(nèi)的中芯聯(lián)合等。4i2i和Chips&Media等都能提供全系列的H.264編解碼核。表1列舉了4家IP核的H.264 編解碼器。
但由于功耗、體積和成本的限制,基于IP的方案無法廣泛應(yīng)用到消費電子領(lǐng)域中,一般直接被IC廠商封裝在SoC中,以ASIC方式提供給用戶。例如,可編程邏輯供應(yīng)商Xilinx與英國IP核供應(yīng)商4i2i就共同發(fā)布了一塊單片式FPGA高清晰度的H.264視頻編碼器。另外也有一部分IP核可以支持ARM等平臺,如表1中TechnoMathematical的H.264_BP,H.264_MP等。
2.2 基于ASIC芯片的編解碼器
ASIC定制的視頻編解碼芯片成本低廉,編解碼速度快,廣泛用于各個領(lǐng)域。這種ASIC內(nèi)部除處理器外,一般還集成了豐富的外設(shè)接口,如以太網(wǎng)、USB、CF等接口,有些還集成了圖像壓縮、圖像增強、硬件加速等模塊,特別是有些芯片還集成有RISC CPU,采用ASIC+ARM的構(gòu)架,能有效地結(jié)合ASIC和ARM的長處,使芯片具有高性能編解碼功能,同時實現(xiàn)許多應(yīng)用功能的開發(fā)。
目前,能夠生產(chǎn)H.264編解碼相關(guān)芯片的IC公司有:Broadcom,Conexant,Sigma Designs,STMicroelectron-ics,Hantro,C&S Technology,NeoMagic,ATI,nVidia,Tech-no Mathematical,Qpixel,Chips&Media,富士通以及國內(nèi)的海思、富翰等。這些公司推出的產(chǎn)品大部分為解碼器,例如Broadcom公司的BCM74xx系列、Conexant的Cx2418x系列、Sigma Designs的SMP8620和SMP8630系列、富翰的FH8601等。而海思的Hi3510,Qpixel的QL20X系列以及富士通的MB86H50和MB86H51等為全功能的編解碼器芯片,下面重點介紹~下這幾款芯片。
1) 海思的Hi3510
Hi3510是一款基于ARM9及DSP雙處理器內(nèi)核,以及硬件加速引擎的高集成、可編程、支持MPEG-4和AVC/H.264等多協(xié)議的高性能通信媒體處理器,可廣泛應(yīng)用于實時視頻通信、數(shù)字圖像監(jiān)控等領(lǐng)域。視頻處理單元能夠支持MPEG-4,AVC/H.264,Baseline,H.263+,H.261,JPEG等多種協(xié)議的實時編解碼。加密、DRM和數(shù)字水印技術(shù)為數(shù)據(jù)和通信的安全提供了強有力的保障。圖形處理單元能夠提供視頻去噪、圖像增強、運動檢測等功能;支持任意比例的視頻、圖形縮放以及去隔行處理;支持OSD和2D圖形加速,為應(yīng)用圖形界面的開發(fā)提供豐富的特性。其功能框圖如圖1所示。
2) Qpixel的QL202B
QL202B是一款半雙工H.264/AVC Main Profile(Level 3)的編解碼SoC,內(nèi)部集成ARM9處理器和10/100 Mbit/s以太網(wǎng)接口,非常適用于網(wǎng)絡(luò)視頻流的應(yīng)用。圖形處理單元能夠提供視頻去噪、圖像增強、運動檢測等處理功能;先進的視頻編碼處理支持CSVLC/CABAC,可配置GoP的結(jié)構(gòu),支持任意比例的視頻、圖形縮放以及全屏OSD等,為應(yīng)用圖形界面開發(fā)提供豐富的特性。其功能框圖如圖2所示。
目前支持Main Profile的ASIC還比較少,QL202B是性能較好的一款。它支持full D1@30 f/s(幀/秒),外設(shè)豐富,具有一個ARM核,能夠不加擴展地開發(fā)很多應(yīng)用。尤其是它具有NAL(Netware Abstract Layer),支持MPEG的TS和PS以及單獨的視頻或音頻ES,所以能夠很輕易取代目前許多應(yīng)用中的MPEG-2編解碼器。同時,支持Apple Quicktime也是它的一大賣點。
3) 富士通的MB86H50
MB86H50是首款支持High Profile Level 4.0的H.264編解碼器,可對高清視頻(高達1 440點×1 080行)進行實時的壓縮和解壓縮,也可對Dolby數(shù)字格式的音頻進行同步壓縮和解壓縮。其內(nèi)部集成有256 Mbit×2的FCRAM,使得尺寸更緊湊、功耗更低。富士通實驗室開發(fā)的self-turning算法可以自適應(yīng)地對感興趣區(qū)域(如人臉、緩慢移動的物體等)進行淺度壓縮而對其他區(qū)域進行深度壓縮,這就可以使圖像數(shù)據(jù)壓縮至MPEG-2的1/2~1/3。其功能框圖如圖3所示。
以上3款芯片從支持H.264的Baseline Profile到High Profile,不同應(yīng)用的適用層次也不同,例如Main Pro-file主要面向消費電子應(yīng)用(如數(shù)字電視廣播、數(shù)字視頻存儲等),需要注意選型。表2將這幾款芯片作了簡要的對比。
基于ASIC的編解碼器其靈活性存在一定的缺陷,一旦芯片開發(fā)完畢就很難繼續(xù)擴展其他應(yīng)用,新功能的添加需要芯片研發(fā)公司花費較長的開發(fā)周期。好在目前很多ASIC都集成了ARM,并且支持固件升級以增加新的功能,例如,QL202B的音頻Codec部分就可通過固件升級支持MPEG-1/2/4或其他新的音頻編碼標準,但是這樣的開發(fā)在很大程度上受制于芯片公司。
3 小結(jié)
設(shè)計H.264便攜式實時編解碼器時必須充分考慮實時性、功耗、成本、資源、開發(fā)周期等因素,進行充分的調(diào)研,才能確定最優(yōu)方案,降低系統(tǒng)的開發(fā)難度,縮短開發(fā)周期,降低開發(fā)成本。本文探討了基于硬件實現(xiàn)的方案,對幾款H.264不同層次的全功能編解碼芯片的主要特點作了介紹以及簡要對比,對開發(fā)前期方案的確定有一定的指導(dǎo)意義。