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

基于ARM?Linux的無(wú)線音視頻對(duì)講系統(tǒng)

2014-04-18 17:54:14鄒振華田敏索世昌藍(lán)世強(qiáng)趙雷李磊
現(xiàn)代電子技術(shù) 2014年7期

鄒振華+田敏+索世昌+藍(lán)世強(qiáng)+趙雷+李磊

摘 要: 該系統(tǒng)是以Linux作為操作系統(tǒng),并以S3C6410微處理器為硬件平臺(tái)的嵌入式應(yīng)用系統(tǒng)。系統(tǒng)采用CMOS攝像頭獲取圖像,通過(guò)WiFi無(wú)線傳輸;利用S3C6410獨(dú)特的MFC功能,實(shí)現(xiàn)H.264高速、高效率硬件壓縮和解壓;通信雙機(jī)采用多線程方式實(shí)現(xiàn)了音視頻實(shí)時(shí)傳輸;可在4.3寸的彩色液晶屏上顯示本機(jī)及遠(yuǎn)端機(jī)清晰的圖像;音頻與視頻可全雙工同步傳輸。該系統(tǒng)功能實(shí)用、操作簡(jiǎn)潔,能夠廣泛應(yīng)用于小型音視頻服務(wù)或網(wǎng)絡(luò)音視頻電子產(chǎn)品,可替代傳統(tǒng)對(duì)講系統(tǒng)。

關(guān)鍵詞: Linux; S3C6410; 嵌入式應(yīng)用系統(tǒng); WiFi; 音視頻; 全雙工

中圖分類(lèi)號(hào): TN911.73?34 文獻(xiàn)標(biāo)識(shí)碼: A 文章編號(hào): 1004?373X(2014)07?0018?03

Wireless audio and video intercom system based on ARM?Linux

ZOU Zhen?hua, TIAN Min, SUO Shi?chang, LAN Shi?qiang, ZHAO Lei, LI Lei

(College of Communication and Information Engineering, Xi′an University of Science and Technology, Xian 710600, China)

Abstract: The system takes Linux as the operating system, and uses S3C6410 microprocessor as the hardware platform of embedded application system. The images are obtained by CMOS camera and transmitted through WiFi. H.264 high speed, high efficiency hardware compression and decompression are realized with MFC function of S3C6410. The audio and video real?time transmission of two computers communication is realized through multithreading, thus the clear image of the machine and the remote machine can be displayed on the 4.3?inch color LCD screen, and the audio and video can be transmitted in full?duplex synchronous. Function of the system which can replace traditional intercom is practical, operational, and it can be widely used in small audio and video service or network audio and video electronic products.

Keywords: Linux; S3C6410; embedded application system; WiFi; audio and video; full duplex

0 引 言

隨著數(shù)字化和網(wǎng)絡(luò)化時(shí)代的到來(lái),尤其是寬帶無(wú)線網(wǎng)絡(luò)的發(fā)展,為音視頻這樣大數(shù)據(jù)量傳輸業(yè)務(wù)在無(wú)線網(wǎng)絡(luò)上的應(yīng)用提供了契機(jī)。同時(shí)由于音視頻獨(dú)特的感官特性,使其相關(guān)的應(yīng)用需求也變得越來(lái)越迫切。無(wú)線多媒體是多媒體和移動(dòng)通信這兩個(gè)領(lǐng)域的技術(shù)相互融合的產(chǎn)物,成為當(dāng)今通信領(lǐng)域的一個(gè)熱點(diǎn)。鑒于Linux內(nèi)核的開(kāi)源性,采用其作為操作系統(tǒng),從而使整個(gè)系統(tǒng)具有更好的實(shí)時(shí)性和穩(wěn)定性。整個(gè)系統(tǒng)以ARM11為核心處理器、采用新一代視頻編解碼標(biāo)準(zhǔn)H.264[1]進(jìn)行編譯碼,并通過(guò)無(wú)線網(wǎng)絡(luò)傳輸音視頻。它充分利用S3C6410微處理器內(nèi)部集成的多媒體編解碼器(Multi?Format video Codec,MFC),有效提高了系統(tǒng)的性?xún)r(jià)比。整個(gè)系統(tǒng)為無(wú)線多媒體音視頻的傳輸提供了一個(gè)好的解決方案,可廣泛應(yīng)用在遠(yuǎn)程監(jiān)控、視頻電話等各種領(lǐng)域,具有較好的實(shí)用價(jià)值和推廣應(yīng)用前景。

1 系統(tǒng)總體方案設(shè)計(jì)

通信雙方系統(tǒng)中音頻和視頻采集模塊負(fù)責(zé)采集模擬信號(hào),并將采集到的音視頻數(shù)據(jù)送到音視頻管理模塊,經(jīng)過(guò)壓縮處理,再加上數(shù)據(jù)包頭一起由WiFi發(fā)送到對(duì)方;對(duì)方接收到數(shù)據(jù)后,經(jīng)過(guò)相關(guān)處理,判斷音視頻幀類(lèi)型,再送往解壓縮處理模塊,恢復(fù)出音視頻數(shù)據(jù)。通信雙方設(shè)備均包含嵌入式音視頻管理模塊和無(wú)線收發(fā)模塊。無(wú)線WiFi收發(fā)模塊運(yùn)行在2.4 GHz頻段,符合IEEE 802.11b無(wú)線局域網(wǎng)協(xié)議標(biāo)準(zhǔn)。

2 系統(tǒng)硬件設(shè)計(jì)

系統(tǒng)硬件設(shè)計(jì)以ARM11為核心微處理器,主頻為532 MHz,能夠滿足實(shí)時(shí)處理的要求,其內(nèi)部集成有256 MB SDRAM、2 GB FLASH、音頻錄、放音接口、Camera視頻接口、無(wú)線WiFi接口、LCD接口、SD卡接口等,同時(shí)以開(kāi)源的Linux 2.6.28為內(nèi)核,yaffs2為根文件系統(tǒng),Qtopia 4.4.3作為用戶界面,為開(kāi)發(fā)調(diào)試和系統(tǒng)設(shè)計(jì)提供了良好的平臺(tái)。

2.1 音視頻采集模塊

音頻采用處理器內(nèi)部集成的IIS(Inter?IC Sound Bus)音頻接口和WM9714音頻芯片。IIS是飛利浦公司為數(shù)字音頻設(shè)備之間的音頻數(shù)據(jù)傳輸而定制的一種總線標(biāo)準(zhǔn)。在飛利浦公司的IIS標(biāo)準(zhǔn)中,既規(guī)定了硬件接口系統(tǒng),也規(guī)范了音頻數(shù)據(jù)的格式。基于此硬件及接口規(guī)范,實(shí)現(xiàn)了集成音頻輸出、Linein輸入和Mic輸入功能。

視頻采集使用的是OV9650CMOS攝像頭模塊,分辨率高達(dá)130萬(wàn)像素,可直接與OK6410開(kāi)發(fā)板的Camera接口相接。適用于高端消費(fèi)類(lèi)電子產(chǎn)品、工業(yè)控制、車(chē)載導(dǎo)航、多媒體終端、行業(yè)PDA、嵌入式教育培訓(xùn)、個(gè)人學(xué)習(xí)等。其結(jié)構(gòu)較簡(jiǎn)單,提供硬件驅(qū)動(dòng)程序,便于使用和調(diào)試。

2.2 無(wú)線傳輸模塊

本系統(tǒng)的無(wú)線傳輸模塊采用工作在2.4 GHz公共頻段的WiFi模塊來(lái)實(shí)現(xiàn),它遵循IEEE 802.11b/g網(wǎng)絡(luò)標(biāo)準(zhǔn),可用于在后期開(kāi)發(fā)中將終端接入Internet,其最高數(shù)據(jù)率為54 Mb/s,支持WinCE、Linux系統(tǒng)。室內(nèi)通信距離可達(dá)100 m,室外開(kāi)闊地可達(dá)300 m。只需要對(duì)ARM?Linux操作系統(tǒng)進(jìn)行簡(jiǎn)單的配置就可以由以太網(wǎng)連接模式轉(zhuǎn)化為雙機(jī)通信AD?HOC模式,在系統(tǒng)啟動(dòng)之后,設(shè)計(jì)了基于Qt[2]的窗口設(shè)計(jì),方便切換連接模式。

選用WiFi具有很好的可擴(kuò)展性,可以通過(guò)無(wú)線路由器的WiFi連接到廣域網(wǎng),具有很好的應(yīng)用前景。同時(shí)大多數(shù)手機(jī)等終端設(shè)備具有WiFi功能,后期還可以將軟件升級(jí)至Andriod系統(tǒng),方便開(kāi)發(fā)和移植。它減少了音視頻實(shí)時(shí)傳輸?shù)拈_(kāi)發(fā)成本和周期,也給現(xiàn)代移動(dòng)通信提供了一種新的音視頻通信方式。

WiFi的驅(qū)動(dòng)配置好后,應(yīng)用層和以太網(wǎng)接口模式編程完全相同。由于此設(shè)計(jì)音視頻數(shù)據(jù)量較大,不宜采用UDP,因?yàn)楫?dāng)數(shù)據(jù)量過(guò)大或傳輸信號(hào)不好時(shí),UDP會(huì)嚴(yán)重丟包,所以最終選擇面向連接的TCP傳輸協(xié)議,保證了系統(tǒng)音視頻有效傳輸。由于TCP是應(yīng)答時(shí)式傳輸數(shù)據(jù),在局域網(wǎng)內(nèi),無(wú)需考慮TCP丟包問(wèn)題,為實(shí)現(xiàn)系統(tǒng)功能提供了可靠的保障。

3 軟件設(shè)計(jì)

軟件分為用戶界面設(shè)計(jì)和數(shù)據(jù)處理、傳輸?shù)饶K的設(shè)計(jì)。

3.1 基于多線程的軟件總體設(shè)計(jì)

系統(tǒng)軟件架構(gòu)如圖1所示,它是音視頻單向采集、壓縮、傳輸、接收、解壓縮、處理回放音視頻流控制過(guò)程,各個(gè)模塊采用線程處理,由信號(hào)量處理線程間優(yōu)先級(jí)構(gòu)成循環(huán)的線程,有效地處理了音視頻數(shù)據(jù)流。系統(tǒng)各功能模塊化,便于修改和移植,代碼簡(jiǎn)短精悍。

圖1 軟件架構(gòu)

3.2 回音消除

系統(tǒng)開(kāi)始時(shí)出現(xiàn)回音和延時(shí)問(wèn)題,延時(shí)是由于采集傳輸過(guò)程中造成的,所以只能盡量縮短延時(shí),而無(wú)法做到即時(shí)播放,這也是此系統(tǒng)的缺陷之一。回音是由于延時(shí)造成的,文中最后采用開(kāi)源的Speex算法消除了回音。具體做法:將該算法編譯成庫(kù)文件,加入到Linux內(nèi)核,即可以使用Speex 的API函數(shù),實(shí)現(xiàn)音頻的回音消除。

3.3 嵌入式音視頻的同步

本文的基本思想是以視頻流為主媒體流,音頻流為從媒體流,視頻的播放速率保持不變,根據(jù)本地系統(tǒng)時(shí)鐘確定實(shí)際時(shí)間,通過(guò)調(diào)整音頻播放速度來(lái)達(dá)到音視頻同步。

首先選擇一個(gè)本地系統(tǒng)時(shí)鐘參考(LSCR),然后將LSCR發(fā)送到視頻解碼器和音頻解碼器,由這兩個(gè)解碼器根據(jù)各幀的PTS值對(duì)照本地系統(tǒng)時(shí)鐘,參考產(chǎn)生各幀準(zhǔn)確的顯示或回放的時(shí)間。也就是說(shuō),生成輸出數(shù)據(jù)流時(shí)依據(jù)本地參考時(shí)鐘上的時(shí)間給每個(gè)數(shù)據(jù)塊都打上時(shí)間戳(一般包括開(kāi)始時(shí)間和結(jié)束時(shí)間)。在播放時(shí),讀取數(shù)據(jù)塊上的時(shí)間戳,同時(shí)根據(jù)本地系統(tǒng)時(shí)鐘參考上的時(shí)間來(lái)安排播放。

整個(gè)系統(tǒng)的音視頻同步數(shù)據(jù)流程如圖2所示。

圖2 音視頻同步數(shù)據(jù)流程

4 音視頻通道管理

為了節(jié)約內(nèi)存資源,便于通道的管理,本設(shè)計(jì)采用分通道的線程池管理,音、視頻分別由自己的通道完成任務(wù)。

音視頻采集使用同一個(gè)線程處理,采用select系統(tǒng)調(diào)用,每執(zhí)行到此線程,就判斷音視頻設(shè)備是否就緒,若就緒即采集音頻或視頻到音視頻緩沖區(qū),再交給音視頻采集壓縮線程,最后再交給發(fā)送線程打包后采用TCP發(fā)送。需要說(shuō)明的是本設(shè)計(jì)線程之間均采用信號(hào)量完成線程間基于TCP的音視頻軟件架構(gòu)的同步管理。發(fā)送完以后進(jìn)入接收線程等待對(duì)方發(fā)音視頻數(shù)據(jù)。在接受端由接收線程接收到數(shù)據(jù)以后,判斷數(shù)據(jù)的包頭,再交由解壓縮處理線程處理,然后播放音視頻,再等待對(duì)方發(fā)數(shù)據(jù)到本機(jī)。

由于處理器的高速處理和高效率視頻硬件H.264解壓縮,使得整個(gè)系統(tǒng)實(shí)時(shí)性基本達(dá)到要求。嵌入式音視頻管理模塊實(shí)現(xiàn)了整個(gè)系統(tǒng)的統(tǒng)籌控制和實(shí)時(shí)處理,為音視頻數(shù)據(jù)管理提供可靠的保證。

5 結(jié) 語(yǔ)

目前基于嵌入式無(wú)線終端的視頻監(jiān)控產(chǎn)品由于無(wú)需布線、傳輸距離遠(yuǎn)、環(huán)境適應(yīng)能力強(qiáng),性能穩(wěn)定及通信便利等優(yōu)勢(shì)而倍受青睞,在安全監(jiān)察、巡查通信、施工聯(lián)絡(luò)、人員調(diào)配等場(chǎng)合發(fā)揮著不可替代的作用。本系統(tǒng)是基于嵌入式Linux的無(wú)線音視頻通信手持式終端,其體積較小、攜帶方便,采用鋰電池經(jīng)過(guò)開(kāi)關(guān)電源芯片降壓的方式給整個(gè)系統(tǒng)供電,其效率較傳統(tǒng)直流穩(wěn)壓大大提高。在戶外可視化娛樂(lè)、施工現(xiàn)場(chǎng)監(jiān)控、大型安保聯(lián)絡(luò)等場(chǎng)合均可使用,具有廣泛的應(yīng)用前景。

注:本文指導(dǎo)老師為吳延海。

參考文獻(xiàn)

[1] 畢厚杰.新一代視頻壓縮編碼標(biāo)準(zhǔn)H.264/AVC[M].北京:人民郵電出版社,2009.

[2] 陳爽.Linux與Qt程序設(shè)計(jì)[M].北京:清華大學(xué)出版社,2011.

[3] 馮國(guó)進(jìn).Linux驅(qū)動(dòng)程序開(kāi)發(fā)實(shí)例[M].北京:機(jī)械工業(yè)出版社,2011.

[4] 孫瓊.嵌入式Linux應(yīng)用程序開(kāi)發(fā)詳解[M].北京:人民郵電出版社,2006.

[5] 馮進(jìn)國(guó).嵌入式Linux驅(qū)動(dòng)程序設(shè)計(jì)從入門(mén)到精通[M].北京:清華大學(xué)出版社,2008.

[6] LOVE Robert.Linux內(nèi)核設(shè)計(jì)與實(shí)現(xiàn)[M].北京:機(jī)械工業(yè)出版社,2011.

[7] 孫更新.Linux內(nèi)核注釋[M].北京:中國(guó)鐵道出版社,2011.

[8] 劉學(xué)勇.Linux C編程從入門(mén)到精通[M].北京:電子工業(yè)出版社,2012.

[9] 寧方明.Linux系統(tǒng)管理[M].北京:人民郵電出版社,2012.

[10] 熊茂華.嵌入式Linux實(shí)時(shí)操作系統(tǒng)及應(yīng)用編程[M].北京:清華大學(xué)出版社,2011.

視頻采集使用的是OV9650CMOS攝像頭模塊,分辨率高達(dá)130萬(wàn)像素,可直接與OK6410開(kāi)發(fā)板的Camera接口相接。適用于高端消費(fèi)類(lèi)電子產(chǎn)品、工業(yè)控制、車(chē)載導(dǎo)航、多媒體終端、行業(yè)PDA、嵌入式教育培訓(xùn)、個(gè)人學(xué)習(xí)等。其結(jié)構(gòu)較簡(jiǎn)單,提供硬件驅(qū)動(dòng)程序,便于使用和調(diào)試。

2.2 無(wú)線傳輸模塊

本系統(tǒng)的無(wú)線傳輸模塊采用工作在2.4 GHz公共頻段的WiFi模塊來(lái)實(shí)現(xiàn),它遵循IEEE 802.11b/g網(wǎng)絡(luò)標(biāo)準(zhǔn),可用于在后期開(kāi)發(fā)中將終端接入Internet,其最高數(shù)據(jù)率為54 Mb/s,支持WinCE、Linux系統(tǒng)。室內(nèi)通信距離可達(dá)100 m,室外開(kāi)闊地可達(dá)300 m。只需要對(duì)ARM?Linux操作系統(tǒng)進(jìn)行簡(jiǎn)單的配置就可以由以太網(wǎng)連接模式轉(zhuǎn)化為雙機(jī)通信AD?HOC模式,在系統(tǒng)啟動(dòng)之后,設(shè)計(jì)了基于Qt[2]的窗口設(shè)計(jì),方便切換連接模式。

選用WiFi具有很好的可擴(kuò)展性,可以通過(guò)無(wú)線路由器的WiFi連接到廣域網(wǎng),具有很好的應(yīng)用前景。同時(shí)大多數(shù)手機(jī)等終端設(shè)備具有WiFi功能,后期還可以將軟件升級(jí)至Andriod系統(tǒng),方便開(kāi)發(fā)和移植。它減少了音視頻實(shí)時(shí)傳輸?shù)拈_(kāi)發(fā)成本和周期,也給現(xiàn)代移動(dòng)通信提供了一種新的音視頻通信方式。

WiFi的驅(qū)動(dòng)配置好后,應(yīng)用層和以太網(wǎng)接口模式編程完全相同。由于此設(shè)計(jì)音視頻數(shù)據(jù)量較大,不宜采用UDP,因?yàn)楫?dāng)數(shù)據(jù)量過(guò)大或傳輸信號(hào)不好時(shí),UDP會(huì)嚴(yán)重丟包,所以最終選擇面向連接的TCP傳輸協(xié)議,保證了系統(tǒng)音視頻有效傳輸。由于TCP是應(yīng)答時(shí)式傳輸數(shù)據(jù),在局域網(wǎng)內(nèi),無(wú)需考慮TCP丟包問(wèn)題,為實(shí)現(xiàn)系統(tǒng)功能提供了可靠的保障。

3 軟件設(shè)計(jì)

軟件分為用戶界面設(shè)計(jì)和數(shù)據(jù)處理、傳輸?shù)饶K的設(shè)計(jì)。

3.1 基于多線程的軟件總體設(shè)計(jì)

系統(tǒng)軟件架構(gòu)如圖1所示,它是音視頻單向采集、壓縮、傳輸、接收、解壓縮、處理回放音視頻流控制過(guò)程,各個(gè)模塊采用線程處理,由信號(hào)量處理線程間優(yōu)先級(jí)構(gòu)成循環(huán)的線程,有效地處理了音視頻數(shù)據(jù)流。系統(tǒng)各功能模塊化,便于修改和移植,代碼簡(jiǎn)短精悍。

圖1 軟件架構(gòu)

3.2 回音消除

系統(tǒng)開(kāi)始時(shí)出現(xiàn)回音和延時(shí)問(wèn)題,延時(shí)是由于采集傳輸過(guò)程中造成的,所以只能盡量縮短延時(shí),而無(wú)法做到即時(shí)播放,這也是此系統(tǒng)的缺陷之一。回音是由于延時(shí)造成的,文中最后采用開(kāi)源的Speex算法消除了回音。具體做法:將該算法編譯成庫(kù)文件,加入到Linux內(nèi)核,即可以使用Speex 的API函數(shù),實(shí)現(xiàn)音頻的回音消除。

3.3 嵌入式音視頻的同步

本文的基本思想是以視頻流為主媒體流,音頻流為從媒體流,視頻的播放速率保持不變,根據(jù)本地系統(tǒng)時(shí)鐘確定實(shí)際時(shí)間,通過(guò)調(diào)整音頻播放速度來(lái)達(dá)到音視頻同步。

首先選擇一個(gè)本地系統(tǒng)時(shí)鐘參考(LSCR),然后將LSCR發(fā)送到視頻解碼器和音頻解碼器,由這兩個(gè)解碼器根據(jù)各幀的PTS值對(duì)照本地系統(tǒng)時(shí)鐘,參考產(chǎn)生各幀準(zhǔn)確的顯示或回放的時(shí)間。也就是說(shuō),生成輸出數(shù)據(jù)流時(shí)依據(jù)本地參考時(shí)鐘上的時(shí)間給每個(gè)數(shù)據(jù)塊都打上時(shí)間戳(一般包括開(kāi)始時(shí)間和結(jié)束時(shí)間)。在播放時(shí),讀取數(shù)據(jù)塊上的時(shí)間戳,同時(shí)根據(jù)本地系統(tǒng)時(shí)鐘參考上的時(shí)間來(lái)安排播放。

整個(gè)系統(tǒng)的音視頻同步數(shù)據(jù)流程如圖2所示。

圖2 音視頻同步數(shù)據(jù)流程

4 音視頻通道管理

為了節(jié)約內(nèi)存資源,便于通道的管理,本設(shè)計(jì)采用分通道的線程池管理,音、視頻分別由自己的通道完成任務(wù)。

音視頻采集使用同一個(gè)線程處理,采用select系統(tǒng)調(diào)用,每執(zhí)行到此線程,就判斷音視頻設(shè)備是否就緒,若就緒即采集音頻或視頻到音視頻緩沖區(qū),再交給音視頻采集壓縮線程,最后再交給發(fā)送線程打包后采用TCP發(fā)送。需要說(shuō)明的是本設(shè)計(jì)線程之間均采用信號(hào)量完成線程間基于TCP的音視頻軟件架構(gòu)的同步管理。發(fā)送完以后進(jìn)入接收線程等待對(duì)方發(fā)音視頻數(shù)據(jù)。在接受端由接收線程接收到數(shù)據(jù)以后,判斷數(shù)據(jù)的包頭,再交由解壓縮處理線程處理,然后播放音視頻,再等待對(duì)方發(fā)數(shù)據(jù)到本機(jī)。

由于處理器的高速處理和高效率視頻硬件H.264解壓縮,使得整個(gè)系統(tǒng)實(shí)時(shí)性基本達(dá)到要求。嵌入式音視頻管理模塊實(shí)現(xiàn)了整個(gè)系統(tǒng)的統(tǒng)籌控制和實(shí)時(shí)處理,為音視頻數(shù)據(jù)管理提供可靠的保證。

5 結(jié) 語(yǔ)

目前基于嵌入式無(wú)線終端的視頻監(jiān)控產(chǎn)品由于無(wú)需布線、傳輸距離遠(yuǎn)、環(huán)境適應(yīng)能力強(qiáng),性能穩(wěn)定及通信便利等優(yōu)勢(shì)而倍受青睞,在安全監(jiān)察、巡查通信、施工聯(lián)絡(luò)、人員調(diào)配等場(chǎng)合發(fā)揮著不可替代的作用。本系統(tǒng)是基于嵌入式Linux的無(wú)線音視頻通信手持式終端,其體積較小、攜帶方便,采用鋰電池經(jīng)過(guò)開(kāi)關(guān)電源芯片降壓的方式給整個(gè)系統(tǒng)供電,其效率較傳統(tǒng)直流穩(wěn)壓大大提高。在戶外可視化娛樂(lè)、施工現(xiàn)場(chǎng)監(jiān)控、大型安保聯(lián)絡(luò)等場(chǎng)合均可使用,具有廣泛的應(yīng)用前景。

注:本文指導(dǎo)老師為吳延海。

參考文獻(xiàn)

[1] 畢厚杰.新一代視頻壓縮編碼標(biāo)準(zhǔn)H.264/AVC[M].北京:人民郵電出版社,2009.

[2] 陳爽.Linux與Qt程序設(shè)計(jì)[M].北京:清華大學(xué)出版社,2011.

[3] 馮國(guó)進(jìn).Linux驅(qū)動(dòng)程序開(kāi)發(fā)實(shí)例[M].北京:機(jī)械工業(yè)出版社,2011.

[4] 孫瓊.嵌入式Linux應(yīng)用程序開(kāi)發(fā)詳解[M].北京:人民郵電出版社,2006.

[5] 馮進(jìn)國(guó).嵌入式Linux驅(qū)動(dòng)程序設(shè)計(jì)從入門(mén)到精通[M].北京:清華大學(xué)出版社,2008.

[6] LOVE Robert.Linux內(nèi)核設(shè)計(jì)與實(shí)現(xiàn)[M].北京:機(jī)械工業(yè)出版社,2011.

[7] 孫更新.Linux內(nèi)核注釋[M].北京:中國(guó)鐵道出版社,2011.

[8] 劉學(xué)勇.Linux C編程從入門(mén)到精通[M].北京:電子工業(yè)出版社,2012.

[9] 寧方明.Linux系統(tǒng)管理[M].北京:人民郵電出版社,2012.

[10] 熊茂華.嵌入式Linux實(shí)時(shí)操作系統(tǒng)及應(yīng)用編程[M].北京:清華大學(xué)出版社,2011.

視頻采集使用的是OV9650CMOS攝像頭模塊,分辨率高達(dá)130萬(wàn)像素,可直接與OK6410開(kāi)發(fā)板的Camera接口相接。適用于高端消費(fèi)類(lèi)電子產(chǎn)品、工業(yè)控制、車(chē)載導(dǎo)航、多媒體終端、行業(yè)PDA、嵌入式教育培訓(xùn)、個(gè)人學(xué)習(xí)等。其結(jié)構(gòu)較簡(jiǎn)單,提供硬件驅(qū)動(dòng)程序,便于使用和調(diào)試。

2.2 無(wú)線傳輸模塊

本系統(tǒng)的無(wú)線傳輸模塊采用工作在2.4 GHz公共頻段的WiFi模塊來(lái)實(shí)現(xiàn),它遵循IEEE 802.11b/g網(wǎng)絡(luò)標(biāo)準(zhǔn),可用于在后期開(kāi)發(fā)中將終端接入Internet,其最高數(shù)據(jù)率為54 Mb/s,支持WinCE、Linux系統(tǒng)。室內(nèi)通信距離可達(dá)100 m,室外開(kāi)闊地可達(dá)300 m。只需要對(duì)ARM?Linux操作系統(tǒng)進(jìn)行簡(jiǎn)單的配置就可以由以太網(wǎng)連接模式轉(zhuǎn)化為雙機(jī)通信AD?HOC模式,在系統(tǒng)啟動(dòng)之后,設(shè)計(jì)了基于Qt[2]的窗口設(shè)計(jì),方便切換連接模式。

選用WiFi具有很好的可擴(kuò)展性,可以通過(guò)無(wú)線路由器的WiFi連接到廣域網(wǎng),具有很好的應(yīng)用前景。同時(shí)大多數(shù)手機(jī)等終端設(shè)備具有WiFi功能,后期還可以將軟件升級(jí)至Andriod系統(tǒng),方便開(kāi)發(fā)和移植。它減少了音視頻實(shí)時(shí)傳輸?shù)拈_(kāi)發(fā)成本和周期,也給現(xiàn)代移動(dòng)通信提供了一種新的音視頻通信方式。

WiFi的驅(qū)動(dòng)配置好后,應(yīng)用層和以太網(wǎng)接口模式編程完全相同。由于此設(shè)計(jì)音視頻數(shù)據(jù)量較大,不宜采用UDP,因?yàn)楫?dāng)數(shù)據(jù)量過(guò)大或傳輸信號(hào)不好時(shí),UDP會(huì)嚴(yán)重丟包,所以最終選擇面向連接的TCP傳輸協(xié)議,保證了系統(tǒng)音視頻有效傳輸。由于TCP是應(yīng)答時(shí)式傳輸數(shù)據(jù),在局域網(wǎng)內(nèi),無(wú)需考慮TCP丟包問(wèn)題,為實(shí)現(xiàn)系統(tǒng)功能提供了可靠的保障。

3 軟件設(shè)計(jì)

軟件分為用戶界面設(shè)計(jì)和數(shù)據(jù)處理、傳輸?shù)饶K的設(shè)計(jì)。

3.1 基于多線程的軟件總體設(shè)計(jì)

系統(tǒng)軟件架構(gòu)如圖1所示,它是音視頻單向采集、壓縮、傳輸、接收、解壓縮、處理回放音視頻流控制過(guò)程,各個(gè)模塊采用線程處理,由信號(hào)量處理線程間優(yōu)先級(jí)構(gòu)成循環(huán)的線程,有效地處理了音視頻數(shù)據(jù)流。系統(tǒng)各功能模塊化,便于修改和移植,代碼簡(jiǎn)短精悍。

圖1 軟件架構(gòu)

3.2 回音消除

系統(tǒng)開(kāi)始時(shí)出現(xiàn)回音和延時(shí)問(wèn)題,延時(shí)是由于采集傳輸過(guò)程中造成的,所以只能盡量縮短延時(shí),而無(wú)法做到即時(shí)播放,這也是此系統(tǒng)的缺陷之一。回音是由于延時(shí)造成的,文中最后采用開(kāi)源的Speex算法消除了回音。具體做法:將該算法編譯成庫(kù)文件,加入到Linux內(nèi)核,即可以使用Speex 的API函數(shù),實(shí)現(xiàn)音頻的回音消除。

3.3 嵌入式音視頻的同步

本文的基本思想是以視頻流為主媒體流,音頻流為從媒體流,視頻的播放速率保持不變,根據(jù)本地系統(tǒng)時(shí)鐘確定實(shí)際時(shí)間,通過(guò)調(diào)整音頻播放速度來(lái)達(dá)到音視頻同步。

首先選擇一個(gè)本地系統(tǒng)時(shí)鐘參考(LSCR),然后將LSCR發(fā)送到視頻解碼器和音頻解碼器,由這兩個(gè)解碼器根據(jù)各幀的PTS值對(duì)照本地系統(tǒng)時(shí)鐘,參考產(chǎn)生各幀準(zhǔn)確的顯示或回放的時(shí)間。也就是說(shuō),生成輸出數(shù)據(jù)流時(shí)依據(jù)本地參考時(shí)鐘上的時(shí)間給每個(gè)數(shù)據(jù)塊都打上時(shí)間戳(一般包括開(kāi)始時(shí)間和結(jié)束時(shí)間)。在播放時(shí),讀取數(shù)據(jù)塊上的時(shí)間戳,同時(shí)根據(jù)本地系統(tǒng)時(shí)鐘參考上的時(shí)間來(lái)安排播放。

整個(gè)系統(tǒng)的音視頻同步數(shù)據(jù)流程如圖2所示。

圖2 音視頻同步數(shù)據(jù)流程

4 音視頻通道管理

為了節(jié)約內(nèi)存資源,便于通道的管理,本設(shè)計(jì)采用分通道的線程池管理,音、視頻分別由自己的通道完成任務(wù)。

音視頻采集使用同一個(gè)線程處理,采用select系統(tǒng)調(diào)用,每執(zhí)行到此線程,就判斷音視頻設(shè)備是否就緒,若就緒即采集音頻或視頻到音視頻緩沖區(qū),再交給音視頻采集壓縮線程,最后再交給發(fā)送線程打包后采用TCP發(fā)送。需要說(shuō)明的是本設(shè)計(jì)線程之間均采用信號(hào)量完成線程間基于TCP的音視頻軟件架構(gòu)的同步管理。發(fā)送完以后進(jìn)入接收線程等待對(duì)方發(fā)音視頻數(shù)據(jù)。在接受端由接收線程接收到數(shù)據(jù)以后,判斷數(shù)據(jù)的包頭,再交由解壓縮處理線程處理,然后播放音視頻,再等待對(duì)方發(fā)數(shù)據(jù)到本機(jī)。

由于處理器的高速處理和高效率視頻硬件H.264解壓縮,使得整個(gè)系統(tǒng)實(shí)時(shí)性基本達(dá)到要求。嵌入式音視頻管理模塊實(shí)現(xiàn)了整個(gè)系統(tǒng)的統(tǒng)籌控制和實(shí)時(shí)處理,為音視頻數(shù)據(jù)管理提供可靠的保證。

5 結(jié) 語(yǔ)

目前基于嵌入式無(wú)線終端的視頻監(jiān)控產(chǎn)品由于無(wú)需布線、傳輸距離遠(yuǎn)、環(huán)境適應(yīng)能力強(qiáng),性能穩(wěn)定及通信便利等優(yōu)勢(shì)而倍受青睞,在安全監(jiān)察、巡查通信、施工聯(lián)絡(luò)、人員調(diào)配等場(chǎng)合發(fā)揮著不可替代的作用。本系統(tǒng)是基于嵌入式Linux的無(wú)線音視頻通信手持式終端,其體積較小、攜帶方便,采用鋰電池經(jīng)過(guò)開(kāi)關(guān)電源芯片降壓的方式給整個(gè)系統(tǒng)供電,其效率較傳統(tǒng)直流穩(wěn)壓大大提高。在戶外可視化娛樂(lè)、施工現(xiàn)場(chǎng)監(jiān)控、大型安保聯(lián)絡(luò)等場(chǎng)合均可使用,具有廣泛的應(yīng)用前景。

注:本文指導(dǎo)老師為吳延海。

參考文獻(xiàn)

[1] 畢厚杰.新一代視頻壓縮編碼標(biāo)準(zhǔn)H.264/AVC[M].北京:人民郵電出版社,2009.

[2] 陳爽.Linux與Qt程序設(shè)計(jì)[M].北京:清華大學(xué)出版社,2011.

[3] 馮國(guó)進(jìn).Linux驅(qū)動(dòng)程序開(kāi)發(fā)實(shí)例[M].北京:機(jī)械工業(yè)出版社,2011.

[4] 孫瓊.嵌入式Linux應(yīng)用程序開(kāi)發(fā)詳解[M].北京:人民郵電出版社,2006.

[5] 馮進(jìn)國(guó).嵌入式Linux驅(qū)動(dòng)程序設(shè)計(jì)從入門(mén)到精通[M].北京:清華大學(xué)出版社,2008.

[6] LOVE Robert.Linux內(nèi)核設(shè)計(jì)與實(shí)現(xiàn)[M].北京:機(jī)械工業(yè)出版社,2011.

[7] 孫更新.Linux內(nèi)核注釋[M].北京:中國(guó)鐵道出版社,2011.

[8] 劉學(xué)勇.Linux C編程從入門(mén)到精通[M].北京:電子工業(yè)出版社,2012.

[9] 寧方明.Linux系統(tǒng)管理[M].北京:人民郵電出版社,2012.

[10] 熊茂華.嵌入式Linux實(shí)時(shí)操作系統(tǒng)及應(yīng)用編程[M].北京:清華大學(xué)出版社,2011.

主站蜘蛛池模板: 91精品国产无线乱码在线| 欧美国产日产一区二区| 国内自拍久第一页| 天堂av综合网| 91精品情国产情侣高潮对白蜜| 色欲色欲久久综合网| 老司机精品久久| 99re热精品视频国产免费| 日韩中文精品亚洲第三区| 一级高清毛片免费a级高清毛片| 动漫精品啪啪一区二区三区| 最新加勒比隔壁人妻| 精品久久久无码专区中文字幕| 美女无遮挡免费网站| 亚洲动漫h| 亚洲综合18p| 亚洲欧美日韩成人高清在线一区| 天堂va亚洲va欧美va国产 | 麻豆国产原创视频在线播放| 无码精品国产dvd在线观看9久| 国产精品欧美激情| 中文字幕在线一区二区在线| 一级片免费网站| 国产亚洲精久久久久久无码AV| www欧美在线观看| 午夜激情婷婷| 国产粉嫩粉嫩的18在线播放91 | 免费在线视频a| 99在线视频精品| 午夜日b视频| 精品福利国产| 99九九成人免费视频精品 | 欧美α片免费观看| 亚洲A∨无码精品午夜在线观看| 婷婷亚洲天堂| 亚洲另类国产欧美一区二区| 久久综合国产乱子免费| 国产高潮流白浆视频| 免费观看国产小粉嫩喷水| 国产成人在线无码免费视频| 99热国产这里只有精品9九| 亚洲精品片911| 精品国产自在在线在线观看| 国产极品美女在线| 2022精品国偷自产免费观看| 亚洲天堂视频在线播放| 色综合激情网| 国产成人一级| 国产91丝袜在线观看| 刘亦菲一区二区在线观看| 国产精品亚洲片在线va| 国产无遮挡猛进猛出免费软件| 一级一级一片免费| 国内精自线i品一区202| 国产午夜精品一区二区三区软件| 国产黄网永久免费| 国产噜噜噜| 国产69精品久久| 日本精品视频一区二区| 国产精品区视频中文字幕| 亚洲一区二区三区在线视频| 国产导航在线| 四虎影视国产精品| 国产爽妇精品| 狠狠做深爱婷婷综合一区| 97在线公开视频| 伊人久久大线影院首页| 日本一区二区三区精品AⅤ| 日韩一级毛一欧美一国产 | 精品国产一二三区| 国产中文一区a级毛片视频| 亚洲第一页在线观看| 2018日日摸夜夜添狠狠躁| 日韩色图区| 性喷潮久久久久久久久| 久久国产高潮流白浆免费观看| 亚洲91在线精品| 日本高清成本人视频一区| 手机在线国产精品| 亚洲最新地址| 国产精品亚洲综合久久小说| V一区无码内射国产|