节点文献

中速率语音编解码算法在VoIP系统中的定点DSP实现

Implementation of Middle-Bitrate Audio Codecs on Fixed Point DSP Chip in VoIP System

【作者】 黄晶

【导师】 黄孝建;

【作者基本信息】 北京邮电大学 , 通信与信息系统, 2008, 硕士

【摘要】 VoIP业务是当前计算机网络技术和通信技术研究的热点之一,也是因特网增长最快的业务之一,指的是以数据封包的形式在IP分组网络的环境下进行语音信号的传输。与传统的电路交换网络相比,IP分组网络存在带宽资源有限,丢包和延时抖动的问题,因此需要研究和实现适合于分组网络传输环境的语音编解码算法,来完成VoIP中的终端编解码功能。通过对各种语音算法的分析和研究发现,ILBC、Speex等语音编解码算法不仅编码速率低,而且有多种模式可以根据网络状况灵活选择,同时增加了丢包隐藏,去延时抖动等模块,非常适用于因特网上的语音传输。另外ILBC、Speex算法不需要交专利费,因此有很大的商业应用价值。根据对语音编码器的分类标准,编码速率介于4.6kb/s~24kb/s的语音编码器称为中速率语音编码器,因此ILBC,G729以及Speex大部分模式下的编码算法均为中速率语音编码算法。课题以研究和实现以ILBC为主的适合于分组网络的几种中速率语音编解码算法为目标,借助PalmADSP、Visual C++等仿真和开发软件,经过了由浮点C语言代码到定点C语言代码,再到定点DSP代码的转换过程,并对代码进行了系统的测试和优化,最后将代码嵌入到DSP芯片中,完成了算法向DSP芯片的搬移。工程实践中主要解决了以下两个问题:一、定点化过程中,如何选择合适的定标值以保证数据的动态范围和精度,二、在芯片的数据存储空间和程序存储空间有限的情况下,如何对代码进行系统的优化以提高程序执行效率,压缩数据和代码占用的空间。最终,课题通过ILBC等算法的定点化工作总结出了一套适用于各种语音算法的定点化方法,并通过具体的工程实践提出了针对DSP开发和应用的代码转换和优化方法。在AR168G话机上的实际通话测试结果表明,课题中实现的几种语音算法能很好地运用于VoIP系统,对各种网络状况具有很好的适应性,获得了良好的通话质量。

【Abstract】 VoIP is one of the hottest topics of computer network and communication technologies and one of the fastest growing Internet businesses at present. It is to transport speech signals in the form of packets through the IP packet switched network. Different from traditional circuit switched network, there are several problems exist in the packet switched network, such as limited bandwidth, packet loss and delay jittering, so we need to analyze and realize audio coding/decoding algorithms which are more suitable for the packet switched network, add some extra modules to deal with different network situations and implement these algorithms on IP phones in VoIP system. By analyzing different kinds of audio algorithms, we found that audio codecs such as ILBC and Speex had a low bit-rate and several modes to be selected according to different network situations; they also add some extra modules such as packet loss concealment and de-jittering. So these codecs are very suitable to transmit speech signals through internet. In addition, ILBC and Speex algorithms are open source and free, so they have great business value.According to the classifying standard of audio codecs, codec with bit-rate between 4.6kb/s~24kb/s is called middle-bitrate codec. So ILBC, G729 and most modes of Speex are middle-bitrate codecs. In this paper we aimed at analyzing and realizing middle-rate audio codecs such as ILBC, G729 and Speex which were better for the packet switched network with the simulating and developing tools such as PalmADSP, and Visual C++. Through the process of converting float point C codes to fixed point C codes, translating C codes to DSP codes, embedding the codes into DSP chips and executing system testing and optimization, we finally implemented these algorithms on DSP chips. During practical work, we solved two problems: how to choose a proper fixed point transforming scheme to assure data range and precision and how to enhance the efficiency of code execution while compressing the data and code space as much as possible for the limited data and program memory of DSP chip. Finally in this paper, we summarized some general float-point codes to fixed-point codes transforming methods through the fixed-point code transforming work of ILBC algorithm and put forward some useful C codes to DSP codes translating and optimizing methods for the development of DSP applications. Results of implementation on AR168G phones indicate that audio algorithms realized in the VoIP system could adapt to different network situations and gain good communication quality.

  • 【分类号】TN916
  • 【被引频次】2
  • 【下载频次】193
节点文献中: