羅歡,周永明,文昊翔
基于Android智能電視的無線視頻監(jiān)控系統(tǒng)的設計
羅歡,周永明,文昊翔
(韶關學院物理與機電工程學院,廣東韶關512005)
提出了一種基于安卓系統(tǒng)智能電視的無線視頻監(jiān)控系統(tǒng)的方案,闡述了系統(tǒng)的總體結(jié)構,分析并研究了系統(tǒng)的關鍵技術,完成了系統(tǒng)服務器端與智能終端的設計,使用3G/4G、WiFi等無線網(wǎng)絡進行數(shù)據(jù)傳輸,設計并實現(xiàn)了整個視頻監(jiān)控系統(tǒng).經(jīng)測試表明系統(tǒng)穩(wěn)定性強,使用方便,具有較大的應用前景.
視頻監(jiān)控;智能電視;安卓;H.264;實時傳輸協(xié)議
隨著人們生活水平的逐漸提高與科學技術的快速發(fā)展,人們對生活質(zhì)量與家居安全也越來越重視,視頻監(jiān)控系統(tǒng)作為日常家居安全的重要組成部分之一,從被提出就以準確、直觀以及豐富的信息內(nèi)容等受到大家的廣泛重視.傳統(tǒng)的視頻監(jiān)控系統(tǒng)大多數(shù)采用光纖或電纜來進行視頻信息的傳輸,使用專門的PC機作為監(jiān)控端,由于網(wǎng)線的限制,不利于監(jiān)控系統(tǒng)的擴展以及快速搭建,并且需要在指定的地點使用PC機進行監(jiān)控,這極大的限制了視頻監(jiān)控系統(tǒng)的靈活性[1].筆者提出一種基于智能電視終端的無線視頻監(jiān)控系統(tǒng)的方案,使用搭載安卓系統(tǒng)的智能電視作為視頻監(jiān)控客戶終端,選用3G/4G、WiFi等無線網(wǎng)絡進行數(shù)據(jù)傳輸,解決了傳統(tǒng)視頻監(jiān)控系統(tǒng)的不足之處[2].
筆者設計了一款基于智能電視終端的無線視頻監(jiān)控系統(tǒng),能夠?qū)⒉杉降囊曨l信號通過WiFi、3G/4G等無線通信網(wǎng)絡傳輸至智能電視終端,用戶可使用智能電視隨時的對監(jiān)控區(qū)域的情況進行實時監(jiān)控,并且可以通過智能終端控制攝像頭云臺的旋轉(zhuǎn),全方位的查看監(jiān)控區(qū)域.整個系統(tǒng)從功能上可分為視頻采集模塊、無線傳輸模塊以及智能終端模塊等3個部分(見圖1).

圖1系統(tǒng)功能結(jié)構圖
系統(tǒng)的視頻采集模塊主要是通過攝像頭采集監(jiān)控區(qū)域的視頻信號,然后對視頻信號進行壓縮編碼,本系統(tǒng)主要采用H.264編碼標準對視頻信號進行編解碼,將采集到的視頻數(shù)據(jù)進行H.264壓縮編碼成為數(shù)據(jù)量較小、適合網(wǎng)絡傳輸?shù)囊曨l格式,然后進行RTP打包發(fā)送.該模塊同時也能接受來自智能終端模塊的控制信號,執(zhí)行云臺旋轉(zhuǎn)等相應操作.無線傳輸模塊的功能主要是通過WiFi、3G/4G等無線網(wǎng)絡實現(xiàn)對視頻信號與控制信號的無線傳輸[3-4].智能終端模塊的主要功能是從無線傳輸模塊接收視頻信號,然后對視頻信號進行H.264視頻解碼,最后通過智能終端的顯示屏進行播放,也能夠?qū)⒔邮盏降囊曨l信號存儲在磁盤中.用戶可通過智能終端模塊發(fā)送控制信號來對監(jiān)控區(qū)域的監(jiān)控設備進行操控.
系統(tǒng)使用客戶端/服務器架構,即C/S架構.服務器端主要包括監(jiān)控設備與視頻服務器,客服端則采用基于安卓系統(tǒng)智能電視,系統(tǒng)的總體設計圖見圖2.

圖2系統(tǒng)總體設計圖
2.1視頻信號的采集與編碼
筆者設計的監(jiān)控系統(tǒng)服務器端采用Tiny210v2嵌入式開發(fā)板作為視頻服務器,Tiny210v2的核心板選用三星公司的S5PV210作為微處理器,S5PV210是基于Cor texTM-A8內(nèi)核,支持ARM V7指令集,主頻可高達1 GHz,并且內(nèi)置了MFC(多格式編碼器),可以支持H.264與MPEG-1/2/4等各種格式的硬件編解碼,能夠滿足監(jiān)控系統(tǒng)對視頻服務器的要求.
設計的視頻服務器是在Tiny210v2開發(fā)板中移植Linux操作系統(tǒng)來實現(xiàn)的.在Linux操作系統(tǒng)中,所有Linux操作系統(tǒng)支持的設備都是以文件的形式存在的,因此可以使用操作普通文件的方式去操作設備文件[5].在配置Linux內(nèi)核時可以添加監(jiān)控設備的驅(qū)動程序,在接入監(jiān)控設備之后會自動在/dev的目錄下生成對應的設備文件,使用USB攝像頭作為監(jiān)控設備,在接入USB攝像頭之后會自動的在/dev目錄下生成/dev/video2文件,對該文件進行操作即可完成視頻信號的采集,流程圖見圖3[6].

圖3視頻信號采集流程圖

圖4視頻編碼流程圖
視頻采集完成之后可以使用S5PV210自帶的MFC對視頻信號進行硬件編碼,MFC開發(fā)主要由操作系統(tǒng)區(qū)域的MFC設備驅(qū)動和用戶區(qū)域的MFC編碼器兩大部分組成[7].在使用MFC進行編碼時可以使用MFC驅(qū)動的I/O接口與API庫函數(shù)來完成視頻編碼工作,編碼流程圖見圖4.
2.2視頻信號的RTP傳輸
系統(tǒng)使用RTP傳輸協(xié)議對經(jīng)過壓縮編碼之后的視頻數(shù)據(jù)進行傳輸,需要在傳輸視頻數(shù)據(jù)之前先對其安裝RTP協(xié)議進行封裝.封裝的的過程實際上是將H.264的NALU(網(wǎng)絡抽象層單元)存放在RTP協(xié)議包的載荷數(shù)據(jù)部分,兩者共同組成一個完整的RTP數(shù)據(jù)幀[8].一個NALU通常包括Start Code、NALU Header與NALU Payload三個部分.Start Code只標示著NALU的開始,且固定為“00000001”,通常丟棄Start Code,只保留NALU Header和NALU Payload這兩部分的數(shù)據(jù)存入RTP協(xié)議包的載荷數(shù)據(jù)中,一個RTP數(shù)據(jù)包見圖5[9].
系統(tǒng)主要通過將JRTPLIB移植到開發(fā)板中來實現(xiàn)RTP協(xié)議的實時傳輸,JRTPLIB是一個開源的RTP庫,是基于面向?qū)ο蟮腃++進行開發(fā)的,具備良好的可移植性,能夠支持Linux、Windows等多種操作系統(tǒng).圖6是使用RTP協(xié)議進行數(shù)據(jù)傳輸?shù)牧鞒虉D,通常在網(wǎng)絡中傳輸?shù)臄?shù)據(jù)包的字節(jié)數(shù)不能大于網(wǎng)絡的MTU(最大傳輸單元,通常為1 500 byte),視頻數(shù)據(jù)的數(shù)據(jù)量大,在使用RTP協(xié)議封包前需要將NALU與MTU的字節(jié)數(shù)進行比較,若NALU字節(jié)數(shù)較大則需要將其分割成多個RTP包進行傳輸[10].

圖5RTP數(shù)據(jù)包

圖6RTP傳輸流程圖
3.1智能終端APP的設計
系統(tǒng)的智能終端是選用智能電視來實現(xiàn)的.智能電視的概念一經(jīng)提出就引起了社會各界人士對它的關注,各個電視生產(chǎn)廠家都投入大量的資金進行智能電視的研發(fā)并迅速推出產(chǎn)品,近年來智能電視正在迅速的占領電視市場.目前市場上智能電視產(chǎn)品大多數(shù)是搭載Google公司推出的Android操作系統(tǒng),筆者選用海爾公司統(tǒng)帥LE42KNH7智能電視作為智能終端.統(tǒng)帥LE42KNH7搭載了Android 4.0的操作系統(tǒng),全高清的1080P的IPS屏幕,運行的CPU主頻為1 GHz,軟硬件條件滿足系統(tǒng)對智能終端的要求.
智能電視的SDK(軟件開發(fā)工具包)就是在Android系統(tǒng)原來的SDK上添加了智能電視的擴展API與遙控按鍵的擴展,使Android系統(tǒng)能夠在智能電視上正常運行并進行開發(fā),圖7為智能電視的SDK框架.
系統(tǒng)主要使用基于Java的開源軟件Eclipse來進行APP的軟件開發(fā),在搭建好相關環(huán)境之后即可進行開發(fā);主要通過在xml中進行定義、布局從而來實現(xiàn)各個組件的布局,最后形成APP的用戶界面[11].APP的用戶界面主要包括4個UI界面:登錄界面、網(wǎng)絡配置界面、選擇監(jiān)控場所界面以及監(jiān)控界面,界面切換流程圖見圖8.
3.2視頻解碼與播放
在客戶終端接收到RTP包之后,即可對RTP包進行數(shù)據(jù)提取,得到經(jīng)過H.264編碼的視頻數(shù)據(jù),然后需要對該數(shù)據(jù)進行H.264解碼.通過移植開源的FFmpeg平臺至智能電視終端來實現(xiàn)視頻的H.264解碼,移植完成可以直接調(diào)用H.264Decorder函數(shù)來完成視頻數(shù)據(jù)的解碼工作.
視頻的顯示主要是通過Surface View來實現(xiàn)的,Surface View是view視圖類的一個子類,是經(jīng)其拓展延伸而來的一個視圖類,Surface View類相比于view類的優(yōu)勢在于它能夠不停的重新繪制出畫面來實現(xiàn)監(jiān)控視頻的播放,在用戶界面主線程或子線程中不會造成線程阻塞,出現(xiàn)卡頻、按鍵無效等情況.

圖7智能電視的SDK框架

圖8UI界面切換流程圖
在搭建完成服務器與客戶端的開發(fā)環(huán)境之后,啟動服務器與智能電視,系統(tǒng)是在室內(nèi)無線WiFi局域網(wǎng)的網(wǎng)絡環(huán)境下進行測試的,需將開發(fā)板與智能電視連接到同一無線路由器上,然后需要配置相關網(wǎng)絡參數(shù),配置好開發(fā)板的IP地址與程序的端口號,啟動開發(fā)板運用程序.
在服務器端配置完成之后打開智能電視終端的APP,首先進入登錄界面,輸入對應的用戶名和密碼,配置好相應的網(wǎng)絡參數(shù),選擇需要查看的監(jiān)控場所,即可實現(xiàn)對監(jiān)控區(qū)域的實時監(jiān)控,圖9為系統(tǒng)測試圖.

圖9系統(tǒng)測試圖
通過測試,整個監(jiān)控系統(tǒng)能夠穩(wěn)定運行,智能電視端能夠快速的與服務器端建立連接,整個監(jiān)控系統(tǒng)達到了預期設想的效果.但在測試的過程中發(fā)現(xiàn)監(jiān)控視頻還存在著大約500 ms~800 ms的延時,系統(tǒng)的實時性還需要進一步的改善,可以在后期對H.264壓縮編碼算法進行進一步的優(yōu)化來提升系統(tǒng)的實時性.
參考文獻:
[1]李江.基于Android的4G網(wǎng)絡移動高清視頻監(jiān)控系統(tǒng)關鍵技術的研究[D].杭州:浙江大學,2016.
[2]高海燕.基于Android平臺的視頻監(jiān)控系統(tǒng)多協(xié)議客戶端的設計與實現(xiàn)[D].廣州:華南理工大學,2014.
[3]武一,張圣鵬,丁涵.基于android和云平臺的智能家居系統(tǒng)設計與實現(xiàn)[J].電視技術,2015,39(22):27-30.
[4]曹曉芳,王超,李杰.一種基于Android智能手機的遠程視頻監(jiān)控的設計[J].電子器件,2011(6):709-712.
[5]羅歡.基于Android智能電視視頻監(jiān)控系統(tǒng)的研究與實現(xiàn)[D].廣州:廣東工業(yè)大學,2014.
[6]王浩,韓敏,董杰.基于Android平臺的車載視頻智能監(jiān)控系統(tǒng)的研究[J].電子技術應用,2016,42(6):121-123,127.
[7]李飛霞.基于Android的移動視頻監(jiān)控系統(tǒng)的設計與實現(xiàn)[D].成都:電子科技大學,2013.
[8]董杰,辛吉濤,連捷.基于Android系統(tǒng)的H.264視頻直播技術研究[J].電視技術,2015,39(4):11-15.
[9]Srinivasan K S.The Effects of Priority Levels and Buffering on the Statistical Multiplexing of Single-Layer H.264/AVC and SVC Encoded Video Streams[J].IEEE Transactions on Broadcasting,2010,56(3):281-286.
[10]任守華,王勝華,劉士雷,等.基于3G和H.264技術的無線視頻監(jiān)控系統(tǒng)[J].計算機應用研究,2010(4):1554-1556,1559.
[11]羅歡,謝云,李丕杉.基于Android智能電視的視頻監(jiān)控的設計[J].電視技術,2013,37(22):85-87.
On the Design of Wireless Video Surveillance System Based on Android Smart TV Terminal
LUO Huan,ZHOU Yong-ming,WEN Hao-xiang
(Institute of Physics and Mechanical and Electrical Engineering,Shaoguan University,Shaoguan 512005,Guangdong,China)
The program of a wireless video surveillance system based on Android smart TV terminals is proposed in this paper.The overall structure of the system is described and the key technologies of the system is analyzed.The data transmission between server terminal and the intelligent terminal using 3G/4G,Wifi or other wireless network is finally designed to complete the entire video surveillance system.The experimental results indicate that the proposed system has great prospects for its strong stability and easy controllability.
video surveillance;smart TV;Android;H.264;RTP
TN99%
A%%%
1007-5348(2017)03-0057-05
(責任編輯:歐愷)
2016-12-14
廣東省自然科學基金項目(2015A030310510);廣東省教育廳科技創(chuàng)新項目(2013KJCX0169);韶關學院科研項目(S201501006).
羅歡(1992-),男,江西南昌人,韶關學院物理與機電工程學院教師,碩士;研究方向:物聯(lián)網(wǎng)及嵌入式技術.