OMAP5912的嵌入式無(wú)線(xiàn)組播通信設計
在完成必要的軟硬件初始化后,系統進(jìn)入QT界面控制程序,QT界面控制程序負責兩大功能:
本文引用地址:http://dyxdggzs.com/article/269122.htm?、僬Z(yǔ)音編解碼處理。如圖5所示,語(yǔ)音信號的處理是通過(guò)DSP55X內核完成。它采用雙線(xiàn)程處理。線(xiàn)程1負責語(yǔ)音編碼處理。此時(shí)DSP內核采用雙緩存機制保存ARM9送入的本地語(yǔ)音數據。它利用G729a定點(diǎn)編碼算法實(shí)現對語(yǔ)音的壓縮處理,然后送給ARM9內核。線(xiàn)程2負責語(yǔ)音解碼處理。ARM接收到的語(yǔ)音數據送入DSP內核后利用多用戶(hù)解碼算法恢復各個(gè)用戶(hù)的語(yǔ)音信息,然后回送給ARM9內核處理。

?、跓o(wú)線(xiàn)語(yǔ)音和聲卡數據的收發(fā)以及混音處理。它由ARM9內核完成。ARM9內核與DSP內核的通信是通過(guò)DSP Gateway雙核通信機制方式實(shí)現,由ARM9內核負責控制。對于語(yǔ)音編碼,ARM9負責把AIC23采集的緩存數據寫(xiě)入到DSP的編碼器中。編碼完的數據放入發(fā)送緩存單元,當發(fā)送緩沖區放滿(mǎn)之后,ARM端就會(huì )將數據通過(guò)網(wǎng)口發(fā)送出去。然后將編碼后的數據通過(guò)無(wú)線(xiàn)網(wǎng)卡發(fā)送出去。語(yǔ)音解碼與編碼過(guò)程相反,首先通過(guò)無(wú)線(xiàn)網(wǎng)卡接收其他用戶(hù)發(fā)送過(guò)來(lái)的比特流,并提取用戶(hù)信息,送入DSP端解碼,經(jīng)過(guò)解碼器解碼后,判別當前是否多用戶(hù)通信,如果是就啟動(dòng)混音程序,再輸出至音頻接口,變?yōu)槟M語(yǔ)音信號播放。
4 系統測試
測試系統采用3塊OMAP5912開(kāi)發(fā)板和對應的3塊無(wú)線(xiàn)網(wǎng)卡。無(wú)線(xiàn)網(wǎng)卡選用華碩網(wǎng)卡W167g,采用Ad-Hoc進(jìn)行組網(wǎng)。針對系統需求,需要測試系統的有效帶寬和語(yǔ)音延遲以及音質(zhì)。
系統的有效帶寬是保證多用戶(hù)語(yǔ)音通話(huà)的前提。這里利用Netperf軟件進(jìn)行分析,測試表明基于UDP的傳輸速度,兩點(diǎn)間的平均速度可達3.4 Mbps。
對于語(yǔ)音通信而言,基于A(yíng)IC23芯片的語(yǔ)音通信采樣速度是8 kHz,采用16比特單聲道采樣,所需帶寬為128 kbps。而G729a的壓縮率為16:1。故所需帶寬僅為8 kbps。因此,該無(wú)線(xiàn)網(wǎng)卡支持多用戶(hù)通信。
然后對語(yǔ)音音質(zhì)進(jìn)行測試,這里利用由Cooledit2000軟件進(jìn)行分析,如圖6所示,原始語(yǔ)音和采用G729a語(yǔ)音編解碼處理后的語(yǔ)音波形雖有所損傷,但基本一樣,從音質(zhì)效果上看,語(yǔ)音清晰,達到MOS=4的語(yǔ)音測試水平。

最后對系統語(yǔ)音延遲進(jìn)行測試,無(wú)線(xiàn)傳輸時(shí)語(yǔ)音數據每次發(fā)送4幀數據,每幀包含10 ms語(yǔ)音數據,系統整體延時(shí)約為60 ms,聽(tīng)者基本感覺(jué)不到延遲效應。
通過(guò)以上測試,系統可以正常工作,達到設計目標。
結語(yǔ)
本文設計了一套可供無(wú)線(xiàn)局域網(wǎng)內實(shí)時(shí)語(yǔ)音通信系統,它以OMAP5912作為系統硬件平臺,采用QT界面技術(shù)進(jìn)行管理。用戶(hù)可以方便地進(jìn)行多人通話(huà)。由于采用嵌入式方式進(jìn)行設計,適合于應急通信和臨時(shí)移動(dòng)會(huì )議等便攜式通信場(chǎng)合。
通信相關(guān)文章:通信原理
評論