国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

無(wú)線Mesh網(wǎng)絡(luò)視頻監(jiān)控系統(tǒng)客戶(hù)端軟件設(shè)計(jì)*

2010-09-17 07:53孟燕偉莫金旺
電視技術(shù) 2010年1期
關(guān)鍵詞:監(jiān)控點(diǎn)解碼客戶(hù)端

孟燕偉 ,趙 利 ,莫金旺

(桂林電子科技大學(xué),a.信息與通信學(xué)院;b.信息科技學(xué)院,廣西 桂林 541004)

1 無(wú)線Mesh網(wǎng)絡(luò)的特性及優(yōu)勢(shì)

無(wú)線Mesh網(wǎng)絡(luò)(WMN)是一種基于多跳路由和對(duì)等網(wǎng)絡(luò)技術(shù)的寬帶無(wú)線網(wǎng)絡(luò),具有自組網(wǎng)、自修復(fù)、自配置和多跳級(jí)聯(lián)等特性[1]。因此,視頻監(jiān)控系統(tǒng)中引入WMN技術(shù)后,將具有如下特點(diǎn):

1)施工容易,節(jié)約成本。WMN僅需少量的網(wǎng)絡(luò)布線,基本不用建設(shè)新的網(wǎng)絡(luò)基礎(chǔ)設(shè)施,結(jié)合整體規(guī)劃可最大限度降低建設(shè)成本。

2)部署快捷,擴(kuò)展靈活。WMN具有自組網(wǎng)和自管理能力,視頻監(jiān)控點(diǎn)接入監(jiān)控網(wǎng)絡(luò)后,能自動(dòng)與監(jiān)控中心建立最佳的傳輸路由,并且視頻監(jiān)控點(diǎn)可隨時(shí)插入和刪除。

3)具有鏈路故障自愈能力,傳輸可靠性高。由于采用無(wú)線網(wǎng)狀網(wǎng)(Mesh)結(jié)構(gòu)和多跳路由方式,可以利用迂回路由,避開(kāi)故障節(jié)點(diǎn),不會(huì)影響整個(gè)網(wǎng)絡(luò)的性能[1-2]。

4)具有較低的功耗以及網(wǎng)絡(luò)功耗可控能力,成本低,投資風(fēng)險(xiǎn)較小。

2 基于WMN的視頻監(jiān)控系統(tǒng)

2.1 系統(tǒng)整體方案

基于無(wú)線Mesh網(wǎng)絡(luò)的視頻監(jiān)控系統(tǒng)方案如圖1所示。在監(jiān)控現(xiàn)場(chǎng),多個(gè)具有路由轉(zhuǎn)發(fā)功能的終端節(jié)點(diǎn)互聯(lián)構(gòu)成無(wú)線Mesh網(wǎng)絡(luò)骨干網(wǎng),視頻監(jiān)控終端負(fù)責(zé)完成監(jiān)控現(xiàn)場(chǎng)視頻采集、壓縮、無(wú)線路由及收發(fā)數(shù)據(jù)等功能,并將視頻流傳輸?shù)脚c監(jiān)控中心相連的Mesh網(wǎng)關(guān);監(jiān)控中心接收來(lái)自監(jiān)控終端的視頻數(shù)據(jù)流,并進(jìn)行解壓、播放等處理,同時(shí)也可實(shí)現(xiàn)本地存儲(chǔ)。

圖1 基于無(wú)線Mesh網(wǎng)絡(luò)的視頻監(jiān)控系統(tǒng)方案

2.2 系統(tǒng)硬件方案(見(jiàn)圖2)

圖2 系統(tǒng)硬件方案結(jié)構(gòu)圖

視頻終端硬件平臺(tái)圍繞三星公司的S3C2440A-40處理器搭建,通過(guò)處理器的接口把所需外設(shè)集成到系統(tǒng)中。從功能角度來(lái)看,系統(tǒng)硬件平臺(tái)包括微處理器、存儲(chǔ)器、以太網(wǎng)接口、CCD攝像機(jī)以及電源等單元組成。S3C2440A-40處理器是一款為移動(dòng)設(shè)備和各種多用途應(yīng)用設(shè)計(jì)的,內(nèi)核為ARM920T。考慮到節(jié)約成本,系統(tǒng)采用開(kāi)源的XVID軟件對(duì)視頻數(shù)據(jù)進(jìn)行壓縮,SAA7113負(fù)責(zé)把CCD攝像機(jī)傳來(lái)的信號(hào)進(jìn)行A/D轉(zhuǎn)換,視頻壓縮程序?qū)D像數(shù)據(jù)壓縮為MPEG-4格式后,經(jīng)USB接口傳至S3C2440A-40,數(shù)據(jù)流經(jīng)USB接口輸出至RT73無(wú)線網(wǎng)卡,以IEEE 802.11b/g標(biāo)準(zhǔn)實(shí)現(xiàn)無(wú)線傳輸。在監(jiān)控中心,客戶(hù)端利用RTP/RTCP協(xié)議接收視頻數(shù)據(jù),對(duì)終端的控制則采用面向連接的TCP/IP協(xié)議發(fā)送控制命令到服務(wù)器,實(shí)現(xiàn)對(duì)終端的控制。

3 網(wǎng)絡(luò)傳輸部分

網(wǎng)絡(luò)傳輸部分由無(wú)線傳輸和有線傳輸組成。無(wú)線傳輸為Mesh網(wǎng)絡(luò)終端之間的傳輸,視頻監(jiān)控終端將壓縮的視頻流經(jīng)USB控制器擴(kuò)展的USB接口輸出到RT73無(wú)線傳輸模塊,完成無(wú)線發(fā)射,有線傳輸為視頻服務(wù)器與Internet之間的傳輸。

為了保證網(wǎng)絡(luò)的實(shí)時(shí)可靠傳輸,系統(tǒng)綜合利用了TCP協(xié)議和實(shí)時(shí)傳輸協(xié)議RTP分別完成不同的功能,保證了視頻的質(zhì)量和傳輸速度。TCP協(xié)議負(fù)責(zé)客戶(hù)端和服務(wù)器之間建立連接、傳輸控制命令和數(shù)據(jù)收發(fā)相關(guān)命令,從而確??刂泼畹臏?zhǔn)確傳送。RTP是一種獨(dú)立于應(yīng)用程序的網(wǎng)絡(luò)協(xié)議標(biāo)準(zhǔn),由實(shí)時(shí)傳輸協(xié)議RTP和實(shí)時(shí)傳輸控制協(xié)議RTCP組成[3],保證系統(tǒng)提供流媒體數(shù)據(jù)高效率傳輸,網(wǎng)絡(luò)傳輸程序完成數(shù)據(jù)包的封裝,經(jīng)RT73無(wú)線網(wǎng)卡傳送到視頻服務(wù)器,視頻服務(wù)器經(jīng)Internet傳送到客戶(hù)端監(jiān)控中心。

4 基于DirectShow的客戶(hù)端軟件

DirectShow是微軟公司推出的新一代基于COM技術(shù)[4]的流媒體處理的開(kāi)發(fā)包,為流媒體的捕捉、回放等處理提供了強(qiáng)大的支持。本文利用DirectShow技術(shù)設(shè)計(jì)了基于無(wú)線Mesh網(wǎng)絡(luò)視頻監(jiān)控客戶(hù)端軟件,軟件設(shè)計(jì)采用C/S模式,基于VC平臺(tái)的MFC框架[5]。客戶(hù)端和遠(yuǎn)程終端通過(guò)Socket編程實(shí)現(xiàn)在整個(gè)網(wǎng)絡(luò)上通信。系統(tǒng)總體軟件結(jié)構(gòu)如圖3所示。

圖3 系統(tǒng)總體軟件結(jié)構(gòu)

4.1 開(kāi)發(fā)工具與環(huán)境

開(kāi)發(fā)工具和開(kāi)發(fā)環(huán)境有:DirectX 9.0以上版本;Microsoft Visual Studio 2005;Windows XP操作系統(tǒng)。

4.2 軟件功能設(shè)計(jì)

客戶(hù)端軟件由視頻接收、視頻解碼播放及遠(yuǎn)程控制命令發(fā)送模塊,模塊之間采用共享內(nèi)存進(jìn)行通信,其主要功能如下:

1) 視頻監(jiān)控

用戶(hù)可實(shí)現(xiàn)對(duì)多個(gè)監(jiān)控點(diǎn)的現(xiàn)場(chǎng)圖像進(jìn)行實(shí)時(shí)監(jiān)控,獲得與現(xiàn)場(chǎng)端相當(dāng)幀速率的視頻圖像,可對(duì)每路視頻圖像的對(duì)比度、亮度、色飽和度以及視圖大小進(jìn)行調(diào)節(jié)。

2) 視頻錄像

隨時(shí)可對(duì)視頻圖像連續(xù)或選擇性錄像存儲(chǔ)。錄像信息中應(yīng)包括時(shí)間、監(jiān)控點(diǎn)等信息;可進(jìn)行視頻錄像回放、視頻輸出等操作。

3) 控制命令模塊

客戶(hù)端監(jiān)控中心可以對(duì)管轄范圍內(nèi)多個(gè)遠(yuǎn)程監(jiān)控前端進(jìn)行實(shí)時(shí)監(jiān)控,對(duì)于不同的管理用戶(hù),分配不同的控制權(quán)限。根據(jù)權(quán)限的不同,管理者通過(guò)客戶(hù)端軟件,在權(quán)限允許的監(jiān)控區(qū)域內(nèi)和監(jiān)控點(diǎn),實(shí)現(xiàn)對(duì)監(jiān)控現(xiàn)場(chǎng)的實(shí)時(shí)監(jiān)控、對(duì)攝像機(jī)鏡頭和云臺(tái)進(jìn)行控制和管理實(shí)現(xiàn)對(duì)前端監(jiān)控設(shè)備進(jìn)行遠(yuǎn)程調(diào)控。

4) 系統(tǒng)安全

只有通過(guò)輸入授權(quán)且正確的用戶(hù)名和密碼登陸后方可進(jìn)行遠(yuǎn)程監(jiān)控。

4.3 主要模塊設(shè)計(jì)與實(shí)現(xiàn)

4.3.1 視頻接收模塊

為了能同時(shí)接收來(lái)自終端的多路圖像,在程序中采用了Windows界面設(shè)計(jì)和多線程技術(shù),每個(gè)線程創(chuàng)建一界面窗口,負(fù)責(zé)一路視頻流的接收和播放??蛻?hù)端的視頻數(shù)據(jù)接收流程如圖4所示。

圖4 視頻數(shù)據(jù)接收流程圖

具有相應(yīng)權(quán)限的用戶(hù)通過(guò)口令登錄客戶(hù)端,并完成初始化,選定某一路視頻請(qǐng)求與相應(yīng)終端連接,發(fā)送自己的用戶(hù)名和密碼給服務(wù)器驗(yàn)證訪問(wèn)用戶(hù)的合法性。驗(yàn)證成功后,輸入服務(wù)器視頻終端的IP地址,向服務(wù)器發(fā)送視頻數(shù)據(jù)請(qǐng)求,當(dāng)?shù)玫椒?wù)器返回的確認(rèn)消息后,啟動(dòng)接收數(shù)據(jù)接收線程,視頻數(shù)據(jù)就通過(guò)網(wǎng)絡(luò)傳給客戶(hù)端的視頻接收緩沖區(qū)內(nèi),客戶(hù)端開(kāi)始接收視頻數(shù)據(jù)。

視頻接收模塊負(fù)責(zé)接收從網(wǎng)絡(luò)傳來(lái)的視頻數(shù)據(jù),本文監(jiān)控系統(tǒng)中視頻數(shù)據(jù)的格式是MPEG-4,由于Direct-Show沒(méi)有提供標(biāo)準(zhǔn)的從網(wǎng)絡(luò)接收MPEG-4數(shù)據(jù)的Source Filter,筆者設(shè)計(jì)了一個(gè)推模式的網(wǎng)絡(luò)源過(guò)濾器(其輸入Pin為推模式),當(dāng)網(wǎng)絡(luò)有數(shù)據(jù)到達(dá)時(shí),則主動(dòng)發(fā)送給該Source Filter,它只有一個(gè)輸出引腳。其主要功能在類(lèi) CReceiver Filter實(shí)現(xiàn),繼承于CSoure類(lèi),設(shè)定它的媒體類(lèi)型為 majortype=MEDIATYPE_Video;mt.subtype=CLSID_XVID。Source Filter創(chuàng)建完成后,通過(guò)調(diào)用接口的方式將其加入到FilterGraph對(duì)象中。

主要程序?qū)崿F(xiàn)描述為:

4.3.2 視頻播放模塊

視頻播放模塊實(shí)現(xiàn)視頻的實(shí)時(shí)播放,同時(shí)還可對(duì)存儲(chǔ)的視頻文件進(jìn)行視頻回放,其實(shí)現(xiàn)流程如圖5所示??蛻?hù)端接收到的視頻數(shù)據(jù)信息后,經(jīng)過(guò)解碼過(guò)濾器解碼即可進(jìn)行視頻回放或視頻存儲(chǔ)實(shí)現(xiàn)客戶(hù)端對(duì)終端視頻監(jiān)控圖像的訪問(wèn),客戶(hù)端可根據(jù)客戶(hù)需要選擇同時(shí)顯示多路視頻圖像。

圖5 視頻播放模塊實(shí)現(xiàn)流程圖

系統(tǒng)中視頻壓縮格式為MPEG-4,所以筆者選用了Xvid Codec作為MPEG-4的核心解碼庫(kù),其解碼器源代碼是開(kāi)放的。通過(guò)調(diào)用Xvid的MPEG-4解碼核心代碼來(lái)完成視頻數(shù)據(jù)解壓縮。過(guò)濾器中設(shè)計(jì)了一個(gè)CXvidDecoder類(lèi),繼承于CVideoTransformFilter,作為解碼過(guò)濾器框架。在CXvidDecoder類(lèi)包含了Xvid核心解碼庫(kù)。解碼過(guò)濾器收到數(shù)據(jù)包后,激活Xvid解碼器,然后檢查是否指定了輸出媒體類(lèi)型。 如果是,則根據(jù)指定的媒體類(lèi)型調(diào)用相應(yīng)的色彩空間轉(zhuǎn)化表,設(shè)置解碼后媒體類(lèi)型;解碼時(shí),先獲得輸入視頻數(shù)據(jù)包的指針和長(zhǎng)度,將其拷貝到MPEG-4解碼器的緩存中。由于MPEG-4采用面向?qū)ο蟮木幋a,其數(shù)據(jù)包的長(zhǎng)度可根據(jù)監(jiān)控現(xiàn)場(chǎng)變化自動(dòng)調(diào)整。MPEG-4解碼器能自動(dòng)識(shí)別每幀圖像的數(shù)據(jù)量;緩沖區(qū)中多于一幀的數(shù)據(jù)量作為下次解碼的開(kāi)始數(shù)據(jù),如果緩沖區(qū)不夠一幀圖像解碼數(shù)據(jù),則返回等待下一個(gè)數(shù)據(jù)包讀入后再解碼,然后將解碼的數(shù)據(jù)包打上時(shí)間戳,按順序進(jìn)行回放。

4.3.3 創(chuàng)建Filter Graph

當(dāng)解碼過(guò)濾器開(kāi)發(fā)完成后,在系統(tǒng)中注冊(cè),以供應(yīng)用程序調(diào)用。創(chuàng)建Filter Graph時(shí),只需調(diào)用接口的方式將Source Filter加入到FilterGraph對(duì)象中,根據(jù)MPEG-4 Video Decoder的CLSID創(chuàng)建它的實(shí)例,使用IflterGt aph::AddFilter接口方法將其加入到Filter Graph中[6]。通過(guò)IGraphBuilder::Connect接口方法將其連接起來(lái),然后運(yùn)行Filter Graph即可實(shí)現(xiàn)播放。

4.3.4 遠(yuǎn)程控制模塊

實(shí)現(xiàn)遠(yuǎn)程控制就是在監(jiān)控中心通過(guò)客戶(hù)端軟件,利用計(jì)算機(jī)鼠標(biāo)或鍵盤(pán)相應(yīng)操作來(lái)向終端服務(wù)器發(fā)送命令來(lái)實(shí)現(xiàn)對(duì)監(jiān)控點(diǎn)的攝像機(jī)的參數(shù)及云臺(tái)進(jìn)行控制。當(dāng)服務(wù)器接收到來(lái)自客戶(hù)端的命令后,調(diào)用云臺(tái)控制程序,對(duì)串口進(jìn)行相應(yīng)的讀寫(xiě)操作,經(jīng)云臺(tái)解碼器解碼后直接對(duì)攝像頭或云臺(tái)電平變化來(lái)實(shí)現(xiàn)對(duì)云臺(tái)控制。由于控制命令準(zhǔn)確性要求較高,數(shù)據(jù)量較小,所以采用了提供可靠連接傳輸協(xié)議TCP/IP進(jìn)行傳輸,用戶(hù)可以根據(jù)監(jiān)控場(chǎng)合、用途和功能的不同對(duì)串口采取不同的配置,在程序運(yùn)行后也可隨時(shí)對(duì)串口的參數(shù)設(shè)置進(jìn)行更改。

5 系統(tǒng)測(cè)試

系統(tǒng)測(cè)試在某社區(qū)路口進(jìn)行,設(shè)置了5臺(tái)視頻監(jiān)控終端安置于監(jiān)控點(diǎn),各監(jiān)控點(diǎn)之間的距離約為200 m,監(jiān)控主機(jī)通過(guò)IEEE802.11b/g標(biāo)準(zhǔn)的無(wú)線網(wǎng)卡接入Mesh網(wǎng)絡(luò),從任一監(jiān)控終端獲取Xvid-MPEG-4格式的視頻流,采用所開(kāi)發(fā)的客戶(hù)端軟件完成終端設(shè)置、視頻接收、解碼播放等。測(cè)試結(jié)果表明,畫(huà)面播放流暢,實(shí)時(shí)性較好,視覺(jué)效果令人滿意。在進(jìn)行主動(dòng)丟包測(cè)試時(shí),當(dāng)丟包率達(dá)到10%時(shí),圖像會(huì)出現(xiàn)少量的馬賽克,但播放依然流暢,完全可以滿足當(dāng)前視頻監(jiān)控市場(chǎng)的要求。

6 小結(jié)

基于無(wú)線Mesh網(wǎng)的視頻監(jiān)控系統(tǒng)由于其獨(dú)特優(yōu)勢(shì),與其他無(wú)線視頻監(jiān)控系統(tǒng)相比具有較高的性?xún)r(jià)比,且安裝使用方便。由于MPEG-4的差錯(cuò)恢復(fù)能力強(qiáng),對(duì)各種網(wǎng)絡(luò)有較強(qiáng)的適應(yīng)能力。在網(wǎng)絡(luò)帶寬更小的情況下,通過(guò)降低監(jiān)控畫(huà)面質(zhì)量,得到更小的碼率,以節(jié)約帶寬。隨著無(wú)線Mesh技術(shù)的進(jìn)一步發(fā)展和完善,其必將在多種領(lǐng)域有著廣闊的應(yīng)用前景。

[1]AKYILDIZ I F,WANG Xudong.A survey on wireless Mesh networks[J].IEEE Communications Magazine, 2005,43(9):23-30.

[2]BRUNO R,CONTI M,GREGORI E.Mesh networks:commodity multi-hop Ad Hoc networks[J].IEEE Communication Magazine, 2005,43(3):123-131.

[3]潘鵬,杜旭,葉婷,等.RTP/RTCP實(shí)時(shí)傳輸協(xié)議的研究與Linux實(shí)現(xiàn)[J].計(jì)算機(jī)工程與應(yīng)用,2005(24):105-108.

[4]POGERSON D.COM技術(shù)內(nèi)幕——微軟組件對(duì)象模型[M].楊秀章,譯.北京:清華大學(xué)出版社,1998.

[5]郭曉鵬,李存斌.Visual C++高級(jí)編程及其項(xiàng)目應(yīng)用開(kāi)發(fā)[M].北京:中國(guó)水利水電出版社,2003.

[6]陸其明.DirectShow開(kāi)發(fā)指南[M].北京:清華大學(xué)出版社,2003.

猜你喜歡
監(jiān)控點(diǎn)解碼客戶(hù)端
《解碼萬(wàn)噸站》
石化工業(yè)區(qū)環(huán)境空氣污染監(jiān)控點(diǎn)選取分析
解碼eUCP2.0
如何看待傳統(tǒng)媒體新聞客戶(hù)端的“斷舍離”?
高速公路室外監(jiān)控點(diǎn)一體化智能箱設(shè)計(jì)淺析
NAD C368解碼/放大器一體機(jī)
Quad(國(guó)都)Vena解碼/放大器一體機(jī)
縣級(jí)臺(tái)在突發(fā)事件報(bào)道中如何應(yīng)用手機(jī)客戶(hù)端
孵化垂直頻道:新聞客戶(hù)端新策略
客戶(hù)端空間數(shù)據(jù)緩存策略