資源描述:
《基于linux平臺的多路視頻采集系統(tǒng)的設計與實現(xiàn)》由會員上傳分享,免費在線閱讀,更多相關內容在教育資源-天天文庫。
1、萬方數(shù)據(jù)計算機系統(tǒng)應用2004年第12期基于Linux平臺的多路視頻采集系統(tǒng)的設計與實現(xiàn)DesignandCreatetheVideodataco¨edionsystembasedonL.nuxOS蘇艷艷(溫州職業(yè)技術學院計算機系325035)摘要:本文討論了一種以“n暇操作系統(tǒng)為開發(fā)平臺,基于USB2.O接口技術和MPEG4視頻流硬件編碼壓縮技術實現(xiàn)的遠程網(wǎng)絡視頻采集、存儲和傳榆系統(tǒng)的設計和實現(xiàn)。全面介紹了系統(tǒng)軟硬件構成,USB客戶端設備驅動設計和系統(tǒng)應用軟件設計及采用的一些關鍵技術和策略,并對該系統(tǒng)應用前景做了一些初步探討。關犍詞:USB2.OMPEG4設備驅動程序Un慨操作系統(tǒng)c/
2、S模式珥多播l前言本文所介紹的視頻采集系統(tǒng)是建立在“nux操作系統(tǒng)上充分利用了以上兩種技術,并同數(shù)據(jù)存儲和網(wǎng)絡傳輸相結合,實現(xiàn)了對視頻數(shù)據(jù)的實時采集、存儲和傳輸功能。系統(tǒng)由作為外設的視頻圖像采集卡和主機應用軟件組成,二者之間通過usB接口來實現(xiàn)壓縮后的視頻圖像數(shù)據(jù)傳輸??紤]到Imemet的飛速發(fā)展,特別是遠程視頻圖像服務在各個領域的日益廣泛應用,系統(tǒng)中將主機應用軟件設計成c/s模式中的服務器端,并采用IP多播方式來實現(xiàn)對視頻圖像數(shù)據(jù)的多點傳送。這種系統(tǒng)架構的設計定位是網(wǎng)絡視頻圖像服務器,可以用于遠程視頻圖像監(jiān)控,遠程教育等相關應用領域。片,用于接收s一、,ideo(Y/c)或CVBS模擬
3、視頻信號,同時還有一個擴展端口可用于接收MPEGl格式的數(shù)字視頻信號,芯片輸出8位或16位寬的N稿c或PAL制式視頻數(shù)據(jù)。解碼輸出通過數(shù)字多路復用器(DMux)發(fā)送給視頻圖像壓縮芯片。壓縮芯片采用InTime公司制造的IME6400芯片,這是一款多路數(shù)字視頻的MPEc4格式實時壓縮芯片,N-ISc制式下,最大可支持720×480象素,30fp8;PAL制式下,最大可支持720×576象素,25犧,傳輸圖像大小可以程序設置。uSB總線控制器采用的是Cyp矗潞Selniconductor公司制造的一款usB2.0控制芯片cY7C68013,該芯片兼容uSBl.1標準,支持全速和高速兩種傳輸模
4、式,內嵌有8051微控制器和8l(byte的內部mw,用于運行固件程序處理復雜的uSB低層協(xié)議,同時還具有一個4KB的FlFO可用于大規(guī)模數(shù)據(jù)透明傳輸。圖1視頻圖像采集卡硬件框圖圖像采集卡使用蹦lips公司制造的S從7114視頻芯成前端過網(wǎng)絡其中服應用軟控制多像進行壓縮編視頻服并按一用時間戳標記來達到分時段檢索功能,同時服務器采用口多播的方式將圖像數(shù)據(jù)實時發(fā)送給多個客戶端。服務器還將響應用戶請求完成歷史圖像分時段檢索服務,對網(wǎng)絡傳輸進行簡單的流量控制和用戶身份萬方數(shù)據(jù)2004年第12期計算機系統(tǒng)應用驗證以及權限管理等功能。客戶端則完成圖像數(shù)據(jù)接收、解碼和播放等人機交互功能,因此要求具有友
5、好的用戶界面,可以在多種系統(tǒng)平臺上進行開發(fā),本文則主要是討論服務器端軟件開發(fā)過程。視頻1蠕視頻2剮IDE磁盤黥僦弗視頻4網(wǎng)絡圖2系統(tǒng)結構圖館{堀;臺式機卜凰:臺式機3基于Knux平臺的UsB驅動程序設計3.1USB主機軟件系統(tǒng)結構“nux系統(tǒng)中設備驅動可以分為字符設備和塊設備兩類,字符設備是面向字符的L/O操作,只能順序存取,而塊設備則是面對數(shù)據(jù)塊的L/O操作,所有的操作都是通過內核地址空間的I/0緩沖區(qū)來完成的,支持隨機存取操作。系統(tǒng)加載設備驅動的方式有兩種:模塊加載和初始化加載,前者是通過R(從用戶使用i璐mod命令動態(tài)加載進內核中,通過m卜mod命令卸載不需要的模塊設備。uSB設備
6、是通過快速串行通信的方式來讀取設備的,是作為字符設備來處理的。uSB主機軟件是由主機控制器驅動程序{HC)、uSB驅動程序(usBD)和客戶端驅動程序(ClientD挑r)3個模塊組成,其中USBD是整個uSB主機軟件的核心,負責管理所有的Hc、設備驅動程序和所有連接在uSB總線上的設備。在unIl】【系統(tǒng)中uSB子系統(tǒng)的體系結構采用了不對等、分層的方法,整個系統(tǒng)被分為USB接口層、uSB設備層和功能接口層,其中uSBD和HcD被稱作USB系統(tǒng)軟件,它提供了支持客戶端驅動程序開發(fā)的API(應用編程接口),usB客戶端驅動程序不同于傳統(tǒng)意義上的設備驅動程序在于不是通過I/0操作訪問設備的,
7、而是通過usB系統(tǒng)軟件提供的標準接口與設備交互的,它和設備之間通信的基礎是一組由管道組成的通道,客戶端驅動程序利用usBD提供的功能創(chuàng)建所需的管道,并為它們提供數(shù)據(jù)傳輸?shù)木彌_空間,使用UsBD的功能進行數(shù)據(jù)傳輸。這種方式省去了客戶端單獨提供傳輸方式的繁雜,極大的簡化了客戶端驅動程序的設計。本系統(tǒng)中的uSB驅動程序嚴格的講是使用usB系統(tǒng)軟件定義的數(shù)據(jù)結構,宏和函數(shù)接口來編寫的圖像采集卡客戶端驅動程序。KrnⅨ系統(tǒng)中USB子系統(tǒng)軟件結