仇杰+耿建平



摘 要: 針對某機型原有磁帶式記錄體質亟需改進,結合現階段最新音/視頻壓縮標準設計了機載視頻記錄儀音視/頻壓縮存儲模塊。闡述了最新視/頻編解碼協議H.264標準,基于該標準采用了專用芯片MG3500設計視頻壓縮模塊。介紹了模塊的音/視頻壓縮部分硬件電路和存儲模塊的容量設計準則,最后對該模塊的應用前景做了簡要概述。
關鍵詞: H.264; 嵌入式系統; 音視頻壓縮; 容量設計
中圖分類號: TN948?34 文獻標識碼: A 文章編號: 1004?373X(2015)14?0092?04
嵌入式系統是以應用為中心,以計算機技術為基礎,且軟硬件可裁剪,適用于應用系統對功能、可靠性、成本、體積、功耗有嚴格要求的專用計算機系統。以嵌入式技術為核心的視頻壓縮模塊能夠對前端攝像組件采集來的視頻分量進行模/數轉換,經壓縮編碼后存儲到后端大容量電子硬盤中去,克服了以磁帶為存儲介質帶來的一系列保障難題。機載視頻記錄儀對實時音視頻信號的采集、壓縮和存儲有著較高的環境適應性要求,同時考慮到研制工作后定型周期長、更新時間久等因素,方案采用當下最新視頻編/解碼標準H.264,該標準是由IEO/IEC和ITU/T兩大國際標準化組織聯手制定的最新視頻編/解碼協議,有著較高的壓縮比和清晰的視頻回放效果,能夠達到理想的試驗效果。本文設計了機載視頻記錄儀的高清音視頻壓縮存儲模塊,能夠應用于其他高清視頻的處理場合。
1 H.264視頻編/解碼標準
在視頻編碼壓縮和傳輸前,需要把視頻圖像的格式轉換成CIF格式,如果該CIF格式對應著352×288像素,4CIF對應著704×576像素。如果在沒有壓縮的前提下,一幀圖像需要的比特數是:
4∶2∶0格式:352×288×12=1.2 Mb
4∶4∶4格式:352×288×24=2.4 Mb
由于未經壓縮處理的原始視頻數據量非常龐大,原始的彩色圖像,一般由紅、綠、藍(R、G、B)三基色組成。常用的彩色圖像表示方式有Y、I、Q方式和Y、U、V方式,其共同點就是用其中的1個分量Y表示像素的亮度,用其余2個分量表示像素的色度。
YUV與RGB相互轉換的公式(RGB取值范圍均為0~255):
[YUV=0.2290.5870.114-0.229-0.5870.8860.701-0.587-0.114RGB] (1)
YIQ與RGB相互轉換的公式[1](RGB取值范圍均為0~255):
[YIQ=0.2290.5870.1140.596-0.274-0.3220.211-0.5240.312RGB] (2)
由于人眼對像素點的亮度分辨率較強,對像素的色度分辨率較弱。在編碼時,可對亮度分量和色度分量分別對待,已達到更高的壓縮比。這就需要適用于視頻處理的編/解碼標準,目前國際上有2個制定視頻編/解碼標準的組織,一個是制定了H.261,H.263,H.263+標準的“國際電聯(ITU?T)”;另一個是制定了MPEG?1,MPEG?2,MPEG?4標準的“國際標準化組織(ISO)”。H.264是一種新數字視頻編碼的準則,制定組織是JVT——聯合視頻組,聯合視頻組則是由2個部門一起組成的,所以它不僅是ITU?T的H.264,而且還是ISO/IEC的MPEG?4高級視頻編碼(Advanced Video Coding,AVC)[2]。
機載視頻記錄儀所采集的視頻源來自飛機前方的平視顯示器、遠景攝像頭以及座艙內4路多功能顯示器。這些視頻源都具有一個共性,即視頻畫面瞬間變量都很小,因此采用高壓縮比的編/解碼算法對飛行幾次后的視頻回放不會造成視覺分辨率的明顯下降。
H.264算法相比較于其他編碼標準,具有較高的壓縮比,在同等圖像質量的前提下,H.264的壓縮比為MPEG?2的2倍以上,是MPEG?4壓縮比的1.5~2倍。也就是說在同等條件下100 GB的文件經過MPEG?2編碼標準進行壓縮后大約為4 GB,即壓縮了25倍,而采用H.264編碼標準進行壓縮大小變為999 MB,約102倍。由于H.264碼率較低使之能具備較高的壓縮比,和其他編碼標準相比較,它能使得下載的時間更短,在具有高壓縮比的同時還能擁有高質量流暢的圖像。
基于該H.264視頻編/解碼標準方案采用了該標準的專用處理芯片MG3500,該芯片能夠對外圍電路送來的音視頻模擬信號按照設定的算法進行編碼,完成高質量的數據壓縮,達到設計任務所標定的要求。該標準要求在設計視頻壓縮模塊時能夠結合壓縮任務分時將6路視頻信號進行模/數轉換,這種分時復用技術能夠實現同步記錄,不會發生明顯的丟幀現象。
2 模塊方案設計
方案中模塊主要分為音視頻的壓縮模塊和存儲記錄模塊,原理框圖如圖1所示,由前端攝像組件傳來的視頻信號和音頻信號在經過壓縮處理模塊進行壓縮、轉換和音視頻的同步后,經由USB接口將壓縮后的數據流寫進后端的記錄存儲模塊。
圖1 方案原理框圖
2.1 音視頻壓縮模塊
壓縮模塊的核心部分采用Mobilygen公司推出的H.264高清編解碼器片上系統MG3500 SoC,該芯片內部集成了ARM9處理器、NAND/NOR閃存、SD/SDIO/MMC/CE?ATA接口、10M/100M/1 000M以太網的MAC和USB 2.0 OTG端口,以及基于可靠的互聯網的AES/SHA加密算法、UART、JTAG、串行控制和通用I/O[3]。240 MHz ARM9處理器包含DSP擴展和各16 KB的指令高速緩存、數據緩存和暫存存儲器。圖2為MG3500內部原理框圖。
圖2 MG3500內部原理框圖
在壓縮記錄模塊工作過程中,首先完成送入模塊信號的濾波處理,然后對差分視頻信號進行格式轉換和聲音信號的幅度變換。該模塊能夠支持視頻信號有標清模擬視頻、高清模擬視頻和數字視頻,對輸入的模擬視頻經過A/D轉換為數字信號后送入MG3500完成基于H.264算法的編碼,前端送來的音頻信號在經過模/數轉換后接入編/解碼芯片對應的AUD0數據位。
MG3500的視頻輸入處理器(VIP)能夠對送來的BT656視頻格式進行高品質的縮放、色度和伽馬調整、濾波及視頻分析的操作,但是前端攝像組件傳來的是模擬視頻信號,必須經過模/數轉換后才能被后端的MG3500進行編碼處理。這里采用的模/數轉換芯片為ADV7180,圖3為前端視頻信號的接口電路。
前端攝像組件送來的音頻信號同樣需要經過處理后才能送往專用芯片進行處理,本模塊采用TI公司的音頻編/解碼器TLV320AIC23BIPWR,設計時采用2個聲道分別為左聲道和右聲道,TLV320通過主時鐘MCLK、音頻位時鐘BCLK、音頻字時鐘WCLK以及DIN,DOUT,SDA,SCL等與MG3500相連接,輸出時送入到MG3500端的音頻信號組AUD0,圖4所示為前端音頻信號的接口電路。
圖3 前端視頻信號的接口電路
圖4 前端音頻信號的轉換電路
前端攝像組件的音視頻信號經過模/數轉換成專用芯片能識別的數字電平信號后,分別送入MG3500對應的接口進行壓縮處理、轉換和音視頻的同步,然后將處理完的數據傳入存儲記錄組件。圖5為轉換后的音視頻信號與MG3500的連接電路。
圖5 音視頻信號輸入電路
2.2 存儲記錄模塊設計
存儲記錄模塊采用USB接口與專用芯片擴展對應的母頭接口相連,在軟件體系構架中需要編寫驅動程序完成與外界存儲模塊的連接和存儲。本模塊使用的存儲介質為SATA硬盤,程序設計方面主要有USB驅動程序和視頻文件生成驅動程序的設計。
現就存儲記錄模塊的容量設計給出介紹。對PAL制視頻信號(-3 dB信號帶寬:6 MHz),原始數據分辨率為704×576,因而其采樣頻率為13.5 MHz。設量化方式為8 b線性量化,且每像素為R、G、B三基色,則不考慮色度空間子采樣時,在25 f/s的幀率下,原始圖像數據率為:704×576×3×25=243.304 Mb/s。
H.264的標準記錄參數是25 f/s(PAL)視頻,常規輸出數據率為2 Mb/s,則壓縮比為[243.3042.0=121.652],即在視覺可接受的情況下,壓縮比為121.652。此時,每分鐘占用磁盤空間為:[2.0×608=15 MB/min],即每分鐘是15 MB的數據。
設計時假設需要240 min的連續記錄時間,則所需硬盤大小約為240×15=3.6 GB。
本系統中,單個壓縮記錄模塊為2路視頻,1路音頻,所以可按照2路2 Mb/s來考慮視頻記錄容量和記錄速度,2路的記錄容量為:3.6×2 =7.2 GB。
聲音壓縮后數據率可以選為64 Kb/s,240 min的數據容量為64× 60×[2408]=115.2 MB。這就要求單個記錄體的容量必須大于6.315 2 GB,取為8 GB。
記錄體數據傳輸平均速度可以按照2路視頻計算,它們為[2×28=0.5 KB/s]。
實際上,在壓縮記錄時數據存儲是突發式的,所以要求電子盤的峰值數據存取速度為平均值的多倍以上。考慮到一般存儲介質的數據讀寫速度為10 MB/s左右,是本系統所要求平均速率的[100.5]=20倍以上,所以存儲盤是可以使用的。
系統的操作平臺Linux裁簡后大約需40 MB空間,壓縮記錄的應用程序為8 MB左右,所以可選用一塊電子硬盤來存儲應用平臺和應用程序。
根據JVC小組盒MPEG專家小組的結論,對于常規圖像,按H.264的704×576格式壓縮,數據流在2 Mb/s時,即可得到非常好的視覺要求。考慮到對不同圖像可以采用不同的數據率,提出一個可選擇的壓縮比特率控制方法,根據不同應用,可將系統的數據率定為1~2 Mb/s,由程序控制。在上述數據率下,可推得壓縮比為:
[243.3041~243.3042=243.304~121.652]
按壓縮后的最大速率2 Mb/s計算,240 min的2路H.264圖象將需硬盤大小為:
[2×60×28×240=7.2 GB]
為設計時留有余量,本例將選用容量為8 GB的硬盤。
3 應用前景
基于該壓縮存儲模塊設計并實現了某型飛機數字視頻記錄器,如圖6所示,在完成了原理樣機的研制和調試后,現已完成了標定科目的試飛和試飛結束后的數據下載,解決了困擾飛行單位原有磁帶式體制備件無法得到保障的難題。
對于通用模塊的設計要求其具備較強的適用性和良好的軟件支持。本文設計的基于專用視頻處理芯片MG3500的壓縮記錄模塊現已應用于機載數字視頻記錄器中,同時它也能夠應用于諸如視頻監控系統、行車記錄儀或者其他涉及到視頻壓縮記錄的領域。在具體應用時硬件電路要適配應用領域的輸入/輸出要求,根據需要添加相應的接口模塊和編寫相應的驅動程序。本模塊采用的軟件系統是使用頻率較高的Linux嵌入式操作系統,它有著良好的硬件支持和內核可裁剪特性,提供全部源代碼,可以由用戶需要來定制自己的操作系統。
圖6 數字視頻記錄器及其內部電路
4 結 語
本文設計了應用于機載數字視頻記錄儀中的視頻壓縮記錄模塊,移植了嵌入式操作系統Linux,實現了音頻信號的數字化存儲和視頻信號的H.264實時編/解碼,闡述了存儲模塊的容量設計依據,在消費級和工業應用領域將得到廣泛的應用。
參考文獻
[1] 張莉.機載視頻攝錄像系統[D].成都:電子科技大學,2006.
[2] 閆光.基于H.264的實時視頻監控系統的設計與實現[D].北京:北京郵電大學,2012.
[3] Mobilygen. MG3500 HD H.264 codec SoC datasheet [M]. [S.l.]: Mobilygen, 2008.
[4] 高厚琴,楊盈昀.視頻原理與接收技術[M].北京:國防工業出版社,2002.
[5] 畢厚杰.新一代視頻壓縮編碼標準:H.264.AVC[M].北京:人民郵電出版社,2005.
[6] 王建平,季學鋒,穆道明.基于DSP的多路音/視頻采集處理系統設計[J].國外電子元器件,2006(6):250?253.
[7] 趙保軍,史彩成,畢莉,等.基于FPGA和DSP實現的實時圖像壓縮[J].電子學報,2003(9):1317?1319.
[8] 翟小艷,徐家品.基于ARM的視頻傳輸系統設計[J].通信技術,2010(8):100?102.
[9] WHITAKER Jerry.高清晰度數字視頻原理與應用[M].曹晨,楊作梅,譯.北京:電子工業出版社,2002.
[10] 王小紅,周淵平,方曉翠.嵌入式視頻監控系統的設計和實現[J].通信技術,2011,44(6):105?106.