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

基于Android終端的移動視頻監(jiān)控客戶端設計

2019-08-02 03:01:12王艷
微型電腦應用 2019年7期
關鍵詞:界面系統(tǒng)

王艷

(西安航空職業(yè)技術學院 計算機工程學院, 西安 710089)

0 引言

無線通訊技術及智能手機的迅速發(fā)展和完善,為視頻監(jiān)控技術提供了強大的技術支撐,隨著移動視頻監(jiān)控的不斷發(fā)展,視頻監(jiān)控系統(tǒng)在各領域得到普遍應用,受到PC機不易移動的局限性,視頻數(shù)據(jù)通過PC端獲取的方式已經(jīng)難以滿足監(jiān)控的移動需求,且傳統(tǒng)視頻監(jiān)控還存在布線復雜程度較高、可拓展性較低等缺點,為使傳統(tǒng)視頻監(jiān)控系統(tǒng)的問題得以有效解決,對移動視頻監(jiān)控系統(tǒng)的研究成為重要方向之一,實現(xiàn)通過遠程視頻圖像監(jiān)控。

1 關鍵技術研究

1.1 流媒體(Media Stream)傳輸技術

該技術具備高效的壓縮編碼功能,音視頻多媒體數(shù)據(jù)經(jīng)其處理后以媒體流形式通過網(wǎng)絡完成傳輸,移動客戶端邊播放邊下載,無需下載完整文件,縮短了用戶等待時間,并且已制定了相關標準。相比于PC機,移動視頻監(jiān)控終端設備的硬件資源有限但對實時性的要求較高,考慮到Android系統(tǒng)的CPU運算速度、緩存的局限,因此本文在設計移動視頻監(jiān)控系統(tǒng)時使用了流媒體實時傳輸協(xié)議(RTP),降低延遲,提高控制傳輸流的能力及系統(tǒng)的實時性,同時具備較強的自適應網(wǎng)絡帶寬資源能力[1]。

1.2 H.264視頻編解碼技術

該技術主要由視頻編碼(規(guī)定了H.264 的編解碼算法)和網(wǎng)絡提取兩層構(gòu)成,具體的編碼原理如圖1所示。

圖1 H.264視頻編碼器框圖

具備較高的編碼效率和網(wǎng)絡友好性,視頻編碼層可有效描述視頻內(nèi)容,對原始視頻中冗余時間、空間及統(tǒng)計通過使用離散余弦編碼、運動估計等多種方法實現(xiàn)有效壓縮。H.264使用了包括靈活宏塊排序、多尺寸運動估計、環(huán)路去塊效應濾波器,像素運動補償?shù)认冗M的輔助技術,以使壓縮效率得以進一步提高;網(wǎng)絡提取層對傳輸時的H.264 碼流所需遵循的規(guī)范(在各種網(wǎng)絡情況下)進行了詳細規(guī)定,結(jié)合網(wǎng)絡資源情況,依據(jù)視頻的使用特征打包傳送數(shù)據(jù)[1]。

2 系統(tǒng)整體架構(gòu)設計

2.1 總體架構(gòu)

本文采用Client/Server 架構(gòu)完成移動視頻監(jiān)控系統(tǒng)總體架構(gòu)的設計,在客戶端、服務器端需分別對相應的軟件功能進行開發(fā),系統(tǒng)總體架構(gòu)如圖2所示。

圖2 遠程視頻監(jiān)控系統(tǒng)架構(gòu)

主要由視頻監(jiān)控設備、視頻服務器、監(jiān)控客戶終端三部分構(gòu)成,各部分間的通信連接通過網(wǎng)絡完成,采用攝像頭完成監(jiān)控視頻采集端的原始視頻數(shù)據(jù)的采集過程,攝像頭通過云臺的使用完成對旋轉(zhuǎn)的控制,CMOS視頻采集模塊采集圖像,AD轉(zhuǎn)換模塊完成所采集圖像到數(shù)字圖像的轉(zhuǎn)換,并傳送至終端服務器[2]。

2.2 移植FFMPEG和JNI接口

在解碼H.264 標準的視頻時需先完成解碼軟件的移植,考慮到運算量較大的H.264解碼算法復雜,本文采用軟件包FFMPEG(C語言編碼)來實現(xiàn),作為一種音視頻解碼包,F(xiàn)FMPEG具備跨平臺、源代碼開放的優(yōu)勢,提高了錄制、編碼和流化音視頻能力,從而實現(xiàn)了Linux及Android的高效兼容。通過將FFMPEG 代碼包移植到Android操作系統(tǒng)即可對由H.264編碼的視頻數(shù)據(jù)進行解碼,為對其他本地語言編寫的代碼進行調(diào)用,移植過程中由于是采用C語言編寫的FFMPEG 軟件包,Android 系統(tǒng)中C 程序的調(diào)用需使用Java 本地接口(JNI),本文通過JNI接口的使用完成了Java 虛擬機同應用程序間的相互調(diào)用,實現(xiàn)Java能夠同本地代碼間的互操作;為實現(xiàn)Android系統(tǒng)對C/C++程序的調(diào)用,JNI 可在基于Java的Android系統(tǒng)中被提供,這些接口由本地代碼(其他語言編寫)實現(xiàn),需在Android系統(tǒng)中進行注冊,Android系統(tǒng)JN I接口具體如圖3所示。

圖3 Android 系統(tǒng) JNI接口

使用 FFMPEG前需先將FFMPEG代碼編譯成動態(tài)庫,在通過JNI 技術完成 FFMPEG函數(shù)的調(diào)用[3]。

3 移動視頻監(jiān)控客戶端的實現(xiàn)

3.1 視頻采集過程的實現(xiàn)

系統(tǒng)的核心在于基于Linux 系統(tǒng)的服務器,主要負責對視頻進行捕獲、通過H.264進行編碼、進行RTP分包及云臺控制等,對前端采集設備和后端用戶的管理通過 SIP信令的轉(zhuǎn)發(fā)完成, 攝像頭采集到視頻數(shù)據(jù)后,服務器會對 FFMPEG 音視頻解碼包進行調(diào)用,并在此基礎上完成H.264 壓縮編碼,接下來的RTP打包則通過 JRTPLIB 庫完成,實現(xiàn)用戶客戶端到服務器端的 RTP 連接的創(chuàng)建及通過Socket 接口進行的發(fā)送環(huán)節(jié),確保了數(shù)據(jù)的實時傳輸功能的順利實現(xiàn);Android客戶端通過服務器的訪問,完成流媒體 RTP 數(shù)據(jù)包的接收,再通過JRTPLIB 庫的使用完成拆包處理后存放至接收緩沖區(qū),接下來完成 H.264 解碼(提高調(diào)用 FFMPEG),最終視頻播放、保存等通過調(diào)用Mediawork 庫完成(視頻播放數(shù)據(jù)格式為QCIF 或 CIF),幀速率超過20幀/秒、碼率大于64kps[4]。

3.2 客戶端功能的實現(xiàn)

采用具備Android 系統(tǒng)的設備作為本文移動視頻監(jiān)控的終端設備,作為同用戶進行交互的對象,客戶端需確保具備基本的美觀易于操作的界面的同時具備穩(wěn)定的相關功能,軟件系統(tǒng)功能構(gòu)成具體如圖4所示。

圖4 軟件系統(tǒng)構(gòu)成

(1) 客戶端界面的實現(xiàn)

應用程序用戶界面的創(chuàng)建通過Android 操作系統(tǒng)提供的多個常見UI 控件實現(xiàn),本文客戶端UI 界面主要由四個界面構(gòu)成(包括登陸認證、選擇通道、設置參數(shù)、播放視頻),具體的界面流程如圖5所示。

圖5 UI界面流程框圖

Android系統(tǒng)中的 UI 控件基于兩個類:View 和 ViewGroup,以Android 界面開發(fā)方法為依據(jù),各界面需完成對應的 XML 布局文件的編寫[5]。

(2) H.264 視頻解碼器的實現(xiàn)

作為移動監(jiān)控客戶終端的核心部分,視頻播放主要通過接收RTP 數(shù)據(jù)包、H.264 解碼及畫面顯示等過程完成,通過Android 系統(tǒng)采用軟件方式對H.264 碼流進行解碼,SIP 會話通過無線網(wǎng)絡傳輸?shù)紸ndroid 系統(tǒng)(在移植完音視頻編解碼包后),Android 系統(tǒng)將有效的 RTP 數(shù)據(jù)包從中分揀出來,在此基礎上拆包 RTP 完成有效負載的分解,實現(xiàn) H.264標準編碼過程(按照時間戳排序),即可獲取最終的視頻數(shù)據(jù),經(jīng)解碼的 H.264 數(shù)據(jù)通過應用程序不斷向視頻播放界面?zhèn)鬟f,通過畫面的不斷刷新即可在移動客戶端實現(xiàn)流暢視頻的獲取[5]。

(3) 播放功能的實現(xiàn)

在手機屏幕的視頻播放界面播放并顯示解碼后的視頻幀,本文播放功能的實現(xiàn)主要通過onDraw()函數(shù)的設計實現(xiàn),在畫面的顯示需調(diào)用Android 系統(tǒng)自帶的Canvason(一種函數(shù)Draw的參數(shù)是寫圖元素類的),在onDraw類中完成屏幕的分辨率的設置(通過屏幕寬、高度的獲取);在一個buffer 字節(jié)類中傳入經(jīng)解碼的數(shù)據(jù)完成圖像的輸出,再將這個字節(jié)類通過 onDraw函數(shù)的調(diào)用完成圖像的顯示,視頻數(shù)據(jù)的解碼通過調(diào)用DecoderNal()函數(shù)完成,有新的視頻數(shù)據(jù)解碼成功后則此函數(shù)解碼后返回的數(shù)值大于 0 時,此時通過對屏幕進行刷新,從而顯示新畫面[6]。

(4) 控制系統(tǒng)的實現(xiàn)

使用 TCP/IP 協(xié)議完成傳輸過程以確保控制指令的可靠性,視頻采集端云臺設備通過客戶端對應的功能按鈕即可完成控制過程,Android 操作系統(tǒng)的TCP/IP 協(xié)議棧相對完整,通過 Socket網(wǎng)絡即可完成應用程序的編程,從而實現(xiàn)系統(tǒng)控制指令的傳輸。基于Android的移動視頻監(jiān)控客戶端播放的畫面有較高的清晰流暢度,沒有出現(xiàn)長時間的卡頓現(xiàn)象,能夠滿足遠程移動監(jiān)控需要。

4 總結(jié)

本文在研究整個監(jiān)控系統(tǒng)關鍵技術的基礎上(包括視頻編解碼、移動流媒體、實時傳輸?shù)?,依據(jù)視頻監(jiān)控系統(tǒng)的體系結(jié)構(gòu),結(jié)合JNI 技術,完成了基于Android 智能終端的移動視頻監(jiān)控系統(tǒng)客戶端的設計,通過在Android系統(tǒng)中設計H.264 視頻解碼器,實現(xiàn)監(jiān)控終端到手持設備上的移植過程,該無線視頻監(jiān)控系統(tǒng)客戶端的功能主要通過移動流媒體實現(xiàn),彌補了傳統(tǒng)的視頻監(jiān)控終端移動性較差的不足,用戶通過網(wǎng)絡即可接入網(wǎng)絡實現(xiàn)移動實時的視頻監(jiān)控過程,不受時空限制,能夠提供高效的遠程移動視頻監(jiān)控服務。

猜你喜歡
界面系統(tǒng)
Smartflower POP 一體式光伏系統(tǒng)
WJ-700無人機系統(tǒng)
ZC系列無人機遙感系統(tǒng)
北京測繪(2020年12期)2020-12-29 01:33:58
國企黨委前置研究的“四個界面”
當代陜西(2020年13期)2020-08-24 08:22:02
基于PowerPC+FPGA顯示系統(tǒng)
半沸制皂系統(tǒng)(下)
基于FANUC PICTURE的虛擬軸坐標顯示界面開發(fā)方法研究
連通與提升系統(tǒng)的最后一塊拼圖 Audiolab 傲立 M-DAC mini
空間界面
金秋(2017年4期)2017-06-07 08:22:16
電子顯微打開材料界面世界之門
主站蜘蛛池模板: 毛片国产精品完整版| 欧洲精品视频在线观看| 成人精品亚洲| 2021国产精品自拍| 五月婷婷丁香综合| www.日韩三级| 国产成人资源| 国内99精品激情视频精品| 国产欧美自拍视频| 2020国产免费久久精品99| 久久综合丝袜长腿丝袜| 中文字幕啪啪| 五月天婷婷网亚洲综合在线| 亚洲日韩久久综合中文字幕| 国产不卡一级毛片视频| 2022精品国偷自产免费观看| 国产乱肥老妇精品视频| 欧美成人一区午夜福利在线| 欧美成人影院亚洲综合图| av一区二区三区高清久久| 成人字幕网视频在线观看| 久久久久中文字幕精品视频| 国产亚洲精品自在线| 久久女人网| 国产区人妖精品人妖精品视频| 成年午夜精品久久精品| 中文字幕日韩丝袜一区| 在线观看国产精品第一区免费| a天堂视频| 欧美一级大片在线观看| 亚洲乱码在线视频| 久久香蕉国产线| 国产91av在线| 国产呦视频免费视频在线观看| 亚洲女人在线| 亚洲Aⅴ无码专区在线观看q| 国产精品七七在线播放| 亚洲Aⅴ无码专区在线观看q| 亚洲色图欧美一区| 国产精彩视频在线观看| 久久精品中文字幕免费| 老司机久久99久久精品播放| 重口调教一区二区视频| 91精品综合| 三级视频中文字幕| 欧美精品高清| 午夜视频在线观看区二区| 日本在线视频免费| av一区二区三区高清久久| 九色在线视频导航91| 国产99精品久久| 亚洲美女操| 精品国产福利在线| 亚洲第一区欧美国产综合| 熟妇丰满人妻| 国产女人18水真多毛片18精品| 国产人人射| 多人乱p欧美在线观看| 狠狠ⅴ日韩v欧美v天堂| a亚洲视频| 先锋资源久久| 四虎精品国产AV二区| 一级爱做片免费观看久久| 亚洲欧美精品日韩欧美| 成人午夜精品一级毛片| 久久午夜夜伦鲁鲁片无码免费| 国产亚洲欧美在线专区| 就去吻亚洲精品国产欧美| 极品性荡少妇一区二区色欲| 在线a视频免费观看| 青青网在线国产| 亚洲国产综合自在线另类| 五月天香蕉视频国产亚| 91精品福利自产拍在线观看| 成人一区在线| 久久久91人妻无码精品蜜桃HD| 99热这里只有精品免费国产| 九色综合伊人久久富二代| 亚洲日韩高清无码| 国产亚洲日韩av在线| 色婷婷在线影院| 日本午夜网站|