基于PXA255的VoIP语音传输系统研究

本系统选用GSM 06.10语音标准算法,该算法在1988年被确定为数字移动通信的语音编码标准,其编码速率为13kb/s,算法简单,运算量小,语音质量高,接近32kb/s的ADPCM(ITU-G.712)。
4 IP语音实时传输系统设计
本文采用Intel公司推出的PXA255处理器,该芯片专用于网络和多媒体。其最高工作频率可达400MHz,并带内存管理单元MMU和DSP协处理器,可方便与高清晰的彩色LCD接口,同时该芯片可扩展连接AC97音频芯片CS4201、高性能网络接口芯片LANC9196,可方便移植嵌入式Linux和图形界面等。
基于PXA255处理器的IP语音系统用方案具有如下优势:将先进的硬件技术和软件技术有机融合,充分利用PXA255和Linux的强大功能,克服了传统的基于单片机功能不足和基于PC的非实时性的缺点,具有实时性、低成本、小型化、专用化和高可靠性的优点,能让IP数字语音终端系统具有更好的可扩展性和可移植性,与ARM7或DSP的方案相比,在技术上同样具有一定优越性。
系统设计硬件框图见图4所示。

系统设计语音流程框图见图5。

将两个语音终端连接到局域网,分别设置其IP地址为192.168.0.100、192.168.0.101。整个软件的运行过程:在语音传输之前,首先由网络连接(通话双方的呼叫连接)模块进行呼叫连接,呼叫连接建立后,双方就可以进行接下来的语音通话,实现语音传输。
在送话方即发起会话的一方:语音首先通过麦克风进入系统,在语音录入与播放功能模块内进行录音,然后进入语音数据压缩、解压模块进行压缩,压缩后的语音数据打包后,以语音数据包的方式发送。
在受话方即接收会话的一方:通过网络传输过来的语音数据拆包后,首先进入语音数据缓存模块进行缓存,这种缓存方式可以保证语音回放连续和不失真,然后进入语音数据压缩与解压模块对其进行解压。经过语音解压缩过程以后,语音数据送入语音录入与播放功能模块内,通过扬声器进行播放,最终还原成语音。
测试过程中,我们使用RTP工具集rtptools-1.18中的rtpplay、rtpdump、rtpsend等命令截取语音实时传输模块在网络中的语音包,观察其RTP和RTCP报文,分析网络的当前状况等。网络的当前状况与语音传输延迟有很强的正相关性。网络状况好,传输延迟小,网络状况不好,传输延迟增大。
语音延时测试方法:因为语音传输的延迟时间在1s以内,用秒表或其他外设来测量,误差大、精度不高,所以我们基于软件的方式测量。通过在RTP工具集中设置一个计时器,计算时间差,记录端到端的语音延时。最后求平均值,延时数据见表2。测试分8组,每组10到40个延迟数据不等,表中数据为每组的延迟平均值。

8组的所有测试数据有210个,所有测试数据的平均延时计算过程:
(283*10+258*10+269*20+266*20+257*30+275*30+268*40+286*50)/210=271.86ms。
由计算可知,平均延时约为272ms。满足本文第三节中VoIP语音时延的上限300ms的要求。
6 小结
论文研究了IP语音传输系统的总体架构,实现了一个基于PXA255处理器的嵌入式IP电话终端硬件平台,为该平台建立了一个优化的嵌入式Linux环境,并研究基于GSM 06.10的语音编解码实现,设计了一个IP语音实时传输系统,实现了IP语音的网络实时传输功能,通过系统测试,语音时延符合工程要求,具有较好的实时性。
- 基于DSP在数字语音压缩系统中的应用(01-09)
- 基于DSP的多路语音实时采集与压缩处理系统设计(07-09)
- 基于Blackfin 533的SIP网络电话(09-22)
- 嵌入式Linux技术在工业控制网络中的应用(10-30)
- 基于嵌入式Linux的组态软件实时数据库的设计(02-01)
- 基于ARM+DSP的嵌入式Linux数控系统设计(11-18)
