专注SIP通讯产品与方案

网络电话语音处理技术

        IP网络中的语音处理主要需解决两个问题:是在保证一定语音质量的前提下尽可能降低编码比特率;二是在IP网络环境下保证一定的通话质量。前者主要是语音编码技术和静音检测;后者包括分组丢失补偿、消除抖动和回波抵消技术
1、低比特率语音编码
      选择语音编码算法需要考虑四个方面的问题:编码比特率、语音质量、时延和算法复杂度。一般说来这些指标是有矛盾的,比特率越低,线路利用率越高,但语音质量会受到影响;在同样比特率情况下,算法设计越复杂,语音质量会有所提高,但处理时延将增加。因此,采用什么类型的编码方案和算法,要根据实际需要在上述四个指标中取得某种折中目前在PSTN中广泛应用的是PCM语音编码,采用的是波形编码技术,PCM语音编码的比特率为64kbit/s,受波形编码类型技术的限制,一般说来,这类编码的最低比特率为32kbit/s,即 ADPCM。若要进一步降低其比特率,特别是要实现低于16kbit/s的低比特率编码,必须采用新的编码技术。网络电话采用参数编码技术,参数编码通过模拟人的发声器官,提取模型参数来降低语音信息编码率。这种技术很早就提出了,过去由于算法过于复杂而无法实用,直至高性能的数字信号处理(DSP)专用芯片的研制成功才使其得到广泛的使用。目前网络电话一般使用ITUT定义的低比特率编码标准,其比特率为5.3~16kbi/s,均为中、低复杂度编码算法,语音分组长度在30ms以下,语音质量较好。
        目前,主要采用的网络电话编码技术有ITUT定义的G.729、G.723(G.723.1)等其中G.729可将经过采样的64kbit/s语音以几乎不失真的质量压缩至8kbit/s,很适合在VoIP系统中使用。G.723.1采用5.3/6.3kbit/s双速率语音编码,其语音质量好,但是处理时延较大,它是目前已标准化的最低速率的语音编码算法
2、静音检测
用户打电话时,并不是总在占用通话信道,双方都有讲话的时间、听对方讲话的时间思考停顿的时间以及在讲话过程中的停顿时间。根据传统电话业务的统计,一方用户实际占用通话信道的时间不会超过整个通话时间的40%。在网络电话业务中也存在这个问题。由于网络电话业务是将语音信号转化为语音分组发送,在用户没有讲话时,可以不发送语音分组,从而进一步降低语音比特率。这是通过检测用户是否发音来实现的,即当用户的语音信号能量低于一定门限值时就认为是静默状态,不再发送语音分组。在进行静音检测时有两个问题需要注意:一是背景噪声问题,即如何在较大的背景噪
声中检测静音;二是“前后沿剪切”( clipping)问题。所谓前后沿剪切就是还原语音时,由于从用户开始讲话到编码器检测到语音信号之间有一定的判断门限和时延,有时语音波形的开始和结束部分会作为静音被丢掉,因此需要在突发语音分组前面或后面增加一个语音分组进行平滑以解决这一问题。
在实际使用中,如果出现长时间的静默,会使用户感到很不自然。因此实际上发送端常常会在静音期间发送反映背景噪声特点的分组,使接收端能生成背景噪声,即所谓的舒适噪声。
3、分组丢失补偿
IP网络是按照“尽力传送”的原则传送分组,它无法避免由于传输时延或网络拥塞等原因造成分组被丢弃,有时线路误码或者网络路由故障也会导致分组丢失。由于接收端网关的低比特率声码器采用线性预测编码技术,其当前值是通过以前的历史值线性组合而得,因此在丢失一个语音分组时,可通过内插的方法近似地恢复丢失分组。ITUT定义的标准语音编码的建议中,已经在解码器部分中包含了分组丢失补偿这功能。但在实际使用中,如果网络电话语音分组连续丢失两个以上,则表明此时网络连接状态很差,即使使用分组丢失补偿功能,通话效果也会比较差,但由于语音通信对分组丢失的容忍度远比数据通信强,所以一般情况下通话质量仍然可以接受。
4、回波抵消
对于PC到PC的通话来说,由于语音信号的接收和发送经由不同的物理线路,因此不存在回音的问题。如果IP网和PSTN互连,通信双方至少有一方是二线制电话,涉及有混合线圈的2/4线转换电路,就会产生回音。其原理如图1-2-1所示。从理论上说,当混合线圈的阻抗完全平衡时,混合线圈对端间的阻抗应为无穷大,这样网络电话发出的语音信号只能送到PSTN电话,不会串到对端。可是实际上混合线圈很难做到完全平衡,这样一部分信号将漏到对端返回网络电话,如果传输时延较长,发话者就会感到明显的回声,严重干扰通话。由于IP网络时延较大,因此必须采用回波控制。
回波产生机理
回波产生机理
目前回波控制均采用回波抵消方法,即通过自适应方法估计回波信号的大小,然后在接收信号中减去此估计值。这种方法虽然比较复杂,但是已有专用芯片推出,因此得到广泛的应用。在IP网络和PSTN互通的情况下,回波抵消功能一般由网关完成。
5、处理语音时延抖动的技术
IP网络的一个特征就是网络时延与网络时延抖动,这可能导致IP电语音质下降。网络时延是指一个IP包在网络上传输平均所需的时间,网络时延抖动是指IP包传输时间的长短变化。为了消除时延抖动,一般采用抖动缓冲技术,即在接收端设定一个较大的缓冲池缓存接收到的语音包,然后从缓冲池中均匀地取出语音包解压,播放给受话者。这种缓冲技术可以在一定限度内有效地处理语音时延抖动,并提高音质;但这又会带来附加的时延。