亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        基于wifi面向Android的遠(yuǎn)程視頻監(jiān)控客戶端開發(fā)

        2013-04-29 00:44:03李巧巧
        網(wǎng)友世界 2013年9期
        關(guān)鍵詞:視頻監(jiān)控

        【摘 要】近年來,隨著生活節(jié)奏的加快,移動(dòng)手持設(shè)備的普及,以及人們自我保護(hù)意識(shí)的增強(qiáng),使得基于移動(dòng)手持設(shè)備的視頻監(jiān)控系統(tǒng)需求量大量增加。本文針對(duì)目前需求現(xiàn)狀,借助Android系統(tǒng)的用戶界面編程、H.264解碼器、以及Android網(wǎng)絡(luò)與通信等技術(shù)設(shè)計(jì)了一款遠(yuǎn)程視頻監(jiān)控系統(tǒng)。用戶可根據(jù)調(diào)時(shí)操作階段選擇觀看監(jiān)控視頻,為外出者提供了極大的方便。

        【關(guān)鍵詞】wifi;Android;視頻監(jiān)控

        1.引言

        Android系統(tǒng)采用了開源的Linux操作系統(tǒng),底層使用了訪問硬件速度最快的C語(yǔ)言,應(yīng)用層采用了簡(jiǎn)單而強(qiáng)大的Java語(yǔ)言,這使得Android在一眾手機(jī)操作系統(tǒng)中尤為突出。在這個(gè)移動(dòng)互聯(lián)網(wǎng)時(shí)代,Android系統(tǒng)更是具有無限的潛能。良好的無線網(wǎng)絡(luò)環(huán)境,配合人們危機(jī)意識(shí)增強(qiáng)的現(xiàn)象及Android終端的普及促使產(chǎn)生了利用手機(jī)隨時(shí)隨地可進(jìn)行遠(yuǎn)程監(jiān)控房屋財(cái)產(chǎn)等的需求。因此,設(shè)計(jì)與研究基于wifi網(wǎng)絡(luò)環(huán)境面向Android的遠(yuǎn)程視頻監(jiān)控系統(tǒng),具有明顯的現(xiàn)實(shí)性意義。

        本文所設(shè)計(jì)的平臺(tái)是基于Google開發(fā)的開源操作系統(tǒng)Android,并利用java web技術(shù)與wifi網(wǎng)絡(luò)環(huán)境實(shí)現(xiàn)的。本系統(tǒng)為經(jīng)常加夜班或者出差的白領(lǐng)等具有相同需求人們提供了方便,可供大家進(jìn)行調(diào)時(shí)監(jiān)控,以便更加安心的專注于工作學(xué)習(xí)等。

        2.系統(tǒng)分析與設(shè)計(jì)

        2.1 系統(tǒng)設(shè)計(jì)思想

        遠(yuǎn)程視頻監(jiān)控系統(tǒng)是基于數(shù)字視頻監(jiān)控系統(tǒng)的遠(yuǎn)程應(yīng)用系統(tǒng),通常有基于PC技術(shù)、基于網(wǎng)絡(luò)攝像機(jī)和基于嵌入式Web服務(wù)器等幾種遠(yuǎn)程監(jiān)控系統(tǒng)的實(shí)現(xiàn)方式。

        基于PC的多媒體遠(yuǎn)程監(jiān)控系統(tǒng)一般由圖像信號(hào)采集、輸出控制、視頻圖像處理、信號(hào)傳輸、視頻圖像遠(yuǎn)程接收及遠(yuǎn)程控制等幾部分組成。

        “網(wǎng)絡(luò)攝像機(jī)”是一種可以用IP地址識(shí)別的、集攝像和圖像壓縮并按網(wǎng)絡(luò)協(xié)議傳輸圖像數(shù)據(jù)的智能攝像機(jī),它可以完成系統(tǒng)功能,而不會(huì)帶來額外的維護(hù)需求。在對(duì)視頻實(shí)時(shí)性要求不高的條件下,網(wǎng)絡(luò)攝像機(jī)可以滿足監(jiān)控要求。監(jiān)控中心服務(wù)器、監(jiān)視終端和網(wǎng)絡(luò)攝像機(jī)構(gòu)成一個(gè)Intranet網(wǎng),利用網(wǎng)絡(luò)協(xié)議提供的各種管理工具可以有效地管理各個(gè)監(jiān)控點(diǎn)的圖像信息。

        隨著生活節(jié)奏的加快和手持終端設(shè)備的普及,利用PC實(shí)現(xiàn)遠(yuǎn)程視頻監(jiān)控已經(jīng)不能滿足人們的需求了。近年來基于Android平臺(tái)的監(jiān)控系統(tǒng)層出不窮,但是大多軟件功能都不完善,偏向?qū)崟r(shí)監(jiān)控為主。

        然而,對(duì)于現(xiàn)在的大多數(shù)人而言,實(shí)時(shí)監(jiān)控占用了太大的時(shí)間和精力,正常情況下,用戶不可能進(jìn)行24小時(shí)的監(jiān)控。

        本系統(tǒng)將采用調(diào)時(shí)監(jiān)控的方法,結(jié)合現(xiàn)在遍布的wifi網(wǎng)絡(luò),利用IP地址可識(shí)別的攝像頭,將畫面存入服務(wù)器,用戶根據(jù)自己特有的密令進(jìn)行調(diào)用,從而滿足用戶真正的隨時(shí)隨地讀取監(jiān)控視頻。

        2.2 系統(tǒng)構(gòu)架

        本系統(tǒng)Android客戶端采用系統(tǒng)自帶的SQLite數(shù)據(jù)庫(kù),服務(wù)器端使用開源的MySQL數(shù)據(jù)庫(kù)。服務(wù)器端Servlet響應(yīng)HTTPRequest請(qǐng)求,通過Dao接口訪問后臺(tái)數(shù)據(jù)庫(kù),并將結(jié)果返回,Servlet獲取結(jié)果后,將視頻流發(fā)送至客戶端。為了使程序代碼簡(jiǎn)潔易懂,便于管理和二次開發(fā),系統(tǒng)采用MVC+DAO的設(shè)計(jì)模式及分層開發(fā)思想。系統(tǒng)組成如圖1-1所示。

        圖1-1 系統(tǒng)整體框架圖

        3.客戶端設(shè)計(jì)與實(shí)現(xiàn)

        本系統(tǒng)的客戶端分別由網(wǎng)絡(luò)通訊模塊、視頻解碼與顯示模塊等構(gòu)成。用戶登錄后,通過調(diào)時(shí)功能獲取相應(yīng)的視頻段名稱,由網(wǎng)絡(luò)通訊模塊接受來自服務(wù)器的數(shù)據(jù),對(duì)數(shù)據(jù)進(jìn)行解析,并將數(shù)據(jù)暫存于緩沖區(qū),之后由視頻解碼模塊負(fù)責(zé)從緩沖區(qū)中讀取數(shù)據(jù)并通過H.264解碼器進(jìn)行解碼。最后通過圖形庫(kù)將解碼后圖像繪制到屏幕上實(shí)現(xiàn)視頻播放。

        3.1 客戶端界面設(shè)計(jì)

        遠(yuǎn)程視頻監(jiān)控系統(tǒng)的客戶端界面設(shè)計(jì)主要由Android的GUI系統(tǒng)實(shí)現(xiàn)的,負(fù)責(zé)提供交互接口。GUI系統(tǒng)提供了Java語(yǔ)言框架和C語(yǔ)言框架組成,對(duì)下層通過調(diào)用顯示輸入、輸出設(shè)備將軟件與底層硬件聯(lián)系起來,對(duì)上層則提供了Java層次的繪圖接口。圖2-1為登錄界面運(yùn)行結(jié)果。

        圖2-1 登錄界面

        3.2 顯示模塊

        系統(tǒng)運(yùn)行時(shí)首先獲取Android平臺(tái)網(wǎng)絡(luò)環(huán)境,若網(wǎng)絡(luò)環(huán)境不是wifi網(wǎng)絡(luò),則以對(duì)話框的形式提醒用戶,避免造成流量損失。

        獲取Android終端wifi網(wǎng)絡(luò)環(huán)境的代碼如下:

        WifiManager wifiManager;

        wifiManager=(WifiManager)this.getSystemService(Service.WIFI_SERVICE);

        顯示模塊主要是用戶輸入查詢時(shí)間和反饋的查詢結(jié)果的顯示。為了提高用戶體驗(yàn),本系統(tǒng)利用Android的線程安全特性,運(yùn)用了多線程和異步等方式。其中客戶端請(qǐng)求并顯示的流程圖如3-1所示。

        圖3-1 客戶端請(qǐng)求與顯示流程圖

        Android客戶端連接后臺(tái)服務(wù)器的關(guān)鍵代碼如下:

        HttpPost request = HttpUtil.getHttp-

        Post(url);//根據(jù)url獲得HttpPost對(duì)象

        String result = null;

        try{//獲得響應(yīng)對(duì)象

        HttpResponse response=HttpUtil.getHttpResponse(request);

        // 判斷是否請(qǐng)求成功

        if(response.getStatusLine().getStatusCode()==200){

        result=EntityUtils.toString(res-

        ponse.getEntity());//獲得響應(yīng)

        return result;

        }

        }……

        3.3 網(wǎng)絡(luò)通訊模塊與視頻解碼模塊實(shí)現(xiàn)

        當(dāng)系統(tǒng)進(jìn)行網(wǎng)絡(luò)搜索時(shí),需要網(wǎng)絡(luò)連接,因此需要確定當(dāng)前網(wǎng)絡(luò)狀態(tài),程序會(huì)使用android.net.ConnectivityManager 類來檢查網(wǎng)絡(luò)連接,Android 系統(tǒng)是運(yùn)行在Linux 內(nèi)核上的,有自己的一套嚴(yán)格的安全及權(quán)限機(jī)制。由于本模塊要用到網(wǎng)絡(luò)連接和獲取網(wǎng)絡(luò)狀態(tài),這都需要具有相應(yīng)的權(quán)限,所以必須在AndroidMainifest.Xml中聲明所需的權(quán)限,否則無法正常運(yùn)行,且程序不會(huì)報(bào)錯(cuò),只能通過捕獲異常來發(fā)現(xiàn)這一問題。具體的聲明如下:

        允許應(yīng)用程序訪問( 獲?。?網(wǎng)絡(luò)信息。

        本系統(tǒng)服務(wù)器終端要接受來自監(jiān)控前端的視頻數(shù)據(jù),采用Socket網(wǎng)絡(luò)通信技術(shù)。在進(jìn)行Socket前必須對(duì)其進(jìn)(下轉(zhuǎn)第23頁(yè))(上接第19頁(yè))行初始化,創(chuàng)建Socket服務(wù)線程。當(dāng)監(jiān)聽產(chǎn)生后,主進(jìn)程負(fù)責(zé)不斷循環(huán)地監(jiān)聽接收到的請(qǐng)求并建立新的客戶連接,創(chuàng)建針對(duì)此Socket的通信進(jìn)程。其中的主要代碼如下:

        public class Socket ConnectionMana-

        gement

        {

        protected static Socket socket=null;

        public static boolean establishConnection(String ipAddress,int port)

        {

        try

        {

        socket = new Socket(InetAddress.getByName(ipAddress),port);

        }catch(UnknownHostException e)

        {

        //TODO Auto-generated catch block

        e.printStackTrace();

        } catch (IOException e)

        {

        //TODO Auto-generated catch block

        e.printStackTrace();

        }

        return socket.isConnected();

        }

        public static boolean isConnected()

        {

        if (socket != null)

        return socket.isConnected();

        else

        return false;

        }

        public static Socket getInstance()

        {

        return socket;

        }

        }

        本系統(tǒng)運(yùn)用的是H.264解碼技術(shù),它是在MPEG-4技術(shù)的基礎(chǔ)之上建立起來的,其編解碼流程主要包括5個(gè)部分:幀間和幀內(nèi)預(yù)測(cè)、變換和反變換、量化和反量化、環(huán)路濾波、熵編碼。

        技術(shù)實(shí)現(xiàn)是在Android操作系統(tǒng)上封裝編譯生成Android底層的動(dòng)態(tài)鏈接庫(kù),從而實(shí)現(xiàn)H.264標(biāo)準(zhǔn)解碼。這里采用X264解碼器,可對(duì)GIF格式圖像實(shí)時(shí)編碼。

        4.結(jié)論

        根據(jù)移動(dòng)終端的發(fā)展現(xiàn)狀和移動(dòng)用戶的需求,本文基于wifi網(wǎng)絡(luò)面向Android開發(fā)了遠(yuǎn)程視頻監(jiān)控平臺(tái),該系統(tǒng)目前仍在測(cè)試運(yùn)行中。通過在模擬器上仿真測(cè)試以及在Android手機(jī)終端上的實(shí)際檢測(cè),該系統(tǒng)運(yùn)行效果穩(wěn)定、整體性能較好。該系統(tǒng)能夠?yàn)橐苿?dòng)用戶提供方便、實(shí)用、靈活、快捷的遠(yuǎn)程監(jiān)控,具有非常實(shí)用的價(jià)值。隨著智能手機(jī)的普及和wifi網(wǎng)絡(luò)的發(fā)展,該系統(tǒng)具有廣泛的應(yīng)用前景。

        參考文獻(xiàn):

        [1]郭宏志著.Android應(yīng)用開發(fā)詳解[M].北京:電子工業(yè)出版社,2010,6.

        [2]吳亞峰,蘇亞光著.Android應(yīng)用案例開發(fā)大全[M].北京:人民郵電出版社,2011,9.

        [3]吳亞峰,索伊娜等著.Android核心技術(shù)與實(shí)例詳解[M].北京:電子工業(yè)出版社,2010,10.

        本文受清華攜手Google助力西部教育項(xiàng)目之大學(xué)生科技創(chuàng)新項(xiàng)目部分資助。

        作者簡(jiǎn)介:李巧巧,女,現(xiàn)就讀于青海大學(xué)計(jì)算機(jī)技術(shù)與應(yīng)用系,研究方向:計(jì)算機(jī)技術(shù)與應(yīng)用。

        猜你喜歡
        視頻監(jiān)控
        廣東地區(qū)輸電線路在線監(jiān)測(cè)技術(shù)應(yīng)用探究
        基于嵌入式Linux的視頻監(jiān)控系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)
        基于HTML5的視頻監(jiān)控微課設(shè)計(jì)淺析
        智能視頻檢索技術(shù)在校園安防建設(shè)中的發(fā)展應(yīng)用
        亚洲av高清一区二区在线观看| 人人妻人人玩人人澡人人爽| 亚洲日韩精品A∨片无码加勒比| 国产一区二区丁香婷婷| 免费在线观看草逼视频| 亚洲人不卡另类日韩精品| 中文字幕无码av波多野吉衣| 少妇人妻真实偷人精品视频| 无码av一区在线观看| 黄色大片国产精品久久| 日韩精品一区二区三区在线视频| 亚洲视频在线观看| 久久精品国产亚洲av高清漫画 | 精品视频一区二区三区日本| 欧美大胆性生话| 国产97色在线 | 亚洲| 在线观看日本一区二区| 日本高清免费播放一区二区| 精品视频在线观看日韩| 人妻少妇无码精品视频区| 97精品伊人久久大香线蕉| 欧美成人a视频免费专区| 亚洲精品中文字幕91| 中国孕妇变态孕交xxxx| 国产97色在线 | 亚洲| 亚洲黄色性生活一级片| 精品奇米国产一区二区三区| 人妻少妇被猛烈进入中文字幕| 中文字幕人妻中文| 亚洲婷婷丁香激情| 用力草我小逼视频在线播放| 东北熟妇露脸25分钟| 久久综合九色综合久99| 国产亚洲美女精品久久久| 久久高潮少妇视频免费| 久久亚洲中文字幕伊人久久大| 成人做爰69片免费看网站野花| 无码午夜人妻一区二区三区不卡视频 | 亚洲av无码国产精品永久一区| 日本一区午夜艳熟免费| 久久久诱惑一区二区三区 |