一种基于延时抖动的丢包补偿方法及系统技术方案

技术编号:13293598 阅读:69 留言:0更新日期:2016-07-09 11:27
本发明专利技术涉及数据通讯领域,公开了一种基于延时抖动的丢包补偿方法及系统。与现有技术相比,本发明专利技术的实施方式先判断接收的语音数据是否存在丢帧,并在丢帧时发出丢帧指示;紧接着,根据丢帧指示在丢帧前缓存的语音数据中填充N帧冗余帧,使得缓存延时增加,从而获取丢帧后缓存的语音数据;然后,根据丢帧前缓存的语音数据及丢帧后缓存的语音数据进行丢帧补偿,使得补偿还原的语音更加精确;最后,接收端丢弃缓存中的N帧非语音帧,从而减去缓存中增加的延时,达到延时恢复的效果,其中,N为自然数。

【技术实现步骤摘要】

本专利技术涉及数据通讯领域,特别涉及一种基于延时抖动的丢包补偿方法及系统
技术介绍
丢包补偿(PacketLossConcealment,“PLC”)算法,也称为帧差错隐藏(FrameErasureConcealment,“FEC”)算法。在语音通信中由于网络质量的问题可能会导致语音数据丢失,出现大块的语音流数据消失。这个时候会导致语音戛然而止的听觉效应,造成语音的不连续。如果这个时候能估计出丢失的语音数据来补偿这些丢失的数据的话,那么就能消除由于语音丢失带来的语音质量损失。这也是PLC的基本功能,即估计丢失的语音信号,并填充语音流的缺失部分。丢包补偿主要用于在编码打包,然后通过网络传输,在接收端解码的音频系统,如果在该过程中存在丢包现象,则进行丢包补偿。很多基于标准的码本激励线性预测(CodeExitedLinearPrediction,“CELP”)的语音编解码器,都有丢包补偿功能。如:G.729,自适应速率编解码器(AdaptiveMulti-Rate,“AMR”),efr等。但对于一些非CELP编码的编解码器是不存在丢包补偿算法的,如:G.711、G.722等。所以这些编解码器需要使用丢包补偿算法。那么如何估计丢失的语音部分?这得益于语音具有一个短时平稳性,可以根据其邻近的信号进行估计出来。根据CELP的观点,语音的产生有两部分:声道和激励源。可以抽象为语音算法模型:语音的激励信号有两种:一种是周期激励信号源,另外一种是随机激励(白噪声)。这两者信号组成了信源激励e(n)。声道主要通过极点模型来建模,通过线性预测来提取声道参数。由激励信号通过合成滤波器最终产生语音信号。通过这个基本的发声模型和语音的短时平稳特性就可以预测丢失的语音信号部分。这里需要估计出两个部分:一、线性预测系数(Linearpredictioncoefficient);二、激励信号。这些都可以通过邻近的信号进行估计。现有的PLC算法中大部分都是采用外推法(Extrapolation),采用这种方法的好处是不会引入延时,但由于只能从丢帧之前的语音数据获得信息十分有限,很难获得未来的趋势变化,如:基音,幅度等。所以外推法能预测的帧数是非常少的,一旦预测帧数变多,会导致估计不准确影响语音质量。但也有采用内插法(Interpolation)差错隐藏算法,该算法不仅可以有效利用丢帧前的语音信息还可以利用丢帧结束后的语音信息对丢失的语音帧进行联合估计,能够更加精确的还原丢失的语音。但由于采用内插法需要缓存一定的数据,会导致语音通信声音的延时,而且延时与最大能够内插的帧数相关,随着内插帧数变多,延时会进一步增大。
技术实现思路
本专利技术的目的在于提供一种基于延时抖动的丢包补偿方法及系统,通过语音缩放技术,解决采用内插技术的差错隐藏算法中的延时过长问题。为解决上述技术问题,本专利技术的实施方式提供了一种基于延时抖动的丢包补偿方法,包含以下步骤:接收端判断接收的语音数据是否存在丢帧,并在丢帧时发出丢帧指示;所述接收端根据所述丢帧指示在丢帧前缓存的语音数据中填充N帧冗余帧,并获取丢帧后缓存的语音数据;所述接收端根据所述丢帧前缓存的语音数据及丢帧后缓存的语音数据进行丢帧补偿;所述接收端丢弃缓存中的N帧非语音帧,其中,N为自然数。本专利技术的实施方式还提供了一种基于延时抖动的丢包补偿系统,包含:判断模块、缓存管理模块、冗余帧填充模块、丢帧补偿模块及延时恢复模块。所述判断模块用于判断接收的语音数据是否存在丢帧,并在丢帧时向所述缓存管理模块发出丢帧指示;所述缓存管理模块用于接收所述丢帧指示,根据所述丢帧指示控制所述冗余帧填充模块在丢帧前缓存的语音数据中填充N帧冗余帧,并获取丢帧后缓存的语音数据;所述丢帧补偿模块用于根据丢帧前缓存的语音数据及丢帧后缓存的语音数据进行丢帧补偿;所述延时恢复模块用于在丢帧补偿后,丢弃缓存中的N帧非语音帧,其中,N为自然数。本专利技术实施方式相对于现有技术而言,通过在丢帧前缓存的语音数据中填充N帧冗余帧,使缓存延时增加,从而获取丢帧后缓存的语音数据,再通过结合丢帧前、后缓存的语音数据对丢失的语音数据进行补偿还原,使得补偿还原的语音更加精确。同时,在对丢帧部分的语音数据进行补偿还原后,丢弃缓存中的N帧非语音帧,从而减去缓存中增加的延时,达到延时恢复的目的。进一步地,所述缓存包括初始状态、结束状态及N种转移状态;所述冗余帧的填充只在转移状态中进行。由于缓存可能会出现各种缓存状态,因此将缓存可能出现的各种状态进行分类,即有利于简化缓存状态的管理,也保证了缓存状态不发散成无限的可能性。进一步地,所述每种转移状态分别对应一种生成状态;所述丢帧补偿只在生成状态或结束状态中进行。有利于简化缓存状态的管理。进一步地,在所述接收端根据所述丢帧指示在丢帧前缓存的语音数据中填充N帧冗余帧的步骤中,包括以下子步骤:对填充冗余帧的位置的前一帧语音数据进行语音类型Classp的判断,并输出判断结果;对所述填充冗余帧的位置的前一帧语音数据进行长时预测LTP,计算基音周期TP;对所述填充冗余帧的位置的前一帧语音数据进行线性预测LP,计算线性预测滤波器的系数,并通过分析所述线性预测滤波器计算出残差信号e(n);根据对所述填充冗余帧的位置的前一帧语音数据的语音类型判断结果和基音周期TP对残差信号e(n)进行修改,生成新的残差信号e′(n);将所述新的残差信号e′(n)通过综合滤波器,生成补偿信号p′(n);将所述补偿信号p′(n)通过信号同步器,获得与下一帧同步的补偿信号p(n),所述补偿信号p(n)为填充的冗余帧。由于不同的语音类型,其稳态的时间不一样,因此对语音进行精确的分类,有助于提高丢帧补偿的效果。信号同步器的使用可以防止填充的冗余帧由于是非整数基音周期而导致与填充之后的语音数据不同步的现象。进一步地,在所述接收端根据所述丢帧前缓存的语音数据及丢帧后缓存的语音数据进行丢帧补偿的步骤中,包含以下子步骤:根据所述丢帧前缓存的语音数据x(n),生成后向估计信号y1(n);根据所述丢帧后缓存的语音数据z(n),生成前向估计信号y2(n);对所述后向估计信号y1(n)及前向估计信号y2(n)进行交叉衰减,获取缓存中丢帧部分的语音数据y(n),对缓存中的丢帧部分进行填充。在补偿还原衔接的地方由于基音周期的变动会导致衔接处的语音数据出现不同步本文档来自技高网
...

【技术保护点】
一种基于延时抖动的丢包补偿方法,其特征在于,包含以下步骤:接收端判断接收的语音数据是否存在丢帧,并在丢帧时发出丢帧指示;所述接收端根据所述丢帧指示在丢帧前缓存的语音数据中填充N帧冗余帧,并获取丢帧后缓存的语音数据;所述接收端根据所述丢帧前缓存的语音数据及丢帧后缓存的语音数据进行丢帧补偿;所述接收端丢弃缓存中的N帧非语音帧,其中,N为自然数。

【技术特征摘要】
1.一种基于延时抖动的丢包补偿方法,其特征在于,包含以下步骤:
接收端判断接收的语音数据是否存在丢帧,并在丢帧时发出丢帧指示;
所述接收端根据所述丢帧指示在丢帧前缓存的语音数据中填充N帧冗
余帧,并获取丢帧后缓存的语音数据;
所述接收端根据所述丢帧前缓存的语音数据及丢帧后缓存的语音数据
进行丢帧补偿;
所述接收端丢弃缓存中的N帧非语音帧,其中,N为自然数。
2.根据权利要求1所述的基于延时抖动的丢包补偿方法,其特征在于,
所述缓存包括初始状态、结束状态及N种转移状态;
所述冗余帧的填充只在转移状态中进行。
3.根据权利要求2所述的基于延时抖动的丢包补偿方法,其特征在于,
所述每种转移状态分别对应一种生成状态;
所述丢帧补偿只在生成状态或结束状态中进行。
4.根据权利要求3所述的基于延时抖动的丢包补偿方法,其特征在于,
在所述接收端丢弃缓存中的N帧非语音帧的步骤中,
所述接收端丢弃处于生成状态或结束状态的缓存中的N帧非语音帧。
5.根据权利要求3所述的基于延时抖动的丢包补偿方法,其特征在于,
在所述接收端根据所述丢帧前缓存的语音数据及丢帧后缓存的语音数据进
行丢帧补偿的步骤之前,还包含以下步骤:
所述接收端判断所述缓存所处的状态;
在所述接收端根据所述丢帧前缓存的语音数据及丢帧后缓存的语音数

\t据进行丢帧补偿的步骤中,
若所述缓存处于生成状态,则所述接收端利用内插法差错隐藏算法对所
述缓存进行丢帧补偿;
若所述缓存处于结束状态,则所述接收端利用外推法差错隐藏算法对所
述缓存进行丢帧补偿。
6.根据权利要求1所述的基于延时抖动的丢包补偿方法,其特征在于,
在所述接收端根据所述丢帧指示在丢帧前缓存的语音数据中填充N帧冗余
帧的步骤中,包括以下子步骤:
对填充冗余帧的位置的前一帧语音数据进行语音类型Classp的判断,
并输出判断结果;
对所述填充冗余帧的位置的前一帧语音数据进行长时预测LTP,计算基
音周期TP;
对所述填充冗余帧的位置的前一帧语音数据进行线性预测LP,计算线
性预测滤波器的系数,并通过分析所述线性预测滤波器计算出残差信号e(n);
根据对所述填充冗余帧的位置的前一帧语音数据的语音类型判断结果
和...

【专利技术属性】
技术研发人员:许云峰
申请(专利权)人:联芯科技有限公司
类型:发明
国别省市:上海;31

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1