基于PXA255的VoIP語音傳輸系統(tǒng)研究
摘要:文章研究IP語音傳輸系統(tǒng)的總體架構(gòu),實(shí)現(xiàn)了一個(gè)基于PXA255處理器的嵌入式IP電話終端硬件平臺(tái),為該平臺(tái)建立了一個(gè)優(yōu)化的嵌入式Linux環(huán)境,并研究基于GSM 06.10語音編解碼實(shí)現(xiàn),設(shè)計(jì)了一個(gè)IP語音實(shí)時(shí)傳輸系統(tǒng),實(shí)現(xiàn)了IP語音的網(wǎng)絡(luò)實(shí)時(shí)傳輸功能。
關(guān)鍵詞:語音壓縮;網(wǎng)絡(luò)電話;嵌入式Linux;實(shí)時(shí)傳輸
0 引言
VoIP是基于Internet的新型數(shù)字化傳輸技術(shù),是IP網(wǎng)上通過TCP/IP協(xié)議實(shí)現(xiàn)的一種電話應(yīng)用技術(shù)。這種應(yīng)用包括PC對PC、PC對電話、電話對電話等連接方式,其業(yè)務(wù)主要包括語音業(yè)務(wù)、E-mail、實(shí)時(shí)電話、實(shí)時(shí)傳真等多種形式。與傳統(tǒng)電話相比,IP電話的優(yōu)點(diǎn)主要是節(jié)省帶寬、通話費(fèi)用低、易于開發(fā)增值業(yè)務(wù)、體系結(jié)構(gòu)開放,有利于多種通信方式的統(tǒng)一。對VoIP技術(shù)的研究主要圍繞改善IP電話服務(wù)質(zhì)量來進(jìn)行,尤其是使用先進(jìn)的硬件技術(shù)、可靠的實(shí)時(shí)傳輸技術(shù)和能隨著網(wǎng)絡(luò)狀況自適應(yīng)調(diào)整速率的低速率語音編碼技術(shù)等研究及工程熱點(diǎn)。
研究與實(shí)現(xiàn)基于嵌入式處理器的VoIP語音傳輸系統(tǒng),可集成嵌入式系統(tǒng)、網(wǎng)絡(luò)通訊、多媒體和語音處理等應(yīng)用領(lǐng)域內(nèi)的前沿技術(shù),將嵌入式系統(tǒng)的高性能、低功耗、網(wǎng)絡(luò)通訊的低成本特性融合于一體,經(jīng)過進(jìn)一步完善后可以取代固定電話,并發(fā)展可視電話等信息終端,可以實(shí)現(xiàn)電話網(wǎng)、廣播電視網(wǎng)與Internet網(wǎng)的整合,具有很大的經(jīng)濟(jì)和技術(shù)優(yōu)勢。
1 PXA255嵌入式處理器
本文研究與設(shè)計(jì)的嵌入式IP數(shù)字語音系統(tǒng)將在以太網(wǎng)環(huán)境中工作。與目前大多數(shù)基于PC的IP電話終端相比,選擇嵌入式IP電話終端具有如下優(yōu)勢:
(1)嵌入式硬件平臺(tái)可以進(jìn)行裁減和定制,因而可以大幅降低IP電話終端成本;
(2)可以定制嵌入式軟件平臺(tái),容易升級(jí),實(shí)時(shí)性好,而基于PC機(jī)的IP電話占用資源多,操作系統(tǒng)復(fù)雜,容易死機(jī);
(3)嵌入式IP電話終端功耗低,可以使用電池進(jìn)行供電,因而系統(tǒng)具有小型化、便攜的特點(diǎn),這是PC所無法比擬的。
PXA255處理器是Intel公司帶ARM核的多媒體處理器。PXA255處理器的內(nèi)部功能模塊框圖見圖1所示。
PXA255處理器具有如下特色:核心頻率支持100~400MHz;多種系統(tǒng)存儲(chǔ)器接口;外設(shè)資源非常豐富:有PCMCIA/Compact Flash卡控制引腳、LCD控制器、全功能UART、USB客戶端、AC97控制器、15個(gè)靈活的GPIO引腳等。
2 VoIP的嵌入式Linux環(huán)境構(gòu)建
嵌入式IP吾音終端使用的嵌入式Linux平臺(tái)可分為三個(gè)層次:應(yīng)用軟件層次、Linux內(nèi)核層次和設(shè)備驅(qū)動(dòng)層次。其中平臺(tái)無關(guān)部分包括:Linux實(shí)時(shí)內(nèi)核、文件系統(tǒng)、應(yīng)用軟件等部分;平臺(tái)相關(guān)部分包括:硬件驅(qū)動(dòng)的改造和啟動(dòng)過程改造,我們需要針對不同平臺(tái)進(jìn)行代碼改造,
編寫各種驅(qū)動(dòng)。由圖2可知,Linux對各種設(shè)備的操作都是以文件的形式進(jìn)行的。
基于RTP協(xié)議的語音實(shí)時(shí)網(wǎng)絡(luò)傳輸軟件,位于Linux網(wǎng)絡(luò)結(jié)構(gòu)的Socket應(yīng)用層,如圖3所示。在嵌入式Linux平臺(tái)上利用Socket系統(tǒng)函數(shù)實(shí)現(xiàn)語音傳輸?shù)腞TP應(yīng)用。在具體編程時(shí),Linux平臺(tái)上可供選用的語言有C、C++等。在這里我們也采用C語言,并采用編譯器Arm-Linux-Gcc。
評論