• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看

      ?

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

      2014-04-18 17:54鄒振華田敏索世昌藍(lán)世強趙雷李磊
      現(xiàn)代電子技術(shù) 2014年7期
      關(guān)鍵詞:全雙工音視頻

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

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

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

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

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

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

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

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

      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ī)范,實現(xiàn)了集成音頻輸出、Linein輸入和Mic輸入功能。

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

      2.2 無線傳輸模塊

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

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

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

      3 軟件設(shè)計

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

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

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

      圖1 軟件架構(gòu)

      3.2 回音消除

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

      3.3 嵌入式音視頻的同步

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

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

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

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

      4 音視頻通道管理

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

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

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

      5 結(jié) 語

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

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

      參考文獻

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

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

      [3] 馮國進.Linux驅(qū)動程序開發(fā)實例[M].北京:機械工業(yè)出版社,2011.

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

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

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

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

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

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

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

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

      2.2 無線傳輸模塊

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

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

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

      3 軟件設(shè)計

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

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

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

      圖1 軟件架構(gòu)

      3.2 回音消除

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

      3.3 嵌入式音視頻的同步

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

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

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

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

      4 音視頻通道管理

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

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

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

      5 結(jié) 語

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

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

      參考文獻

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

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

      [3] 馮國進.Linux驅(qū)動程序開發(fā)實例[M].北京:機械工業(yè)出版社,2011.

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

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

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

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

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

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

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

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

      2.2 無線傳輸模塊

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

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

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

      3 軟件設(shè)計

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

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

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

      圖1 軟件架構(gòu)

      3.2 回音消除

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

      3.3 嵌入式音視頻的同步

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

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

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

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

      4 音視頻通道管理

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

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

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

      5 結(jié) 語

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

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

      參考文獻

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

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

      [3] 馮國進.Linux驅(qū)動程序開發(fā)實例[M].北京:機械工業(yè)出版社,2011.

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

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

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

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

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

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

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

      猜你喜歡
      全雙工音視頻
      3KB深圳市一禾音視頻科技有限公司
      WIFI音視頻信號傳輸?shù)年P(guān)鍵問題探究
      RLS算法在同時同頻全雙工系統(tǒng)中的自干擾抑制性能分析
      淺析異構(gòu)密集網(wǎng)絡(luò)中干擾管理技術(shù)
      高速公路整合移動音視頻系統(tǒng)應(yīng)用
      同頻同時全雙工數(shù)字自干擾抵消算法
      5G全雙工技術(shù)淺析
      Roland專業(yè)音視頻新技術(shù)研討會在上海召開
      大宁县| 成武县| 沂南县| 宝丰县| 防城港市| 弥勒县| 黄大仙区| 太原市| 扎兰屯市| 宜兰市| 台山市| 祁门县| 房产| 昌江| 临清市| 湘潭县| 高邮市| 安阳县| 潜江市| 华池县| 安塞县| 承德县| 玉屏| 天峻县| 云霄县| 法库县| 双江| 常山县| 兰西县| 湟中县| 银川市| 清远市| 措美县| 崇文区| 嘉义市| 兴文县| 织金县| 安仁县| 衡阳市| 新绛县| 海晏县|