《電子技術應用》
您所在的位置:首頁 > 嵌入式技術 > 設計應用 > 基于DM365的雙碼流視頻監控設備的設計與實現
基于DM365的雙碼流視頻監控設備的設計與實現
2015年微型機與應用第10期
潘力策1,孟利民2
(1.浙江工業大學 信息工程學院,浙江 杭州 310023; 2.浙江省通信網技術應用研究重點實驗室,浙江 杭州 310023)
摘要: 針對視頻監控終端設備中的視頻實時顯示、編碼數據本地存儲備份等雙重需求,設計了一種基于DM365視頻處理芯片、H.264壓縮技術、嵌入式Linux操作系統的雙碼流視頻監控終端設備。給出了系統的總體軟硬件結構,重點闡述了視頻處理子系統模塊(包括視頻前端采集模塊和視頻后端顯示模塊)以及視頻編碼模塊。測試結果表明,系統實時監測性能良好,本地存儲的編碼數據清晰穩定,具有很強的實用性和廣闊的發展前景。
關鍵詞: 視頻監控 DM365 ARM 芯片
Abstract:
Key words :

  摘  要: 針對視頻監控終端設備中的視頻實時顯示、編碼數據本地存儲備份等雙重需求,設計了一種基于DM365視頻處理芯片、H.264壓縮技術、嵌入式Linux操作系統的雙碼流視頻監控終端設備。給出了系統的總體軟硬件結構,重點闡述了視頻處理子系統模塊(包括視頻前端采集模塊和視頻后端顯示模塊)以及視頻編碼模塊。測試結果表明,系統實時監測性能良好,本地存儲的編碼數據清晰穩定,具有很強的實用性和廣闊的發展前景。

  關鍵詞: 視頻監控;DM365;ARM

0 引言

  隨著網絡技術、視頻編解碼技術、信息處理技術在安防領域中的應用日趨成熟,視頻監控系統的發展也從最初的模擬視頻監控系統發展到了如今的網絡數字視頻監控系統[1]。以往視頻圖像處理算法主要由DSP處理,但是隨著算法復雜度的增加及視頻分辨率的提高,傳統DSP逐漸無法勝任這方面的工作[2]。為此,需要新的處理器架構來提高視頻算法的并行性與帶寬。當前TI公司已經推出相關的異構處理器與多核DSP;英偉達公司推出了最新的SoC芯片Tegra4,其內含4個Cortex.A15和72個GeForceGPU[3-4]。最新的SoC制程也已經達到28 nm,幾乎取得了相當于PC的頻率帶寬。由于視頻的數據量大,占用帶寬多,這不僅對網絡是個不小的負擔,對圖像本地存儲備份的能力也有很大的影響,所以就需要采取一種高效的壓縮算法對視頻進行編碼,以降低其所占用的網絡帶寬和存儲空間[5]。近年來,H.264、MJPGE等算法的研究使得網絡較實時傳輸和本地存儲備份成為了可能。最新的H.265壓縮算法的出現大大提高了視頻傳輸效率,但這需要相應的處理器能力的提高[6]。

  本文所設計的多路數據流視頻監控終端設備基于TI公司的TMS320DM365芯片,支持雙路不同分辨率大小的數據流,分別實現兩種不同的功能,第一路數據流實現D1(720×576)分辨率大小H.264編碼數據的本地存儲備份,第二路數據流實現QVGA(320×240)分辨率大小原始數據的實時顯示。

1 系統總體設計框架

  本文采用視頻采集芯片+多核芯片(ARM核+DSP核或編解碼協處理器組成)的方案來設計視頻監控終端設備,這種方案將視頻采集芯片獲得的數據接入到多核芯片中,再交由DSP核或編解碼協處理器完成視頻數據的編碼,最終通過ARM核對系統進行控制,完成數據流的正確傳遞和其他必要操作。這種方案成本較低,性價比較高。

  硬件框架方面,選用了TI公司的基于DaVinci技術的TMS320DM365芯片作為處理器芯片,以及同為TI公司出品的TVP5151芯片作為視頻前端采集芯片來搭建嵌入式視頻監控設備。

  系統硬件框架設計圖如圖1所示。

001.jpg

  軟件框架方面,采用多線程配合工作的方案進行設計,多線程編程相較于多進程編程,它不僅在資源利用率方面有較大的優勢,同時也大大降低了程序員編程的難度,加快了項目軟件的開發。

2 視頻處理子系統模塊

  TMS320DM365芯片上提供了一個視頻處理子系統(VPSS),用于視頻數據的實時采集、播放等功能。VPSS內部集成了一個視頻處理前端模塊(VPFE)和一個視頻處理后端模塊(VPBE),VPFE用來控制接入的外部圖像采集設備,如圖像傳感器、視頻解碼器等,本系統接入了TVP5151視頻解碼器。VPBE則用來控制接入的顯示設備,如標清的模擬電視顯示器、數字的LCD液晶顯示屏等,本系統接入了RGB565LCD液晶顯示屏。此外,VPSS還集成了內存緩存區和DMA(直接內存訪問)控制器,用來保證有效地利用DDR2或mDDR,控制突發帶寬。

  2.1 驅動配置

  2.1.1 VPFE采集驅動的配置

  VPFE采集驅動通過標準的V4L2接口將底層硬件的功能暴露給了上層應用程序,這樣,應用程序就能通過控制V4L2設備(/dev/Video0)來獲取由連接到VPFE的視頻解碼器(如TVP5151)采集到的一幀原始數據。VPFE硬件模塊支持以下兩種不同的數據管道[7],如圖2所示。

002.jpg

  (1)輸入接口通過IPIPE接入到SDRAM,所有型號的SoC都支持這個通道。

  (2)輸入接口通過IPIPE接入到Previewer,并最終從Resizer輸出兩種不同分辨率大小的視頻數據到SDRAM,從RSZ-A輸出的是原始分辨率大小的圖像,用于后續的數據編碼,從RSZ-B輸出的是分辨率較小的圖像,用于后續的實時顯示。

  為了實現前文所述的視頻實時顯示功能,通過VPFE驅動將VPFE硬件模塊配置成第二種數據流通道的采集方式。

  2.1.2 VPBE顯示驅動的配置

  VPBE顯示驅動由更底層的V4L2(Video for Linux 2)驅動和FB(Frame Buffer)驅動構成,當內核加載V4L2驅動時,它會向內核注冊/dev/Video2和/dev/Video3兩個設備,而當內核加載FB驅動時,它會向內核注冊/dev/fb/0、/dev/fb/1、/dev/fb/2、/dev/fb/3 4個設備,注冊的設備都對應了它們所能控制的圖層[8],對應關系如表1所示。

007.jpg

  可以通過設置系統啟動參數來決定VPBE驅動被加載時會向內核注冊的設備,以此決定開啟的圖層以及圖層開啟后受何種設備控制[9],例如,注冊/dev/fb/3設備,VID1圖層將被開啟且只受/dev/fb/3設備控制。在實際方案中,啟動參數指定VPBE向內核注冊/dev/Video2設備和/dev/fb/0設備,分別開啟了VID0圖層和OSD0圖層,其中VID0圖層受/dev/Video2設備控制,用于顯示采集到的視頻數據,而OSD0圖層受/dev/fb/0設備控制,用于顯示QT等UI交互界面,其余圖層默認保持關閉狀態。

  VID0圖層的數據和VID1圖層的數據會依次經過VPBE硬件模塊中的OSD部件和ENC部件,最終由DAC模塊輸出模擬信號或者由LCD控制器輸出數字信號[10],數據管道如圖3所示。

003.jpg

  在前文中已提到,LCD液晶屏被接入到了VPBE模塊,所以VPBE驅動將VPBE硬件模塊配置成視頻數據由VID0圖層輸入,并最終通過LCD控制器輸出到LCD液晶屏上。

  2.2 應用程序設計

  在VPFE驅動將VPFE硬件模塊配置為雙分辨率數據流的前提下,將應用層程序設計為一路數據流用于視頻實時顯示,另外一路數據流用于視頻編碼,Capture線程數據流程圖如圖4所示。

004.jpg

  (1)第一路數據流

  hCapture-->hCapBuf-->hDstBuf(D1:720x576)-->hOutFifo,用于視頻編碼存儲。

  (2)第二路數據流

  hCapture-->hCapBuf-->hRzbBuf-->hDisBuf(QVGA:320x240)-->hDisplay,用于視頻實時顯示。

  hCapBuf緩存用于存放VPFE采集驅動采集到的原始視頻數據,存放著736×576大小的數據,hDstBuf緩存中的數據用于供后續視頻編碼存儲,存放著D1:720×576大小的數據,hDisBuf緩存中的數據用于供后續視頻顯示回放,存放著QVGA:320×240大小的數據,hRzbBuf緩存中的數據用于供后續視頻編碼上傳。

3 視頻編碼模塊

  原始視頻數據的編解碼需要用到達芬奇軟件框架的Codec Engine(編解碼引擎)技術來實現。Codec Engine定義了一組VISA(Video Image Speech Audio)APIs接口供應用程序調用。DM365的高清視頻協處理器(HDVICP)封裝了相應的編解碼算法,ARM處理器中的應用程序可以通過VISA-APIs接口對編解碼算法進行調用。ARM處理器負責執行應用程序,視頻協處理器負責執行編解碼算法,這樣不僅大大降低了ARM處理器的CPU占用率,還能提高編解碼的效率。本文采用H.264編碼標準進行編碼,需要調用相應的H.264算法實例。

  3.1視頻編碼接口

  H.264是一種高性能的視頻編解碼標準,繼承了H.263和MPEG1/2/4視頻編碼器的優點。H.264標準中定義了兩個層次:視頻編碼層(VCL)和網絡抽象層(NAL),VCL負責高效的數字視頻數據壓縮,NAL提供適當的接口對數據進行打包和傳送。

  為了得到H.264格式的視頻流,需要配置alg_server.cfg文件來實現對已經編譯算法的調用,文件配置如下:

  var H264ENC=xdc.useModule(′ti.sdo.codecs.h264enc.ce.H264ENC′);//指定調用的算法

  var myEngine=Engine.create("alg_server",[{name:"h264enc",mod:H264ENC,local:true,groupId:1}]);

  //創建引擎實例

  在應用程序中能調用的接口函數有:VIDENC1_create、VIDENC1_control、VIDENC1_process和VIDENC1_delete,它們分別負責編碼實例的創建、控制、運行以及最終的清除。

  3.2 應用程序設計

  所設計的Video線程基于Capture線程,Capture線程向Video線程輸入一路D1:720×576大小的數據流,Video線程如圖5所示。

005.jpg

4 測試結果

  測試環境搭建方法如下:

  (1)LCD液晶屏連接在以TMS320DM365為主芯片的產品板上,TMS320DM365主芯片的CPU頻率為216 MHz,板載Flash為1 GB,板載DDR2為128 MB。

  (2)本地備份的視頻數據文件存儲在SD卡中,文件格式為H.264,文件大小為6.2 MB,總時長為1 min,使用VLC播放器播放。

  經測試,視頻監控終端設備能實時地顯示攝像頭采集到的視頻畫面,顯示畫面大小為QVGA(320×240),如圖7(a)所示。SD卡里存儲備份的視頻數據也成功紀錄了一段時間內的視頻畫面,分辨率大小為D1(720×       576),如圖7(b)所示。

006.jpg

5 結論

  本文設計實現了基于TMS320DM365硬件平臺的視頻監控終端設備,該視頻監控終端設備不僅具有數據采集功能,而且還集成了本地存儲備份以及原始數據實時顯示等核心功能。采用TMS320DM365的ARM+DSP雙核模式,提高了編碼效率以及傳輸效率,通過測試發現,實時圖像清晰流暢,ARM資源占有率低,可擴展性大,滿足系統實時性和穩定性的要求。

  參考文獻

  [1] 張偉.視頻監控技術的發展歷程和方向[J].中國交通信息產業,2007(6):139-142.

  [2] 鄭磊.基于嵌入式Linux的網絡視頻監控系統研究[D].武漢:武漢理工大學,2011.

  [3] 劉繼超.基于DM355的嵌入式網絡視頻監控系統設計[D].青島:青島科技大學,2012.

  [4] 望重.嵌入式網絡視頻監控系統的研究與實現[D].鎮江:江蘇大學,2010.

  [5] 胡攀.基于Linux的網絡視頻監控系統設計[D].武漢:武漢理工大學,2012.

  [6] 項昌晨,王磊.基于TMS320DM365的網絡視頻監控系統設計[J].機電一體化,2011,17(12):58-63.

  [7] Texas Instruments. Davinci Linux VPFE Capture Driver[EB/OL].[2014-12-15].http://www.ti.com/lit/an/sprs566a/sprs566a.pdf.

  [8] Texas Instruments, Video Processing Back End(VPBE)[EB/OL].[2014-12-15].http://www.ti.com.cn/cn/lit/ug/sprufg9c/sprufg9c.pdf.

  [9] Texas Instruments, LSP 2.10 DaVinci Linux VPBE Frame Buffer Driver[EB/OL]. [2014-12-15]. http://www.ti.com/lit/ug/spruek9/spruek9.pdf.

  [10] Texas Instruments, LSP 2.10 DaVinci Linux V4L2 Display Driver[EB/OL]. [2014-12-15]. http://www.ti.com/lit/ug/spruel3/spruel3.pdf.


此內容為AET網站原創,未經授權禁止轉載。
主站蜘蛛池模板: 2021精品国产品免费观看 | 男女上下爽无遮挡午夜免费视频 | 一级特黄aaa大片免费看 | 亚洲成人午夜影院 | 国产精品欧美亚洲 | 美女又爽又黄视频 | 草草影院在线播放 | 色综合日韩 | 免费大片黄手机在线观看 | 亚欧美图片自偷自拍另类 | 波多野结衣3女同在线观看 波多野结衣aⅴ在线 | 国产色手机在线观看播放 | 成人亚洲视频在线观看 | 日韩国产片 | 午夜免费福利网站 | 亚洲精品国产精品国自产观看 | 黄色w站| 一个人看的www片免费视频中文 | 在线播放高清国语自产拍免费 | 久草欧美视频 | 久热精品男人的天堂在线视频 | 91精品国产91热久久久久福利 | 草久在线观看 | 久久国产精品岛国搬运工 | 成在线人免费视频 | 国内高清自拍 | 亚洲高清国产拍精品影院 | 国产一级大片在线观看 | 九九热精| 一区二区三区四区在线免费观看 | 亚洲国产精品成人久久 | 91.久久 | 牛人盗摄一区二区三区视频 | 国产欧美日韩精品第一区 | 透逼视频 | 加勒比色综合 | 欧美毛片一级的免费的 | 成人小视频在线观看免费 | 男女朋友做爽爽爽免费视频网 | 国产大乳喷奶水在线看 | 影院成人区精品一区二区婷婷丽春院影视 |