基于Android系統(tǒng)的H.264視頻壓縮技術(shù)實(shí)現(xiàn)
3 軟件設(shè)計(jì)概述
Android的系統(tǒng)構(gòu)架分為應(yīng)用層、應(yīng)用框架層、系統(tǒng)運(yùn)行庫(kù)和IJnux內(nèi)核層,Android應(yīng)用程序的開發(fā)通過應(yīng)用框架與Android底層進(jìn)行交互。技術(shù)實(shí)現(xiàn)設(shè)計(jì)采用模塊化設(shè)計(jì)方案,主要包括底層驅(qū)動(dòng)移植模塊、視頻采集模塊、視頻壓縮傳輸模塊和視頻顯示模塊。
基于Android的視頻服務(wù)器系統(tǒng)主要包括監(jiān)控前端、中間網(wǎng)絡(luò)和監(jiān)控終端。監(jiān)控前端的USB攝像頭采集視頻數(shù)據(jù),Android應(yīng)用層調(diào)用封裝的JNI庫(kù)進(jìn)行標(biāo)準(zhǔn)的H.264壓縮,經(jīng)過網(wǎng)絡(luò)打包發(fā)送給監(jiān)控終端,終端通過解碼實(shí)時(shí)查看視頻。其中流媒體服務(wù)器主要由3層結(jié)構(gòu)組成:服務(wù)器、網(wǎng)絡(luò)服務(wù)接口和驅(qū)動(dòng)模塊,如圖3所示。本文引用地址:http://m.butianyuan.cn/article/165986.htm
3.1 操作系統(tǒng)結(jié)構(gòu)
Android作為終端操作系統(tǒng),其軟件層次自下而上分為:基于Linux內(nèi)核的操作系統(tǒng)層,各種庫(kù)和Android運(yùn)行環(huán)境,應(yīng)用程序框架和應(yīng)用程序。結(jié)構(gòu)圖如圖4所示。
(1)應(yīng)用程序。應(yīng)用程序包括Email客戶端,SMS短消息程序,日歷,地圖,瀏覽器,聯(lián)系人管理程序等。所有應(yīng)用程序均使用Java語(yǔ)言編寫。
(2)應(yīng)用程序框架。應(yīng)用程序架構(gòu)設(shè)計(jì)簡(jiǎn)化了組件的重用;任一個(gè)應(yīng)用程序都可以發(fā)布功能塊并且其它應(yīng)用程序都可以使用其所發(fā)布的功能塊。
(3)系統(tǒng)運(yùn)行庫(kù)。當(dāng)使用Android應(yīng)用框架時(shí),Android系統(tǒng)會(huì)通過一些C/C++庫(kù)來支持使用的各個(gè)組件,使其能更好地服務(wù)。其中包括Bionic系統(tǒng)C庫(kù),多媒體庫(kù),關(guān)系數(shù)據(jù)庫(kù)SQLite,Web瀏覽器引擎Webkit等。
(4)Linux內(nèi)核。Android的核心系統(tǒng)依賴于Linux 2.6內(nèi)核,它同時(shí)也是硬件和軟件之間的抽象層。此外Android對(duì)其做了部分修改,主要涉及兩部分。Binder(IPC):提供有效的進(jìn)程間通信,實(shí)現(xiàn)了自己的功能;電源管理:主要為省電,作為手持終端設(shè)備低耗電是追求目標(biāo)。
評(píng)論