999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

達芬奇TMS320DM 6446的視頻軟件設計*

2013-05-14 11:34:10謝文濱葉水生
網絡安全與數據管理 2013年7期

謝文濱,葉水生

(南昌航空大學 信息工程學院,江西 南昌 330063)

隨著計算機多媒體技術、網絡通信技術、微電子技術、數字信號處理技術的高速發展,嵌入式數字視頻監控系統正迅速深入到學校、銀行、商場、機場、道路交通等領域的安防監控。然而,視頻數據量龐大,如此廣泛的應用,也就需要壓縮率更高的算法。H.264是目前最先進的視頻壓縮標準,具有高壓縮率的同時還具有更強的網絡適應性,它提供了網絡抽象層,使得H.264的文件更容易在不同網絡上傳輸 (例如互聯網、WCDMA、CDMA2000等)。為了應對強勁的市場需求,德州儀器(TI)公 司 推 出 達 芬 奇[1](DaVinci)技 術 的 TMS320DM6446處理器,它是一種專門針對數字視頻應用、基于信號處理的解決方案,提供了專業的集成處理器、軟件、工具和支持,以簡化設計過程,加速產品創新,深受開發者青睞。然而,它的開發卻非常復雜,使得許多開發者都未能盡可能地發揮其硬件作用。為此,本設計采用了基于達芬奇技術的TMS320DM6446處理器為開發平臺,介紹了達芬奇平臺的雙核通信機制,并以H.264進行壓縮編碼,設計實現視頻編碼軟件系統。

1 TMS320DM6446雙核通信

TMS320DM6446集成了TMS320C64x+DSP核和ARM926EJ-S核。在ARM端基于MontaVista Linux、相關驅動和應用程序來管理芯片與外設的交互,DSP作為ARM的協處理器,主要是基于DSP/BIOS(TI公司的實時操作系統內核)來處理復雜的音視頻編解碼相關的算法。高集成度帶來了開發的復雜性,ARM和DSP間通過DSPLink完成通信,同時需要編解碼引擎Codec Engine和編解碼服務器Codec Server協助完成。

1.1 Codec Engine

Codec Engine是處理器間通信的橋梁,是介于ARM側的應用程序和DSP側的算法之間的軟件模塊,可以通過調用一組API集合來調用和運行符合xDAIS標準的算法。Codec Engine包括核心引擎(Core Engine)API和VISA(Video,Image,Speech,Audio)API。 其中的 VISA API通過stub (ARM端) 來訪問核心引擎SPIs(System Programming Interface)和 skeleton(DSP 端),skeleton 訪問核心引擎 SPIs和 VISA SPIs,VISA SPIs則最終調用具體的算法。因此,Codec Engine的工作是通過完成VISA API的任務來體現的。整體結構如圖1所示。

圖1 Codec Engine結構圖

核心引擎操作如下:

打開一個編解碼引擎之后,就可以創建、控制、處理、刪除具體的算法實例。VISA接口支持4種數據源的處理,分別是視頻、圖像、語音和音頻。

VISA API應用如下:

1.2 Codec Server

Codec Server是一個二進制文件,集成了編解碼器、框架組件以及相關的系統代碼,可以使用DSP/BIOS作為內核運行在DSP端。Codec Server類似于一個網頁服務器,包括了對客戶請求(ARM端應用程序對DSP端音視頻算法的調度)進行響應的相關DSP/BIOS任務線程,能夠用于創建編解碼器,同時也提供處理器性能信息。

Codec Engine和 Codec Server間的通信就是RPC(遠過程調用)原理在雙核上的實現。ARM端當成客戶機,訪問DSP服務器的算法;而DSP端被當成服務器,響應ARM端應用程序的請求。

2 系統總體結構

系統基于達芬奇平臺數字媒體處理器TMS320DM6446進行設計,同時結合128MB DDR2 SDRAM內存、視頻解碼器 TVP5150、CCD攝像頭、10M/100M標準以太網芯片。系統框圖如圖2所示。

圖2 系統框圖

在ARM端,使用CCD攝像頭實時采集模擬視頻信號,傳入視頻解碼器TVP5150內進行A/D轉換為數字視頻信號,這部分的采集工作由視頻前端VPFE負責。為了使這些數據能被DSP處理,VPFE需要將RGB格式的原始圖像轉換為YUV格式[2]。然后使用DSPLink模塊與DSP端進行通信,并通過Codec Engine調度DSP端的H.264編碼算法,從而得到已編碼的視頻數據。基于TCP/IP協議,將編碼過的數據通過以太網接口EMAC傳輸至遠程管理軟件管理。同時為了驗證H.264編碼的正確性和編碼的質量,調用DSP端的H.264解碼算法對已編碼視頻數據進行解碼操作,最后通過ARM側的視頻后端VPBE將解碼過的視頻數據送到LCD進行顯示。VPBE能將YUV格式的圖像轉換為LCD支持的NTSC或者PAL格式。UART0接口主要用于系統調試,DDR2則是視頻流數據的交換中心。

3 軟件方案設計

本設計中,以MontaVista Linux操作系統作為軟件開發平臺,基于Linux下視頻設備驅動程序規范V4L2[3](Video for Linux Two)、幀緩沖機制(Frame Buffer)和多線程技術進行視頻應用程序的設計。多線程是一種多任務、并發的工作方式,能夠提高程序響應及CPU的使用率,并能改善程序的結構。本系統軟件設計為5個線程,分別為主線程、顯示線程、采集線程、視頻線程和控制線程。

3.1 主線程

主線程用于執行必要的初始化,解析用戶程序提供的命令行參數,并根據這些參數的值產生其他線程。初始化任務主要包括視頻標準檢測,使用了幀緩沖設備驅動程序的 ioctl(FBIO_GETSTD);用戶命令行參數解析;Codec Engine初始化;創建顯示、采集和視頻三個線程;調用控制線程的函數 ctrlThrFxn( ),從而主線程轉變為控制線程。控制線程負責用戶接口,可用于響應鍵盤接口輸入的命令;還能在OSD(On-Screen Display,達芬奇平臺的在屏顯示技術)上顯示和更新文字、圖形,使用setOsdTransparency( )函數設置 OSD窗口的透明度;同時能夠在OSD上繪制按鈕并對文字著色。具體的流程如圖3所示。

3.2 采集線程

ARM端的采集線程基于V4L2設備驅動程序來獲取實時的視頻緩沖數據,并傳給視頻線程處理。采集線程的流程如下:

(1)打開視頻采集設備

圖3 主線程流程圖

(2)初始化設備

首先,查詢設備的性能,獲取視頻采集設備的capability,辨別是否具有視頻輸入特性。

然后,選擇視頻輸入的功能。

設置視頻制式和幀格式。

(3)設定數據傳輸方式

采用內存映射模式。在這種模式下,應用程序和驅動程序之間只有指向視頻數據buffer的指針被交換,數據本身不會被復制,提高了效率。

(4)實際的采集操作

V4L2中有兩個隊列:輸入和輸出[4]。先把映射好的內存片段入隊,接著開始采集視頻數據并進入read循環,此時應用程序等待輸出隊列被填滿時可以將內存片段出隊,出隊的數據就是攝像頭采集的視頻數據。將出隊的內存片段處理完后重新入隊列尾,這樣可以循環采集。入隊和出隊操作使用V4L2中的VIDIOC_QBUF和VIDIOC_DQBUF的 ioctl( )函數調用。

同時,應用程序可以調用VIDIOC_STREAMON的ioctl( )來啟動視頻采集,VIDIOC_STREAMOFF 的 ioctl( )則用來停止視頻采集。

(5)關閉設備

3.3 視頻線程及其交互

視頻線程基于Codec Engine機制調用DSP端的視頻編碼算法對該數據進行H.264編碼,經過預測、量化、熵編碼等一系列的操作,大幅減小視頻數據的存儲容量,從而降低視頻傳輸對網絡帶寬的需求。已編碼的視頻數據可以存儲在本地硬盤或者基于TCP/IP協議發送至遠程管理軟件管理。同時為了驗證視頻編碼算法的正確性與質量,調用DSP端H.264解碼算法對已編碼數據進行解碼操作,并且送入顯示線程,使用frame buffer機制將其顯示在LCD屏幕上。詳細的交互流程如圖4所示。

圖4 視頻線程交互流程圖

3.4 實際效果

采用 PAL制式,分辨率為 720×480,幀率 25 f/s。 當目標移動速度過快時,視頻的清晰度會較大程度降低。實際視頻效果如圖5所示。

結合達芬奇TMS320DM6446中ARM和DSP處理器各自的優勢,提出了基于H.264壓縮算法的視頻編碼軟件系統的設計方案,實現視頻采集、視頻編解碼、視頻顯示和網絡傳輸等功能,在以后的工作中將加入行為分析和追蹤等功能,以使系統更加智能。本設計可應用于學校、交通、商業、銀行等多個領域,具有較好的前景。

[1]王銘銘,方千山,顏佳泉,等.圖像處理和達芬奇技術在紡紗斷線檢測中的應用 [J].微型機與應用,2012,31(17):44-45.

[2]HAN Peicen, YE Zhaohui, YANG Shiyuan.The Design and Implementation of Network Video Surveillance System Based on Davinci Chips[C].Qingdao China:Advances in Information Technology and Education,2011,201:296-302.

[3]Bill Dirks.Video for Linux Two[EB/OL].(2003-6-26)http://www.thedirks.org/v4l2.

[4]趙勇,袁譽樂,丁銳.DAVINCI技術原理與應用指南[M].南京:東南大學出版社,2008.

主站蜘蛛池模板: 91青青视频| 亚洲欧美成人影院| 免费中文字幕在在线不卡 | 成人综合在线观看| 鲁鲁鲁爽爽爽在线视频观看| YW尤物AV无码国产在线观看| 欧美色香蕉| 久久免费视频6| 色吊丝av中文字幕| 中国毛片网| 毛片在线区| 国产成人精品亚洲77美色| 一级爆乳无码av| 日韩欧美高清视频| 小蝌蚪亚洲精品国产| 亚洲精品在线影院| 国产资源免费观看| 亚洲三级a| 91精品在线视频观看| 青青青亚洲精品国产| 极品国产在线| 亚洲天堂视频网站| 欧美亚洲一区二区三区在线| 国产精品成人啪精品视频| 欧美三级视频网站| 国产欧美日韩视频怡春院| 欧美成人免费午夜全| 午夜在线不卡| 四虎AV麻豆| 人与鲁专区| 三级视频中文字幕| 国产免费网址| 国产精品自拍露脸视频| 乱人伦视频中文字幕在线| 日韩精品欧美国产在线| 99在线视频免费观看| 中文字幕在线一区二区在线| 五月天综合婷婷| 波多野结衣无码中文字幕在线观看一区二区| 尤物精品国产福利网站| 麻豆精品在线播放| 天天摸天天操免费播放小视频| 最新日韩AV网址在线观看| 国产福利小视频高清在线观看| 日韩麻豆小视频| 日韩美毛片| 欧美激情综合一区二区| 国产精品女主播| 国产精品久久久久久久久kt| 国产精品无码AV片在线观看播放| 99精品这里只有精品高清视频| 亚洲区视频在线观看| 亚洲男人天堂2018| 中文字幕在线永久在线视频2020| 国产精品久久久久鬼色| 小说区 亚洲 自拍 另类| 91小视频在线观看免费版高清| 成人日韩欧美| 情侣午夜国产在线一区无码| 日韩欧美国产精品| 午夜毛片免费看| 国产手机在线ΑⅤ片无码观看| 亚洲看片网| 2024av在线无码中文最新| 亚洲午夜片| 超清无码熟妇人妻AV在线绿巨人| 国产一在线| 毛片手机在线看| 9久久伊人精品综合| 亚洲bt欧美bt精品| 18禁黄无遮挡网站| 精品综合久久久久久97超人| 成年女人18毛片毛片免费| 在线观看网站国产| 久久人人97超碰人人澡爱香蕉| 国产精品浪潮Av| 丰满少妇αⅴ无码区| 99精品热视频这里只有精品7| 波多野结衣中文字幕一区二区| 亚洲日本中文字幕天堂网| 久久国产亚洲偷自| 97视频在线观看免费视频|