信号编码方法及设备与流程

文档序号:11809402阅读:681来源:国知局
信号编码方法及设备与流程

本发明涉及信号处理领域,并且具体地,涉及信号编码方法及设备。



背景技术:

非连续传输系统(Discontinuous Transmission,DTX)是一种被广泛应用的语音通信系统,能够在语音通信的静音期间采用非连续的编码和传输语音帧的方式减少信道带宽的占用,同时仍能够保证足够的主观通话质量。

语音信号通常可以分为两类,即活动语音信号和静音信号。活动语音信号是指包含有通话语音的信号,而静音信号则是指不含有通话语音的信号。在DTX系统中,对活动语音信号采用连续传输的方法进行传输,对静音信号采用非连续传输的方法进行传输。这种对静音信号的非连续传输,是通过编码端间歇地编码并发送一种叫静音描述帧(Silence Descriptor,SID)的特殊编码帧来实现的,两个相邻的SID帧之间DTX系统不会编码任何其它的信号帧。解码端根据非连续接收到的SID帧自主地生成令用户主观听觉舒适的噪声。这种舒适噪声(Comfort Noise,CN)并非以如实的还原原始静音信号为目的,而是为了满足解码端用户的主观听觉质量要求,不要有不适感。

为了在解码端获得更好的主观听觉质量,由语音活动段到CN段的过渡质量是至关重要的。为了获得更平滑的过渡,一种有效的方法是:在由语音活动段过渡到静音段时,编码端不立即过渡到非连续传输状态,而是额外延迟一段时间。在这段时间内,静音段开头的部分静音帧仍然被视作语音活动帧连续的编码和发送,即设置一个连续传输的拖尾区间。这样做的好处是解码端可以充分地利用这段拖尾区间内的静音信号更好地估计和提取静音信号的特征,以生成更优的CN。

但是,在现有技术中没有对拖尾机制进行高效的控制。拖尾机制的触发条件是比较简单的,即通过简单地统计在语音活动结束时是否有足够数量的语音活动帧被连续地编码和发送来确定是否触发拖尾机制,而触发拖尾机制后,固定长度的拖尾区间就会被强制执行。然而,并非有足够数量的语音活动帧被连续地编码和发送就一定需要执行固定长度的拖尾区间,例如在通信环境的背景噪声比较平稳时,即使不设置拖尾区间或设置较短的拖尾区间,解码端也能获得优质的CN。因此,这种对拖尾机制的简单控制模式造成了通信带宽的浪费。



技术实现要素:

本发明实施例提供信号编码方法及设备,能够节省通信带宽。

第一方面,提供了一种信号编码方法,包括:在当前输入帧的前一帧的编码方式为连续编码方式的情况下,预测在所述当前输入帧被编码为静音描述SID帧的情况下解码器根据所述当前输入帧生成的舒适噪声,并确定实际静音信号,其中所述当前输入帧为静音帧;确定所述舒适噪声与所述实际静音信号的偏离程度;根据所述偏离程度,确定所述当前输入帧的编码方式,所述当前输入帧的编码方式包括拖尾帧编码方式或SID帧编码方式;根据所述当前输入帧的编码方式,对所述当前输入帧进行编码。

结合第一方面,在第一种可能的实现方式中,所述预测在所述当前输入帧被编码为SID帧的情况下解码器根据所述当前输入帧生成的舒适噪声,并确定实际静音信号,包括:预测所述舒适噪声的特征参数,并确定所述实际静音信号的特征参数,其中所述舒适噪声的特征参数与所述实际静音信号的特征参数是一一对应的;

所述确定所述舒适噪声与所述实际静音信号的偏离程度,包括:确定所述舒适噪声的特征参数与所述实际静音信号的特征参数之间的距离。

结合第一方面的第一种可能的实现方式,在第二种可能的实现方式中,所述根据所述偏离程度,确定所述当前输入帧的编码方式,包括:在所述舒适噪声的特征参数与所述实际静音信号的特征参数之间的距离小于阈值集合中对应阈值的情况下,确定所述当前输入帧的编码方式为所述SID帧编码方式,其中所述舒适噪声的特征参数与所述实际静音信号的特征参数之间的距离与所述阈值集合中的阈值是一一对应的;在所述舒适噪声的特征参数与所述实际静音信号的特征参数之间的距离大于或等于所述阈值集合中对应阈值的情况下,确定所述当前输入帧的编码方式为所述拖尾帧编码方式。

结合第一方面的第一种可能的实现方式或第二种可能的实现方式,在第三种可能的实现方式中,所述舒适噪声的特征参数用于表征以下至少一种信息:能量信息,谱信息。

结合第一方面的第三种可能的实现方式,在第四种可能的实现方式中,所述能量信息包括码激励线性预测CELP激励能量;

所述谱信息包括以下至少一种:线性预测滤波器系数,快速傅立叶变换FFT系数,修正离散余弦变换MDCT系数;

所述线性预测滤波器系数包括以下至少一种:线谱频率LSF系数,线谱对LSP系数,导抗谱频率ISF系数,导谱对ISP系数,反射系数,线性预测编码LPC系数。

结合第一方面的第一种可能的实现方式至第四种可能的实现方式中任一实现方式,在第五种可能的实现方式中,所述预测所述舒适噪声的特征参数,包括:根据所述当前输入帧的前一帧的舒适噪声参数和所述当前输入帧的特征参数,预测所述舒适噪声的特征参数;或者,根据所述当前输入帧之前的L个拖尾帧的特征参数和所述当前输入帧的特征参数,预测所述舒适噪声的特征参数,其中L为正整数。

结合第一方面的第一种可能的实现方式至第五种可能的实现方式中任一实现方式,在第六种可能的实现方式中,所述确定所述实际静音信号的特征参数,包括:确定所述当前输入帧的特征参数作为所述实际静音信号的特征参数;或者,对M个静音帧的特征参数进行统计处理,以确定所述实际静音信号的特征参数。

结合第一方面的第六种可能的实现方式,在第七种可能的实现方式中,所述M个静音帧包括所述当前输入帧以及所述当前输入帧之前的(M-1)个静音帧,M为正整数。

结合第一方面的第二种可能的实现方式,在第八种可能的实现方式中,所述舒适噪声的特征参数包括所述舒适噪声的码激励线性预测CELP激励能量和所述舒适噪声的线谱频率LSF系数,所述实际静音信号的特征参数包括所述实际静音信号的CELP激励能量和所述实际静音信号的LSF系数;

所述确定所述舒适噪声的特征参数与所述实际静音信号的特征参数之间的距离,包括:确定所述舒适噪声的CELP激励能量与所述实际静音信号的CELP激励能量之间的距离De,并确定所述舒适噪声的LSF系数与所述实际静音信号的LSF系数之间的距离Dlsf。

结合第一方面的第八种可能的实现方式,在第九种可能的实现方式中,所述在所述舒适噪声的特征参数与所述实际静音信号的特征参数之间的距离小于阈值集合中对应阈值的情况下,确定所述当前输入帧的编码方式为所述SID帧编码方式,包括:在所述距离De小于第一阈值,且所述距离Dlsf小于第二阈值的情况下,确定所述当前输入帧的编码方式为所述SID帧编码方式;

所述在所述舒适噪声的特征参数与所述实际静音信号的特征参数之间的距离大于或等于所述阈值集合中对应阈值的情况下,确定所述当前输入帧的编码方式为所述拖尾帧编码方式,包括:在所述距离De大于或等于第一阈值,或者所述距离Dlsf大于或等于第二阈值的情况下,确定所述当前输入帧的编码方式为所述拖尾帧编码方式。

结合第一方面的第九种可能的实现方式,在第十种可能的实现方式中,还包括:获取预设的所述第一阈值和预设的所述第二阈值;或者,根据所述当前输入帧之前的N个静音帧的CELP激励能量确定所述第一阈值,并根据所述N个静音帧的LSF系数确定所述第二阈值,其中N为正整数。

结合第一方面或第一方面的第一种可能的实现方式至第十种可能的实现方式中任一实现方式,在第十一种可能的实现方式中,所述预测在所述当前输入帧被编码为SID帧的情况下解码器根据所述当前输入帧生成的舒适噪声,包括:采用第一预测方式,预测所述舒适噪声,其中所述第一预测方式与所述解码器生成所述舒适噪声的方式相同。

第二方面,提供了一种信号处理方法,包括:确定P个静音帧中每个静音帧的组加权谱距离,其中所述P个静音帧中每个静音帧的组加权谱距离为所述P个静音帧中所述每个静音帧与其它(P-1)个静音帧之间的加权谱距离之和,P为正整数;根据所述P个静音帧中每个静音帧的组加权谱距离,确定第一谱参数,其中所述第一谱参数用于生成舒适噪声。

结合第二方面,在第一种可能的实现方式中,所述每个静音帧与一组加权系数相对应,其中在所述一组加权系数中,对应于第一组子带的加权系数大于对应于第二组子带的加权系数,其中所述第一组子带的感知重要性大于所述第二组子带的感知重要性。

结合第二方面或第二方面的第一种可能的实现方式,在第二种可能的实现方式中,所述根据所述P个静音帧中每个静音帧的组加权谱距离,确定第一谱参数,包括:从所述P个静音帧中选择第一静音帧,使得在所述P个静音帧中所述第一静音帧的组加权谱距离最小;将所述第一静音帧的谱参数确定为所述第一谱参数。

结合第二方面或第二方面的第一种可能的实现方式,在第三种可能的实现方式中,所述根据所述P个静音帧中每个静音帧的组加权谱距离,确定第一谱参数,包括:从所述P个静音帧中选择至少一个静音帧,使得在所述P个静音帧中所述至少一个静音帧的组加权谱距离均小于第三阈值;根据所述至少一个静音帧的谱参数,确定所述第一谱参数。

结合第二方面或第二方面的第一种可能的实现方式至第三种可能的实现方式中任一实现方式,在第四种可能的实现方式中,所述P个静音帧包括所述当前输入静音帧以及所述当前输入静音帧之前的(P-1)个静音帧。

结合第二方面的第四种可能的实现方式,在第五种可能的实现方式中,还包括:将当前输入静音帧编码为静音描述SID帧,其中所述SID帧包括所述第一谱参数。

第三方面,提供了一种信号处理方法,包括:将输入信号的频带划分为R个子带,其中R为正整数;在所述R个子带中的每个子带上,确定S个静音帧中每个静音帧的子带组谱距离,所述S个静音帧中每个静音帧的子带组谱距离为在所述每个子带上所述S个静音帧中所述每个静音帧与其它(S-1)个静音帧之间的谱距离之和,S为正整数;在所述每个子带上根据所述S个静音帧中每个静音帧的子带组谱距离,确定所述每个子带的第一谱参数,其中所述每个子带的第一谱参数用于生成舒适噪声。

结合第三方面,在第一种可能的实现方式中,所述在所述每个子带上,根据所述S个静音帧中每个静音帧的子带组谱距离,确定所述每个子带的第一谱参数,包括:在所述每个子带上,从所述S个静音帧中选择第一静音帧,使得在所述每个子带上所述S个静音帧中所述第一静音帧的子带组谱距离最小;在所述每个子带上,将所述第一静音帧的谱参数确定为所述每个子带的第一谱参数。

结合第三方面,在第二种可能的实现方式中,所述在所述每个子带上,根据所述S个静音帧中每个静音帧的子带组谱距离,确定所述每个子带的第一谱参数,包括:在所述每个子带上,从所述S个静音帧中选择至少一个静音帧,使得所述至少一个静音帧的子带组谱距离均小于第四阈值;在所述每个子带上,根据所述至少一个静音帧的谱参数,确定所述每个子带的第一谱参数。

结合第三方面或第三方面的第一种可能的实现方式或第二种可能的实现方式,在第三种可能的实现方式中,所述S个静音帧包括当前输入静音帧以及所述当前输入静音帧之前的(S-1)个静音帧。

结合第三方面的第三种可能的实现方式,在第四种可能的实现方式中,还包括:将所述当前输入静音帧编码为静音描述SID帧,其中所述SID帧包括所述每个子带的第一谱参数。

第四方面,提供了一种信号处理方法,包括:确定T个静音帧中每个静音帧的第一参数,所述第一参数用于表征谱熵,T为正整数;根据所述T个静音帧中每个静音帧的第一参数,确定第一谱参数,其中所述第一谱参数用于生成舒适噪声。

结合第四方面,在第一种可能的实现方式中,所述根据所述T个静音帧中每个静音帧的第一参数,确定第一谱参数,包括:在确定能够按照聚类准则将所述T个静音帧分为第一组静音帧和第二组静音帧的情况下,根据所述第一组静音帧的谱参数,确定所述第一谱参数,其中所述第一组静音帧的第一参数所表征的谱熵均大于所述第二组静音帧的第一参数所表征的谱熵;在确定不能够按照聚类准则将所述T个静音帧分为第一组静音帧和第二组静音帧的情况下,对所述T个静音帧的谱参数进行加权平均处理,以确定所述第一谱参数,其中所述第一组静音帧的第一参数所表征的谱熵均大于所述第二组静音帧的第一参数所表征的谱熵。

结合第四方面的第一种可能的实现方式,在第二种可能的实现方式中,所述聚类准则包括:所述第一组静音帧中每个静音帧的第一参数与第一均值之间的距离小于或等于所述第一组静音帧中每个静音帧的第一参数与第二均值之间的距离;所述第二组静音帧中每个静音帧的第一参数与所述第二均值之间的距离小于或等于所述第二组静音帧中每个静音帧的第一参数与所述第一均值之间的距离;所述第一均值与所述第二均值之间的距离大于所述第一组静音帧的第一参数与所述第一均值之间的平均距离;所述第一均值与所述第二均值之间的距离大于所述第二组静音帧的第一参数与所述第二均值之间的平均距离;其中,所述第一均值为所述第一组静音帧的第一参数的平均值,所述第二均值为所述第二组静音帧的第一参数的平均值。

结合第四方面,在第三种可能的实现方式中,所述根据所述T个静音帧中每个静音帧的第一参数,确定第一谱参数,包括:

对所述T个静音帧的谱参数进行加权平均处理,以确定所述第一谱参数;其中,对于所述T个静音帧中任意不同的第i个静音帧和第j个静音帧,所述第i个静音帧对应的加权系数大于或等于所述j个静音帧对应的加权系数;在所述第一参数与所述谱熵正相关时,所述第i个静音帧的第一参数大于所述第j个静音帧的第一参数;在所述第一参数与所述谱熵负相关时,所述第i个静音帧的第一参数小于所述第j个静音帧的第一参数,i和j均为正整数,且1≤i≤T,1≤j≤T。

结合第四方面或第四方面的第一种可能的实现方式至第三种可能的实现方式中任一实现方式,在第四种可能的实现方式中,所述T个静音帧包括当前输入静音帧以及所述当前输入静音帧之前的(T-1)个静音帧

结合第四方面的第四种可能的实现方式,在第五种可能的实现方式中,还包括:将所述当前输入静音帧编码为静音描述SID帧,其中所述SID帧包括所述第一谱参数。

第五方面,提供了一种信号编码设备,包括:第一确定单元,用于在当前输入帧的前一帧的编码方式为连续编码方式的情况下,预测在所述当前输入帧被编码为静音描述SID帧的情况下解码器根据所述当前输入帧生成的舒适噪声,并确定实际静音信号,其中所述当前输入帧为静音帧;第二确定单元,用于确定所述第一确定单元确定的所述舒适噪声与所述第一确定单元确定的所述实际静音信号的偏离程度;第三确定单元,用于根据所述第二确定单元确定的所述偏离程度,确定所述当前输入帧的编码方式,所述当前输入帧的编码方式包括拖尾帧编码方式或SID帧编码方式;编码单元,用于根据所述第三确定单元确定的所述当前输入帧的编码方式,对所述当前输入帧进行编码。

结合第五方面,在第一种可能的实现方式中,所述第一确定单元具体用于预测所述舒适噪声的特征参数,并确定所述实际静音信号的特征参数,其中所述舒适噪声的特征参数与所述实际静音信号的特征参数是一一对应的;所述第二确定单元具体用于确定所述舒适噪声的特征参数与所述实际静音信号的特征参数之间的距离。

结合第五方面的第一种可能的实现方式,在第二种可能的实现方式中,所述第三确定单元具体用于:在所述舒适噪声的特征参数与所述实际静音信号的特征参数之间的距离小于阈值集合中对应阈值的情况下,确定所述当前输入帧的编码方式为所述SID帧编码方式,其中所述舒适噪声的特征参数与所述实际静音信号的特征参数之间的距离与所述阈值集合中的阈值是一一对应的;在所述舒适噪声的特征参数与所述实际静音信号的特征参数之间的距离大于或等于所述阈值集合中对应阈值的情况下,确定所述当前输入帧的编码方式为所述拖尾帧编码方式。

结合第五方面的第一种可能的实现方式或第二种可能的实现方式,在第三种可能的实现方式中,所述第一确定单元具体用于:根据所述当前输入帧的前一帧的舒适噪声参数和所述当前输入帧的特征参数,预测所述舒适噪声的特征参数;或者,根据所述当前输入帧之前的L个拖尾帧的特征参数和所述当前输入帧的特征参数,预测所述舒适噪声的特征参数,其中L为正整数。

结合第五方面的第一种可能的实现方式或第二种可能的实现方式或第三种可能的实现方式,在第四种可能的实现方式中,所述第一确定单元具体用于:确定所述当前输入帧的特征参数作为所述实际静音信号的参数;或者,对M个静音帧的特征参数进行统计处理,以确定所述实际静音信号的参数。

结合第五方面的第二种可能的实现方式,在第五种可能的实现方式中,所述舒适噪声的特征参数包括所述舒适噪声的码激励线性预测CELP激励能量和所述舒适噪声的线谱频率LSF系数,所述实际静音信号的特征参数包括所述实际静音信号的CELP激励能量和所述实际静音信号的LSF系数;所述第二确定单元具体用于确定所述舒适噪声的CELP激励能量与所述实际静音信号的CELP激励能量之间的距离De,并确定所述舒适噪声的LSF系数与所述实际静音信号的LSF系数之间的距离Dlsf。

结合第五方面的第五种可能的实现方式,在第六种可能的实现方式中,所述第三确定单元具体用于在所述距离De小于第一阈值,且所述距离Dlsf小于第二阈值的情况下,确定所述当前输入帧的编码方式为所述SID帧编码方式;所述第三确定单元具体用于在所述距离De大于或等于第一阈值,或者所述距离Dlsf大于或等于第二阈值的情况下,确定所述当前输入帧的编码方式为所述拖尾帧编码方式。

结合第五方面的第六种可能的实现方式,在第七种可能的实现方式中,还包括:第四确定单元,用于:获取预设的所述第一阈值和预设的所述第二阈值;或者,根据所述当前输入帧之前的N个静音帧的CELP激励能量确定所述第一阈值,并根据所述N个静音帧的LSF系数确定所述第二阈值,其中N为正整数。

结合第五方面或第五方面的第一种可能的实现方式至第七种可能的实现方式中任一实现方式,在第八种可能的实现方式中,所述第一确定单元具体用于采用第一预测方式,预测所述舒适噪声,其中所述第一预测方式与所述解码器生成所述舒适噪声的方式相同。

第六方面,提供了一种信号处理设备,包括:第一确定单元,用于确定P个静音帧中每个静音帧的组加权谱距离,其中所述P个静音帧中每个静音帧的组加权谱距离为所述P个静音帧中所述每个静音帧与其它(P-1)个静音帧之间的加权谱距离之和,P为正整数;第二确定单元,用于根据所述第一确定单元确定的所述P个静音帧中每个静音帧的组加权谱距离,确定第一谱参数,所述第一谱参数用于生成舒适噪声。

结合第六方面,在第一种可能的实现方式中,所述第二确定单元具体用于:从所述P个静音帧中选择第一静音帧,使得在所述P个静音帧中所述第一静音帧的组加权谱距离最小;将所述第一静音帧的谱参数确定为所述第一谱参数。

结合第六方面,在第二种可能的实现方式中,所述第二确定单元具体用于:从所述P个静音帧中选择至少一个静音帧,使得在所述P个静音帧中所述至少一个静音帧的组加权谱距离均小于第三阈值;根据所述至少一个静音帧的谱参数,确定所述第一谱参数。

结合第六方面或第六方面的第一种可能的实现方式或第二种可能的实现方式,在第三种可能的实现方式中,所述P个静音帧包括所述当前输入静音帧以及所述当前输入静音帧之前的(P-1)个静音帧;

所述设备还包括:编码单元,用于将当前输入静音帧编码为静音描述SID帧,其中所述SID帧包括所述第二确定单元确定的所述第一谱参数。

第七方面,提供了一种信号处理设备,包括:划分单元,用于将输入信号的频带划分为R个子带,其中R为正整数;第一确定单元,用于在所述划分单元划分的所述R个子带中每个子带上,确定S个静音帧中每个静音帧的子带组谱距离,所述S个静音帧中每个静音帧的子带组谱距离为在所述每个子带上所述S个静音帧中所述每个静音帧与其它(S-1)个静音帧之间的谱距离之和,S为正整数;第二确定单元,用于在所述划分单元划分的所述每个子带上根据所述第一确定单元确定的S个静音帧中每个静音帧的子带组谱距离,确定所述每个子带的第一谱参数,其中所述每个子带的第一谱参数用于生成舒适噪声。

结合第七方面,在第一种可能的实现方式中,所述第二确定单元具体用于:在所述每个子带上,从所述S个静音帧中选择第一静音帧,使得在所述每个子带上的所述S个静音帧中所述第一静音帧的子带组谱距离最小;在所述每个子带上,将所述第一静音帧的谱参数确定为所述每个子带的第一谱参数。

结合第七方面,在第二种可能的实现方式中,所述第二确定单元具体用于:在所述每个子带上,从所述S个静音帧中选择至少一个静音帧,使得所述至少一个静音帧的子带组谱距离均小于第四阈值;在所述每个子带上,根据所述至少一个静音帧的谱参数,确定所述每个子带的第一谱参数。

结合第七方面或第七方面的第一种可能的实现方式或第二种可能的实现方式,在第三种可能的实现方式中,所述S个静音帧包括当前输入静音帧以及所述当前输入静音帧之前的(S-1)个静音帧;

所述设备还包括:编码单元,用于将所述当前输入静音帧编码为静音描述SID帧,其中所述SID帧包括所述每个子带的谱参数。

第八方面,提供了一种信号处理设备,包括:第一确定单元,用于确定T个静音帧中每个静音帧的第一参数,所述第一参数用于表征谱熵,T为正整数;第二确定单元,用于根据所述第一确定单元确定的所述T个静音帧中每个静音帧的第一参数,确定第一谱参数,其中所述第一谱参数用于生成舒适噪声。

结合第八方面,在第一种可能的实现方式中,所述第二确定单元具体用于:在确定能够按照聚类准则将所述T个静音帧分为所述第一组静音帧和所述第二组静音帧的情况下,根据所述第一组静音帧的谱参数,确定所述第一谱参数,其中所述第一组静音帧的第一参数所表征的谱熵均大于所述第二组静音帧的第一参数所表征的谱熵;在确定不能够按照聚类准则将所述T个静音帧分为所述第一组静音帧和所述第二组静音帧的情况下,对所述T个静音帧的谱参数进行加权平均处理,以确定所述第一谱参数,其中所述第一组静音帧的第一参数所表征的谱熵均大于所述第二组静音帧的第一参数所表征的谱熵。

结合第八方面,在第二种可能的实现方式中,所述第二确定单元具体用于:对所述T个静音帧的谱参数进行加权平均处理,以确定所述第一谱参数;

其中,对于所述T个静音帧中任意不同的第i个静音帧和第j个静音帧,所述第i个静音帧对应的加权系数大于或等于所述j个静音帧对应的加权系数;在所述第一参数与所述谱熵正相关时,所述第i个静音帧的第一参数大于所述第j个静音帧的第一参数;在所述第一参数与所述谱熵负相关时,所述第i个静音帧的第一参数小于所述第j个静音帧的第一参数,i和j均为正整数,且1≤i≤T,1≤j≤T。

结合第八方面或第八方面的第一种可能的实现方式或第二种可能的实现方式,在第三种可能的实现方式中,所述T个静音帧包括当前输入静音帧以及所述当前输入静音帧之前的(T-1)个静音帧;

所述设备还包括:编码单元,用于将所述当前输入静音帧编码为静音描述SID帧,其中所述SID帧包括所述第一谱参数。

本发明实施例中,通过在当前输入帧的前一帧的编码方式为连续编码方式的情况下,预测在当前输入帧被编码为SID帧的情况下解码器根据当前输入帧生成的舒适噪声,并确定舒适噪声与实际静音信号的偏离程度,根据该偏离程度确定当前输入帧的编码方式为拖尾帧编码方式或SID帧编码方式,而非简单地根据统计得到的语音活动帧的数量将当前输入帧编码为拖尾帧,从而能够节省通信带宽。

附图说明

为了更清楚地说明本发明实施例的技术方案,下面将对本发明实施例中所需要使用的附图作简单地介绍,显而易见地,下面所描述的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。

图1是根据本发明一个实施例的语音通信系统的示意框图。

图2是根据本发明实施例的信号编码方法的示意性流程图。

图3a是根据本发明一个实施例的信号编码方法的过程的示意性流程图。

图3b是根据本发明另一实施例的信号编码方法的过程的示意性流程图。

图4是根据本发明一个实施例的信号处理方法的示意性流程图。

图5是根据本发明另一实施例的信号处理方法的示意性流程图。

图6是根据本发明另一实施例的信号处理方法的示意性流程图。

图7是根据本发明一个实施例的信号编码设备的示意框图。

图8是根据本发明另一实施例的信号处理设备的示意框图。

图9是根据本发明另一实施例的信号处理设备的示意框图。

图10是根据本发明另一实施例的信号处理设备的示意框图。

图11是根据本发明另一实施例的信号编码设备的示意框图。

图12是根据本发明另一实施例的信号处理设备的示意框图。

图13是根据本发明另一实施例的信号处理设备的示意框图。

图14是根据本发明另一实施例的信号处理设备的示意框图。

具体实施方式

下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明的一部分实施例,而不是全部实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都应属于本发明保护的范围。

图1是根据本发明一个实施例的语音通信系统的示意框图。

图1的系统100可以是DTX系统。系统100可以包括编码器110和解码器120。

编码器110可以将输入的时域语音信号截断为语音帧,并对语音帧进行编码,然后将编码后的语音帧发送给解码器120。解码器120可以从编码器110接收编码后的语音帧,并对编码后的语音帧进行解码,然后输出解码后的时域语音信号。

编码器110还可以包括语音活动性检测器(Voice Activity Detector,VAD)110a。VAD 110a可以检测当前输入语音帧为语音活动帧还是静音帧。其中,语音活动帧可以表示含有通话语音信号的帧,静音帧可以表示不含有通话语音信号的帧。此处,静音帧可以包括能量低于静音门限的无声帧,也可以包括背景噪声帧。编码器110可以有两种工作状态,即连续传输状态和非连续传输状态。当编码器110工作在连续传输状态时,编码器110可以对每个输入语音帧均进行编码并发送。当编码器110工作在非连续传输状态时,编码器110可以不对输入语音帧编码,或者可以将其编码为SID帧。通常,只有在输入语音帧为静音帧时,编码器110才会工作在非连续传输状态下。

如果当前输入的静音帧是语音活动段结束后的第一帧时,此处语音活动段包括可能存在的拖尾区间,那么编码器110可以将该静音帧编码为SID帧,此处可以用SID_FIRST表示该SID帧。如果当前输入的静音帧为上一个SID帧之后的第n帧,此处n为正整数,且与上一个SID帧之间没有语音活动帧时,那么编码器110可以将该静音帧编码为SID帧,此处可以用SID_UPDATE表示该SID帧。

SID帧可以包括一些描述静音信号的特征的信息。解码器根据这些特征信息能够生成舒适噪声。例如SID帧可以包括静音信号的能量信息和谱信息。进一步地,例如,静音信号的能量信息可以包括码激励线性预测(Code Excited Linear Prediction,CELP)模型中激励信号的能量,或者静音信号的时域能量。谱信息可以包括线谱频率(Line Spectral Frequency,LSF)系数、线谱对(Line Spectrum Pair,LSP)系数、导抗谱频率(Immittance Spectral Frequencies,ISF)系数、导谱对(Immittance Spectral Pairs,ISP)系数、线性预测编码(Linear Predictive Coding,LPC)系数、快速傅立叶变换(Fast Fourier Transform,FFT)系数或修正离散余弦变换(Modified Discrete Cosine Transform,MDCT)系数等。

编码后的语音帧可以包括三种类型:语音编码帧、SID帧和NO_DATA帧。其中语音编码帧为编码器110在连续传输状态下编码的帧,NO_DATA帧可以表示没有任何编码比特的帧,即物理上并不存在的帧,如SID帧之间的未编码静音帧等。

解码器120可以从编码器110接收编码后的语音帧,并对编码后的语音帧进行解码。当接收到语音编码帧时,解码器可以直接解码该帧并输出时域语音帧。当接收到SID帧时,解码器可以解码SID帧,并获得SID帧中的拖尾长度、能量和谱信息。具体地,当SID帧为SID_UPDATE时,解码器可以根据当前SID帧中的信息,或者根据当前SID帧中的信息并结合其它信息,获得静音信号的能量信息和谱信息,也就是获得CN参数,从而根据CN参数生成时域CN帧。当SID帧为SID_FIRST时,解码器根据SID帧中的拖尾长度信息获得该帧之前m帧中能量和谱的统计信息,并结合该SID帧中解码得到的信息获得CN参数,从而生成时域CN帧,其中m为正整数。当解码器的输入为NO_DATA帧时,解码器根据最近接收到的SID帧并结合其它信息,获得CN参数,从而生成时域CN帧。

图2是根据本发明实施例的信号编码方法的示意性流程图。图2的方法由编码器执行,例如可以由图1中的编码器110执行。

210,在当前输入帧的前一帧的编码方式为连续编码方式的情况下,预测在当前输入帧被编码为SID帧的情况下解码器根据当前输入帧生成的舒适噪声,并确定实际静音信号,其中当前输入帧为静音帧。

本发明实施例中,实际静音信号可以是指输入编码器的实际静音信号。

220,确定舒适噪声与实际静音信号的偏离程度。

230,根据偏离程度,确定当前输入帧的编码方式,当前输入帧的编码方式包括拖尾帧编码方式或SID帧编码方式。

具体地,拖尾帧编码方式可以是指连续编码方式。编码器可以以连续编码方式对处于拖尾区间的静音帧进行编码,编码得到的帧可以称为拖尾帧。

240,根据当前输入帧的编码方式,对当前输入帧进行编码。

在步骤210中,编码器可以根据不同的因素,确定以连续编码方式对当前输入帧的前一帧进行编码,例如,如果编码器中的VAD确定前一帧处于语音活动段或者编码器确定前一帧处于拖尾区间,那么编码器会以连续编码方式对前一帧进行编码。

由于输入语音信号进入静音段后,编码器可以根据实际情况决定工作在连续传输状态还是非连续传输状态。因此对于作为静音帧的当前输入帧而言,编码器需要确定如何编码当前输入帧。

当前输入帧可以是输入语音信号进入静音段后的第一个静音帧,也可以是输入语音信号进入静音段后的第n帧,此处n为大于1的正整数。

如果当前输入帧为第一个静音帧,那么在步骤230中,编码器确定当前输入帧的编码方式也就是确定是否需要设置拖尾区间,如果需要设置拖尾区间,则编码器可以将当前输入帧编码为拖尾帧;如果不需要设置拖尾区间,则编码器可以将当前输入帧编码为SID帧。

如果当前输入帧为第n个静音帧且编码器能够确定当前输入帧正处于拖尾区间,即当前输入帧前面的静音帧被连续地编码,那么在步骤230中,编码器确定当前输入帧的编码方式也就是确定是否结束拖尾区间。如果需要结束拖尾区间,则编码器可以将当前输入帧编码为SID帧;如果需要继续延长拖尾区间,则编码器可以将当前输入帧编码为拖尾帧。

如果当前输入帧为第n个静音帧,并且也不存在拖尾机制,那么在步骤230中,编码器需要确定当前输入帧的编码方式,使得解码器对编码后的当前输入帧进行解码能够得到优质的舒适噪声信号。

可见,本发明实施例既可以应用于拖尾机制的触发场景,也可以应用于拖尾机制的执行场景,还可以应用于不存在拖尾机制的场景中。具体地,本发明实施例既可以确定是否触发拖尾机制,也可以确定是否提前结束拖尾机制。或者对于不存在拖尾机制的场景,本发明实施例可以确定静音帧的编码方式从而达到更好的编码效果和解码效果。

具体地,编码器可以假设当前输入帧编码为SID帧,如果解码器接收到该SID帧,将根据SID帧生成舒适噪声,而编码器可以预测到该舒适噪声。然后,编码器可以估计该舒适噪声与输入编码器的实际静音信号的偏离程度。此处的偏离程度也可以理解为近似程度。如果预测到的舒适噪声与实际静音信号足够接近,那么编码器可以认为无需设置拖尾区间或者无需继续延长拖尾区间。

在现有技术中,通过简单地统计语音活动帧的数量来确定是否执行固定长度的拖尾区间。也就是,如果有足够数量的语音活动帧被连续编码,那么就设置固定长度的拖尾区间。不论当前输入帧为第一个静音帧还是处于拖尾区间的第n个静音帧,当前输入帧均会被编码为拖尾帧。然而,不必要的拖尾帧会造成通信带宽的浪费。而本发明实施例中,通过根据预测的舒适噪声与实际静音信号的偏离程度确定当前输入帧的编码方式,而非简单地依据语音活动帧的数量来确定当前输入帧编码为拖尾帧,因此能够节省通信带宽。

本发明实施例中,通过在当前输入帧的前一帧的编码方式为连续编码方式的情况下,预测在当前输入帧被编码为SID帧的情况下解码器根据当前输入帧生成的舒适噪声,并确定舒适噪声与实际静音信号的偏离程度,根据该偏离程度确定当前输入帧的编码方式为拖尾帧编码方式或SID帧编码方式,而非简单地根据统计得到的语音活动帧的数量将当前输入帧编码为拖尾帧,从而能够节省通信带宽。

可选地,作为一个实施例,在步骤210中,编码器可以采用第一预测方式,预测舒适噪声,其中第一预测方式与解码器用于生成舒适噪声的方式相同。

具体地,编码器与解码器可以采用相同的方式确定舒适噪声。或者,编码器与解码器也可以分别采用不同的方式确定舒适噪声。本发明实施例对此不做限定。

可选地,作为一个实施例,在步骤210中,编码器可以预测舒适噪声的特征参数,并确定实际静音信号的特征参数,其中舒适噪声的特征参数与实际静音信号的特征参数是一一对应的。在步骤220中,编码器可以确定舒适噪声的特征参数与实际静音信号的特征参数之间的距离。

具体地,编码器可以比较舒适噪声的特征参数与实际静音信号的特征参数之间的距离,从而确定舒适噪声与实际静音信号的偏离程度。舒适噪声的特征参数与实际静音信号的特征参数应当是一一对应的。也就是说,舒适噪声的特征参数的类型与实际静音信号的特征参数的类型是相同的。例如,编码器可以将舒适噪声的能量参数与实际静音信号的能量参数进行比较,也可以将舒适噪声的谱参数与实际静音信号的谱参数进行比较。

本发明实施例中,当特征参数为标量时,特征参数之间的距离可以指特征参数之间的差值的绝对值,即标量距离。当特征参数为矢量时,特征参数之间的距离可以是指特征参数之间对应元素的标量距离的和。

可选地,作为另一实施例,在步骤230中,编码器可以在舒适噪声的特征参数与实际静音信号的特征参数之间的距离小于阈值集合中对应阈值的情况下,确定当前输入帧的编码方式为SID帧编码方式,其中舒适噪声的特征参数与实际静音信号的特征参数之间的距离与阈值集合中的阈值是一一对应的。编码器也可以在舒适噪声的特征参数与实际静音信号的特征参数之间的距离大于或等于阈值集合中对应阈值的情况下,确定当前输入帧的编码方式为拖尾帧编码方式。

具体地,舒适噪声的特征参数和实际静音信号的特征参数均可以包括至少一个参数,因此,舒适噪声的特征参数与实际静音信号的特征参数之间的距离也可以包括至少一种参数之间的距离。阈值集合也可以包括至少一个阈值。每种参数之间的距离可以对应于一个阈值。在确定当前输入帧的编码方式时,编码器可以分别将至少一种参数之间的距离与阈值集合中对应的阈值进行比较。阈值集合中的至少一个阈值可以是预先设定的,也可以是由编码器根据当前输入帧之前的多个静音帧的特征参数确定的。

如果舒适噪声的特征参数与实际静音信号的特征参数之间的距离小于阈值集合中对应阈值,编码器可以认为舒适噪声与实际静音信号足够接近,从而可以将当前输入帧编码为SID帧。如果舒适噪声的特征参数与实际静音信号的特征参数之间的距离大于或等于阈值集合中对应阈值,那么编码器可以认为舒适噪声与实际静音信号偏离较大,从而可以将当前输入帧编码为拖尾帧。

可选地,作为另一实施例,上述舒适噪声的特征参数可以用于表征以下至少一种信息:能量信息,谱信息。

可选地,作为另一实施例,上述能量信息可以包括CELP激励能量。上述谱信息可以包括以下至少一种:线性预测滤波器系数,FFT系数,MDCT系数。线性预测滤波器系数可以包括以下至少一种:LSF系数,LSP系数,ISF系数,ISP系数,反射系数,LPC系数。

可选地,作为另一实施例,在步骤210中,编码器可以确定当前输入帧的特征参数作为实际静音信号的特征参数。或者,编码器可以对M个静音帧的特征参数进行统计处理,以确定实际静音信号的特征参数。

可选地,作为另一实施例,上述M个静音帧可以包括当前输入帧以及当前输入帧之前的(M-1)个静音帧,M为正整数。

例如,如果当前输入帧为第一个静音帧,那么实际静音信号的特征参数可以是当前输入帧的特征参数;如果当前输入帧为第n个静音帧,那么实际静音信号的特征参数可以是编码器对包含当前输入帧在内的M个静音帧的特征参数进行统计处理得到的。M个静音帧可以是连续的,也可以是不连续的,本发明实施例对此不做限定。

可选地,作为另一实施例,在步骤210中,编码器可以根据当前输入帧的前一帧的舒适噪声参数和当前输入帧的特征参数,预测舒适噪声的特征参数。或者,编码器可以根据当前输入帧之前的L个拖尾帧的特征参数和当前输入帧的特征参数,预测舒适噪声的特征参数,L为正整数。

例如,如果当前输入帧为第一个静音帧,那么编码器可以根据前一帧的舒适噪声参数和当前输入帧的特征参数预测舒适噪声的特征参数。编码器对每一帧进行编码时,会在编码器内部保存每一帧的舒适噪声参数。通常只有在输入帧为静音帧时,这个保存的舒适噪声参数才会较前一帧时发生变化,因为编码器可能会根据当前输入静音帧的特征参数对保存的舒适噪声参数进行更新,而在当前输入帧为语音活动帧时通常不对舒适噪声参数进行更新。因此,编码器可以获取内部存储的前一帧的舒适噪声参数。例如,舒适噪声参数可以包括静音信号的能量参数和谱参数。

此外,如果当前输入帧正处于拖尾区间,编码器可以根据当前输入帧之前的L个拖尾帧的参数进行统计,根据统计得到的结果和当前输入帧的特征参数,得到舒适噪声的特征参数。

可选地,作为另一实施例,舒适噪声的特征参数可以包括舒适噪声的CELP激励能量和舒适噪声的LSF系数,实际静音信号的特征参数可以包括实际静音信号的CELP激励能量和实际静音信号的LSF系数。在步骤220中,编码器可以确定舒适噪声的CELP激励能量与实际静音信号的CELP激励能量之间的距离De,并可以确定舒适噪声的LSF系数与实际静音信号的LSF系数之间的距离Dlsf。

应注意,此处距离De和距离Dlsf可以包含一个变量,也可以包含一组变量。例如,距离Dlsf可以包含两个变量,一个可以是平均的LSF系数的距离,即每个对应LSF系数的距离的均值。另一个可以是LSF系数间的最大距离,即距离最大的那对LSF系数之间的距离。

可选地,作为另一实施例,在步骤230中,在距离De小于第一阈值,且距离Dlsf小于第二阈值的情况下,编码器可以确定当前输入帧的编码方式为SID帧编码方式。在距离De大于或等于第一阈值,或者距离Dlsf大于或等于第二阈值的情况下,编码器可以确定当前输入帧的编码方式为拖尾帧编码方式。其中,第一阈值和第二阈值均属于上述阈值集合。

可选地,作为另一实施例,当De或Dlsf包含一组变量时,编码器将一组变量中的每个变量与其相对应的阈值做比较,从而确定以何种方式编码当前输入帧。

具体地,编码器可以根据距离De和距离Dlsf,确定当前输入帧的编码方式。如果距离De<第一阈值,并且距离Dlsf<第二阈值,则可以表明预测的舒适噪声的CELP激励能量和LSF系数与实际静音信号的CELP激励能量和LSF系数差别都不大,则编码器可以认为舒适噪声和实际静音信号足够接近,可以将当前输入帧编码为SID帧。否则,可以将当前输入帧编码为拖尾帧。

可选地,作为另一实施例,在步骤230中,编码器可以获取预设的第一阈值和预设的第二阈值。或者,编码器可以根据当前输入帧之前的N个静音帧的CELP激励能量确定第一阈值,并根据N个静音帧的LSF系数确定第二阈值,其中N为正整数。

具体地,第一阈值和第二阈值均可以是预设的固定值。或者,第一阈值和第二阈值均可以是自适应的变量。例如,第一阈值可以是编码器对当前输入帧之前的N个静音帧的CELP激励能量统计得到的。第二阈值可以是编码器对当前输入帧之前的N个静音帧的LSF系数统计得到的。N个静音帧可以是连续的,也可以是不连续的。

下面将结合具体例子详细描述上述图2的具体过程。在下面图3a和图3b的例子中,将以本发明实施例可应用的两个场景来进行描述。应理解,这些例子只是为了帮助本领域技术人员更好地理解本发明实施例,而非限制本发明实施例的范围。

图3a是根据本发明一个实施例的信号编码方法的过程的示意性流程图。在图3a中,假设当前输入帧的前一帧的编码方式为连续编码方式,编码器内部的VAD确定当前输入帧为输入语音信号进入静音段后的第一个静音帧。那么,编码器将需要确定是否设置拖尾区间,也就是需要确定是将当前输入帧编码为拖尾帧还是SID帧。下面将详细描述该过程。

301a,确定实际静音信号的CELP激励能量和LSF系数。

具体地,编码器可以将当前输入帧的CELP激励能量e作为实际静音信号的CELP激励能量eSI,可以将当前输入帧的LSF系数lsf(i)作为实际静音信号的LSF系数lsfSI(i),i=0,1,…,K-1,K为滤波器阶数。编码器可以参照现有技术,确定当前输入帧的CELP激励能量以及LSF系数。

302a,预测在当前输入帧被编码为SID帧的情况下解码器根据当前输入帧生成的舒适噪声的CELP激励能量和LSF参数。

编码器可以假设当前输入帧编码为SID帧,那么解码器将根据该SID帧生成舒适噪声。对于编码器而言,其能够预测该舒适噪声的CELP激励能量eCN和LSF系数lsfCN(i),i=0,1,…,K-1,K为滤波器阶数。编码器可以根据编码器内部存储的前一帧的舒适噪声参数和当前输入帧的CELP激励能量和LSF系数,分别确定舒适噪声的CELP激励能量和LSF系数。

例如,编码器可以按照等式(1)预测舒适噪声的CELP激励能量eCN:

eCN=0.4*eCN[-1]+0.6*e (1)

其中,eCN[-1]可以表示前一帧的CELP激励能量,e可以表示当前输入帧的CELP激励能量。

编码器可以按照等式(2)预测舒适噪声的LSF系数lsfCN(i),i=0,1,…,K-1,K为滤波器阶数。

lsfCN(i)=0.4*lsfCN[-1](i)+0.6*lsf(i) (2)

其中,lsfCN[-1](i)可以表示前一帧的LSF系数,lsf(i)可以表示当前输入帧的第i个LSF系数。

303a,确定舒适噪声的CELP激励能量与实际静音信号的CELP激励能量之间的距离De,并确定舒适噪声的LSF系数与实际静音信号的LSF系数之间的距离Dlsf。

具体地,编码器可以根据等式(3)确定舒适噪声的CELP激励能量与实际静音信号的CELP激励能量之间的距离De:

De=|log2eCN-log2e| (3)

编码器可以根据等式(4)确定舒适噪声的LSF系数与实际静音信号的LSF系数之间的距离Dlsf:

<mrow> <mi>Dlsf</mi> <mo>=</mo> <munderover> <mi>&Sigma;</mi> <mrow> <mi>i</mi> <mo>=</mo> <mn>0</mn> </mrow> <mrow> <mi>K</mi> <mo>-</mo> <mn>1</mn> </mrow> </munderover> <mo>|</mo> <mi>lsfCN</mi> <mrow> <mo>(</mo> <mi>i</mi> <mo>)</mo> </mrow> <mo>-</mo> <mi>lsf</mi> <mrow> <mo>(</mo> <mi>i</mi> <mo>)</mo> </mrow> <mo>|</mo> <mo>-</mo> <mo>-</mo> <mo>-</mo> <mrow> <mo>(</mo> <mn>4</mn> <mo>)</mo> </mrow> </mrow>

304a,确定距离De是否小于第一阈值,并且距离Dlsf是否小于第二阈值。

具体地,第一阈值和第二阈值均可以是预设的固定值。

或者,第一阈值和第二阈值可以是自适应的变量。编码器可以根据当前输入帧之前的N个静音帧的CELP激励能量确定第一阈值,例如,编码器可以按照等式(5)确定第一阈值thr1:

<mrow> <mi>t</mi> <mi>h</mi> <mi>r</mi> <mn>1</mn> <mo>=</mo> <mfrac> <mrow> <munderover> <mi>&Sigma;</mi> <mrow> <mi>n</mi> <mo>=</mo> <mn>0</mn> </mrow> <mrow> <mi>N</mi> <mo>-</mo> <mn>1</mn> </mrow> </munderover> <mrow> <mo>(</mo> <msub> <mi>log</mi> <mn>2</mn> </msub> <msup> <mi>e</mi> <mi>n</mi> </msup> <mo>-</mo> <msub> <mi>log</mi> <mn>2</mn> </msub> <mfrac> <mn>1</mn> <mi>N</mi> </mfrac> <munderover> <mi>&Sigma;</mi> <mrow> <mi>m</mi> <mo>=</mo> <mn>0</mn> </mrow> <mrow> <mi>N</mi> <mo>-</mo> <mn>1</mn> </mrow> </munderover> <msup> <mi>e</mi> <mrow> <mo>&lsqb;</mo> <mi>m</mi> <mo>&rsqb;</mo> </mrow> </msup> <mo>)</mo> </mrow> </mrow> <mi>N</mi> </mfrac> <mo>-</mo> <mo>-</mo> <mo>-</mo> <mrow> <mo>(</mo> <mn>5</mn> <mo>)</mo> </mrow> </mrow>

编码器可以根据N个静音帧的LSF系数确定第二阈值,例如,编码器可以按照等式(6)确定第二阈值thr2:

<mrow> <mi>t</mi> <mi>h</mi> <mi>r</mi> <mn>2</mn> <mo>=</mo> <mfrac> <mrow> <munderover> <mi>&Sigma;</mi> <mrow> <mi>n</mi> <mo>=</mo> <mn>0</mn> </mrow> <mrow> <mi>N</mi> <mo>-</mo> <mn>1</mn> </mrow> </munderover> <munderover> <mi>&Sigma;</mi> <mrow> <mi>i</mi> <mo>=</mo> <mn>0</mn> </mrow> <mrow> <mi>K</mi> <mo>-</mo> <mn>1</mn> </mrow> </munderover> <mrow> <mo>(</mo> <msup> <mi>lsf</mi> <mrow> <mo>&lsqb;</mo> <mi>n</mi> <mo>&rsqb;</mo> </mrow> </msup> <mo>(</mo> <mi>i</mi> <mo>)</mo> <mo>-</mo> <mfrac> <mn>1</mn> <mi>N</mi> </mfrac> <munderover> <mi>&Sigma;</mi> <mrow> <mi>p</mi> <mo>=</mo> <mn>0</mn> </mrow> <mrow> <mi>N</mi> <mo>-</mo> <mn>1</mn> </mrow> </munderover> <msup> <mi>lsf</mi> <mrow> <mo>&lsqb;</mo> <mi>p</mi> <mo>&rsqb;</mo> </mrow> </msup> <mo>(</mo> <mi>i</mi> <mo>)</mo> </mrow> </mrow> <mi>N</mi> </mfrac> <mo>-</mo> <mo>-</mo> <mo>-</mo> <mrow> <mo>(</mo> <mn>6</mn> <mo>)</mo> </mrow> </mrow>

其中,在等式(5)和等式(6)中,[x]可以表示第x帧,x可以为n、m或p。例如,e[m]可以表示第m帧的CELP激励能量。lsf[n](i)可以表示第n帧的第i个LSF系数,lsf[p](i)可以表示第p帧的第i个LSF系数。

305a,如果距离De小于第一阈值并且距离Dlsf小于第二阈值,则确定不设置拖尾区间,将当前输入帧编码为SID帧。

如果距离De小于第一阈值并且距离Dlsf小于第二阈值,则编码器可以认为解码器能够生成的舒适噪声与实际的静音信号足够接近,那么可以不设置拖尾区间,那么将当前输入帧编码为SID帧。

306a,如果距离De大于或等于第一阈值,或者距离Dlsf大于或等于第二阈值,则确定设置拖尾区间,将当前输入帧编码为拖尾帧。

本发明实施例中,通过在根据在当前输入帧被编码为SID帧的情况下解码器根据当前输入帧生成的舒适噪声与实际静音信号的偏离程度,确定当前输入帧的编码方式为拖尾帧编码方式或SID帧编码方式,而非简单地根据统计得到的语音活动帧的数量将当前输入帧编码为拖尾帧,从而能够节省通信带宽。

图3b是根据本发明另一实施例的信号编码方法的过程的示意性流程图。在图3b中,假设当前输入帧已处于拖尾区间。那么,编码器需要确定是否结束拖尾区间,也就是需要确定是将当前输入帧编码继续为拖尾帧还是编码为SID帧。下面将详细描述该过程。

301b,确定实际静音信号的CELP激励能量和LSF系数。

可选地,类似于步骤301a,编码器可以将当前输入帧的CELP激励能量和LSF系数作为实际静音信号的CELP激励能量和LSF系数。

可选地,编码器可以对包括当前输入帧在内的M个静音帧的CELP激励能量进行统计处理,得到实际静音信号的CELP激励能量。其中,M≤拖尾区间内当前输入帧之前的拖尾帧的数目。

例如,编码器可以按照等式(7)确定实际静音信号的CELP激励能量eSI:

<mrow> <mi>e</mi> <mi>S</mi> <mi>I</mi> <mo>=</mo> <msub> <mi>log</mi> <mn>2</mn> </msub> <mrow> <mo>(</mo> <mfrac> <mn>1</mn> <mrow> <munderover> <mi>&Sigma;</mi> <mrow> <mi>j</mi> <mo>=</mo> <mn>0</mn> </mrow> <mi>M</mi> </munderover> <mi>w</mi> <mrow> <mo>(</mo> <mi>j</mi> <mo>)</mo> </mrow> </mrow> </mfrac> <mo>&CenterDot;</mo> <munderover> <mi>&Sigma;</mi> <mrow> <mi>j</mi> <mo>=</mo> <mn>0</mn> </mrow> <mi>M</mi> </munderover> <mi>w</mi> <mo>(</mo> <mi>j</mi> <mo>)</mo> <mo>&CenterDot;</mo> <msup> <mi>e</mi> <mrow> <mo>&lsqb;</mo> <mo>-</mo> <mi>j</mi> <mo>&rsqb;</mo> </mrow> </msup> <mo>)</mo> </mrow> <mo>-</mo> <mo>-</mo> <mo>-</mo> <mrow> <mo>(</mo> <mn>7</mn> <mo>)</mo> </mrow> </mrow>

再例如,编码器可以按照等式(8)确定实际静音信号的LSF系数lsfSI(i),i=0,1,…,K-1,K为滤波器阶数。

<mrow> <mi>l</mi> <mi>s</mi> <mi>f</mi> <mi>S</mi> <mi>I</mi> <mrow> <mo>(</mo> <mi>i</mi> <mo>)</mo> </mrow> <mo>=</mo> <mfrac> <mn>1</mn> <mrow> <munderover> <mi>&Sigma;</mi> <mrow> <mi>j</mi> <mo>=</mo> <mn>0</mn> </mrow> <mi>M</mi> </munderover> <mi>w</mi> <mrow> <mo>(</mo> <mi>j</mi> <mo>)</mo> </mrow> </mrow> </mfrac> <mo>&CenterDot;</mo> <munderover> <mi>&Sigma;</mi> <mrow> <mi>j</mi> <mo>=</mo> <mn>0</mn> </mrow> <mi>M</mi> </munderover> <mi>w</mi> <mrow> <mo>(</mo> <mi>j</mi> <mo>)</mo> </mrow> <mo>&CenterDot;</mo> <mi>l</mi> <mi>s</mi> <mi>f</mi> <msup> <mrow> <mo>(</mo> <mi>i</mi> <mo>)</mo> </mrow> <mrow> <mo>&lsqb;</mo> <mo>-</mo> <mi>j</mi> <mo>&rsqb;</mo> </mrow> </msup> <mo>-</mo> <mo>-</mo> <mo>-</mo> <mrow> <mo>(</mo> <mn>8</mn> <mo>)</mo> </mrow> </mrow>

其中,在上述等式(7)和等式(8)中,w(j)可以表示加权系数,e[-j]可以表示当前输入帧之前的第j个静音帧的CELP激励能量。

302b,预测在当前输入帧被编码为SID帧的情况下解码器根据当前输入帧生成的舒适噪声的CELP激励能量和LSF系数。

具体地,编码器可以根据当前输入帧之前的L个拖尾帧的CELP激励能量和LSF系数,分别确定舒适噪声的CELP激励能量eCN和LSF系数lsfCN(i),i=0,1,…,K-1,K为滤波器阶数。

例如,编码器可以按照等式(9)确定舒适噪声的CELP激励能量eCN:

<mrow> <mi>e</mi> <mi>C</mi> <mi>N</mi> <mo>=</mo> <mn>0.4</mn> <mo>*</mo> <mrow> <mo>(</mo> <mfrac> <mn>1</mn> <mrow> <munderover> <mi>&Sigma;</mi> <mrow> <mi>j</mi> <mo>=</mo> <mn>0</mn> </mrow> <mi>L</mi> </munderover> <mi>w</mi> <mrow> <mo>(</mo> <mi>j</mi> <mo>)</mo> </mrow> </mrow> </mfrac> <mo>&CenterDot;</mo> <munderover> <mi>&Sigma;</mi> <mrow> <mi>j</mi> <mo>=</mo> <mn>0</mn> </mrow> <mi>L</mi> </munderover> <mi>w</mi> <mo>(</mo> <mi>j</mi> <mo>)</mo> <mo>&CenterDot;</mo> <msup> <mi>eHO</mi> <mrow> <mo>&lsqb;</mo> <mo>-</mo> <mi>j</mi> <mo>&rsqb;</mo> </mrow> </msup> <mo>)</mo> </mrow> <mo>)</mo> <mo>+</mo> <mn>0.6</mn> <mo>*</mo> <mi>e</mi> <mo>-</mo> <mo>-</mo> <mo>-</mo> <mrow> <mo>(</mo> <mn>9</mn> <mo>)</mo> </mrow> </mrow>

其中,eHO[-j]可以表示当前输入帧之前的第j个拖尾帧的激励能量。

再例如,编码器可以按照等式(10)确定舒适噪声的LSF系数lsfCN(i),i=0,1,…,K-1,K为滤波器阶数。

<mrow> <mi>l</mi> <mi>s</mi> <mi>f</mi> <mi>C</mi> <mi>N</mi> <mrow> <mo>(</mo> <mi>i</mi> <mo>)</mo> </mrow> <mo>=</mo> <mn>0.4</mn> <mo>*</mo> <mrow> <mo>(</mo> <mfrac> <mn>1</mn> <mrow> <munderover> <mi>&Sigma;</mi> <mrow> <mi>j</mi> <mo>-</mo> <mn>1</mn> </mrow> <mi>L</mi> </munderover> <mi>w</mi> <mrow> <mo>(</mo> <mi>j</mi> <mo>)</mo> </mrow> </mrow> </mfrac> <mo>&CenterDot;</mo> <munderover> <mi>&Sigma;</mi> <mrow> <mi>j</mi> <mo>=</mo> <mn>1</mn> </mrow> <mi>L</mi> </munderover> <mi>w</mi> <mo>(</mo> <mi>j</mi> <mo>)</mo> <mo>&CenterDot;</mo> <mi>l</mi> <mi>s</mi> <mi>f</mi> <mi>H</mi> <mi>O</mi> <msup> <mrow> <mo>(</mo> <mi>i</mi> <mo>)</mo> </mrow> <mrow> <mo>&lsqb;</mo> <mo>-</mo> <mi>j</mi> <mo>&rsqb;</mo> </mrow> </msup> <mo>)</mo> </mrow> <mo>+</mo> <mn>0.6</mn> <mo>*</mo> <mi>l</mi> <mi>s</mi> <mi>f</mi> <mrow> <mo>(</mo> <mi>i</mi> <mo>)</mo> </mrow> <mo>-</mo> <mo>-</mo> <mo>-</mo> <mrow> <mo>(</mo> <mn>10</mn> <mo>)</mo> </mrow> </mrow>

其中,lsfHO(i)[-j]可以表示当前输入帧之前的第j个拖尾帧的第i个lsf系数。

在等式(9)和(10)中,w(j)可以表示加权系数。

303b,确定舒适噪声的CELP激励能量与实际静音信号的CELP激励能量之间的距离De,并确定舒适噪声的LSF系数与实际静音信号的LSF系数之间的距离Dlsf。

例如,编码器可以按照等式(3)确定舒适噪声的CELP激励能量与实际静音信号的CELP激励能量之间的距离De。编码器可以根据等式(4)确定舒适噪声的LSF系数与实际静音信号的LSF系数之间的距离Dlsf。

304b,确定距离De是否小于第一阈值,并且距离Dlsf是否小于第二阈值。

具体地,第一阈值和第二阈值均可以是预设的固定值。

或者,第一阈值和第二阈值可以是自适应的变量。例如,编码器可以按照等式(5)确定第一阈值thr1,可以按照等式(6)确定第二阈值thr2。

305b,如果距离De小于第一阈值并且距离Dlsf小于第二阈值,则确定结束拖尾区间,将当前输入帧编码为SID帧。

306b,如果距离De大于或等于第一阈值,或者距离Dlsf大于或等于第二阈值,则确定继续延长拖尾区间,将当前输入帧编码为拖尾帧。

本发明实施例中,通过根据在当前输入帧被编码为SID帧的情况下解码器根据当前输入帧生成的舒适噪声与实际静音信号的偏离程度,确定当前输入帧的编码方式为拖尾帧编码方式或SID帧编码方式,而非简单地根据统计得到的语音活动帧的数量将当前输入帧编码为拖尾帧,从而能够节省通信带宽。

由上述可知,在编码器进入非连续传输状态后,会间歇地编码SID帧。SID帧通常包括一些描述静音信号的能量和频谱信息等。解码器从编码器接收到SID帧后,会根据SID帧中的信息生成舒适噪声。目前,由于SID帧是每隔若干帧才编码和发送一次,因此在编码SID帧时,SID帧的信息通常都是编码器对当前输入静音帧及其之前的若干静音帧统计得到的。例如,在一段连续的静音区间内,当前编码的SID帧的信息通常是在当前SID帧以及当前SID帧与上一SID帧之间的多个静音帧中统计得到的。又例如,在一段语音活动段之后的第一个SID帧的编码信息通常是编码器对当前输入静音帧及与其相邻的语音活动段末尾的若干拖尾帧统计得到的,也就是对位于拖尾区间内的静音帧进行统计得到的。为了便于描述,将用于统计SID帧编码参数的多个静音帧称为分析区间。具体地,在编码SID帧时,SID帧的参数都是对分析区间的多个静音帧的参数取平均或取中值得到的。然而,实际的背景噪声频谱会夹杂各种突发的瞬态的频谱成份。一旦分析区间内包含了这样的频谱成份,求均值的方法会把这些成份也混入SID帧中,取中值的方法甚至有可能错误地将含有这类频谱成份的静音谱编码入SID帧中,从而造成解码端根据SID帧生成的舒适噪声的质量下降。

图4是根据本发明一个实施例的信号处理方法的示意性流程图。图4的方法由编码器或解码器执行,例如可以由图1中的编码器110或解码器120执行。

410,确定P个静音帧中每个静音帧的组加权谱距离(Group Weighted Spectral Distance),其中P个静音帧中每个静音帧的组加权谱距离为P个静音帧中每个静音帧与其它(P-1)个静音帧之间的加权谱距离之和,P为正整数。

例如,编码器或解码器可以将当前输入静音帧之前的多个静音帧的参数存储在某个缓存中。该缓存的长度可以是固定的或变化的。上述P个静音帧可以是由编码器或解码器从该缓存中选择的。

420,根据P个静音帧中每个静音帧的组加权谱距离,确定第一谱参数,第一谱参数用于生成舒适噪声。

本发明实施例中,通过根据P个静音帧中每个静音帧的组加权谱距离确定用于生成舒适噪声的第一谱参数,而非简单地对多个静音帧的谱参数取平均或取中值得到用于生成舒适噪声的谱参数,从而能够提升舒适噪声的质量。

可选地,作为一个实施例,在步骤410中,可以根据P个静音帧中每个静音帧的谱参数,确定每个静音帧的组加权谱距离。例如,可以按照等式(11)确定P个静音帧中的第x帧的组加权谱距离swd[x]

<mrow> <msup> <mi>swd</mi> <mrow> <mo>&lsqb;</mo> <mi>x</mi> <mo>&rsqb;</mo> </mrow> </msup> <mo>=</mo> <munderover> <mi>&Sigma;</mi> <mrow> <mi>j</mi> <mo>=</mo> <mn>0</mn> <mo>,</mo> <mi>j</mi> <mo>&NotEqual;</mo> <mi>x</mi> </mrow> <mrow> <mi>P</mi> <mo>-</mo> <mn>1</mn> </mrow> </munderover> <munderover> <mi>&Sigma;</mi> <mrow> <mi>i</mi> <mo>=</mo> <mn>0</mn> </mrow> <mrow> <mi>K</mi> <mo>-</mo> <mn>1</mn> </mrow> </munderover> <mi>w</mi> <mrow> <mo>(</mo> <mi>i</mi> <mo>)</mo> </mrow> <mo>&lsqb;</mo> <msup> <mi>U</mi> <mrow> <mo>&lsqb;</mo> <mi>x</mi> <mo>&rsqb;</mo> </mrow> </msup> <mrow> <mo>(</mo> <mi>i</mi> <mo>)</mo> </mrow> <mo>-</mo> <msup> <mi>U</mi> <mrow> <mo>&lsqb;</mo> <mi>j</mi> <mo>&rsqb;</mo> </mrow> </msup> <mrow> <mo>(</mo> <mi>i</mi> <mo>)</mo> </mrow> <mo>&rsqb;</mo> <mo>-</mo> <mo>-</mo> <mo>-</mo> <mrow> <mo>(</mo> <mn>11</mn> <mo>)</mo> </mrow> </mrow>

其中,U[x](i)可以表示第x帧的第i个谱参数,U[j](i)可以表示第j帧的第i个谱参数,w(i)可以为加权系数,K为谱参数的系数数目。

例如,上述每个静音帧的谱参数可以包括LSF系数、LSP系数、ISF系数、ISP系数、LPC系数、反射系数、FFT系数或MDCT系数等。因此,相应地,在步骤420中,第一谱参数可以包括LSF系数、LSP系数、ISF系数、ISP系数、LPC系数、反射系数、FFT系数或MDCT系数等。

下面以谱参数为LSF系数为例说明步骤420的过程。例如,可以确定每个静音帧的LSF系数与其它(P-1)个静音帧的LSF系数之间的加权谱距离之和,即每个静音帧的LSF系数的组加权谱距离swd,比如可以按照等式(12)确定这P个静音帧中第x帧LSF系数的组加权谱距离swd′[x],其中x=0,1,2,…,P-1:

<mrow> <msup> <mi>swd</mi> <mrow> <mo>&prime;</mo> <mo>&lsqb;</mo> <mi>x</mi> <mo>&rsqb;</mo> </mrow> </msup> <mo>=</mo> <munderover> <mi>&Sigma;</mi> <mrow> <mi>j</mi> <mo>=</mo> <mn>0</mn> <mo>,</mo> <mi>j</mi> <mo>&NotEqual;</mo> <mi>x</mi> </mrow> <mrow> <mi>P</mi> <mo>-</mo> <mn>1</mn> </mrow> </munderover> <munderover> <mi>&Sigma;</mi> <mrow> <mi>i</mi> <mo>=</mo> <mn>0</mn> </mrow> <mrow> <msup> <mi>K</mi> <mo>&prime;</mo> </msup> <mo>-</mo> <mn>1</mn> </mrow> </munderover> <msup> <mi>w</mi> <mo>&prime;</mo> </msup> <mrow> <mo>(</mo> <mi>i</mi> <mo>)</mo> </mrow> <mo>&lsqb;</mo> <msup> <mi>lsf</mi> <mrow> <mo>&lsqb;</mo> <mi>x</mi> <mo>&rsqb;</mo> </mrow> </msup> <mrow> <mo>(</mo> <mi>i</mi> <mo>)</mo> </mrow> <mo>-</mo> <msup> <mi>lsf</mi> <mrow> <mo>&lsqb;</mo> <mi>j</mi> <mo>&rsqb;</mo> </mrow> </msup> <mrow> <mo>(</mo> <mi>i</mi> <mo>)</mo> </mrow> <mo>&rsqb;</mo> <mo>-</mo> <mo>-</mo> <mo>-</mo> <mrow> <mo>(</mo> <mn>12</mn> <mo>)</mo> </mrow> </mrow>

其中,w′(i)为加权系数,K′为滤波器阶数。

可选地,作为一个实施例,每个静音帧可以与一组加权系数相对应,其中在这一组加权系数中,对应于第一组子带的加权系数大于对应于第二组子带的加权系数,其中第一组子带的感知重要性大于第二组子带的感知重要性。

子带可以是基于对频谱系数的划分得到的,具体过程可以参照现有技术。子带的感知重要性可以按照现有技术确定。通常,低频子带的感知重要性大于高频子带的感知重要性,因此在一个简化的实施例中,低频子带的加权系数可以大于高频子带的加权系数。

例如,在等式(12)中,w′(i)为加权系数,i=0,1,…,K′-1。每个静音帧对应于一组加权系数,即w′(0)至w′(K′-1)。在这组加权系数中,低频子带的lsf系数的加权系数大于高频子带的lsf系数的加权系数。由于通常背景噪声的能量更多地集中在低频带,因此,解码器生成的舒适噪声的质量更多地是由低频带的信号的质量决定的。因此,高频带的lsf系数的谱距离对最终加权谱距离的影响应当适当减弱。

可选地,作为另一实施例,在步骤420中,可以从P个静音帧中选择第一静音帧,使得在P个静音帧中第一静音帧的组加权谱距离最小,并可以将第一静音帧的谱参数确定为第一谱参数。

具体地,组加权谱距离最小,可以表明第一静音帧的谱参数最能表征这P个静音帧谱参数的共性。因此,可以将第一静音帧的谱参数编码入SID帧。例如,对于每个静音帧的LSF系数的组加权谱距离,第一静音帧的LSF系数的组加权谱距离最小,那么可以表明第一静音帧的LSF谱是最能够表征这P个静音帧的LSF谱的共性的LSF谱。

可选地,作为另一实施例,在步骤420中,可以从P个静音帧中选择至少一个静音帧,使得在P个静音帧中至少一个静音帧的组加权谱距离均小于第三阈值,然后可以根据至少一个静音帧的谱参数,确定第一谱参数。

例如,在一个实施例中,可以将至少一个静音帧的谱参数的均值确定为第一谱参数。在另一个实施例中,可以将至少一个静音帧的谱参数的中值确定为第一谱参数。在另一个实施例中,也可以使用本发明实施例中的其它方法根据上述至少一个静音帧的谱参数确定第一谱参数。

下面仍以谱参数为LSF系数为例进行说明,那么第一谱参数可以为第一LSF系数。例如,可以按照等式(12)得到P个静音帧中每个静音帧的LSF系数的组加权谱距离。从P个静音帧中选择LSF系数的组加权谱距离小于第三阈值的至少一个静音帧。然后可以将至少一个静音帧的LSF系数的均值作为第一LSF系数。例如,可以按照等式(13)确定第一LSF系数lsfSID(i),i=0,1,…,K′-1,K′为滤波器阶数。

<mrow> <mi>l</mi> <mi>s</mi> <mi>f</mi> <mi>S</mi> <mi>I</mi> <mi>D</mi> <mrow> <mo>(</mo> <mi>i</mi> <mo>)</mo> </mrow> <mo>=</mo> <mfrac> <mn>1</mn> <mrow> <munderover> <mi>&Sigma;</mi> <mrow> <mi>j</mi> <mo>=</mo> <mn>0</mn> <mo>,</mo> <mi>j</mi> <mo>&NotEqual;</mo> <mo>{</mo> <mi>A</mi> <mo>}</mo> </mrow> <mrow> <mi>P</mi> <mo>-</mo> <mn>1</mn> </mrow> </munderover> <mn>1</mn> </mrow> </mfrac> <mo>&CenterDot;</mo> <munderover> <mi>&Sigma;</mi> <mrow> <mi>j</mi> <mo>=</mo> <mn>0</mn> <mo>,</mo> <mi>j</mi> <mo>&NotEqual;</mo> <mo>{</mo> <mi>A</mi> <mo>}</mo> </mrow> <mrow> <mi>P</mi> <mo>-</mo> <mn>1</mn> </mrow> </munderover> <msup> <mi>lsf</mi> <mrow> <mo>&lsqb;</mo> <mi>j</mi> <mo>&rsqb;</mo> </mrow> </msup> <mrow> <mo>(</mo> <mi>i</mi> <mo>)</mo> </mrow> <mo>-</mo> <mo>-</mo> <mo>-</mo> <mrow> <mo>(</mo> <mn>13</mn> <mo>)</mo> </mrow> </mrow>

其中,{A}可以表示P个静音帧中除了上述至少一个静音帧之外的静音帧。lsf[j](i)可以表示第j帧的第i个LSF系数。

此外,上述第三阈值可以是预先设定的。

可选地,作为另一实施例,在图4的方法由编码器执行时,上述P个静音帧可以包括当前输入静音帧以及当前输入静音帧之前的(P-1)个静音帧。

在图4的方法由解码器执行时,上述P个静音帧可以为P个拖尾帧。

可选地,作为另一实施例,在图4的方法由编码器执行时,编码器可以将当前输入静音帧编码为SID帧,其中SID帧包括第一谱参数。

本发明实施例中,编码器可以将当前输入帧编码为SID帧,使得SID帧中包括第一谱参数,而非简单地对多个静音帧的谱参数取平均或取中值得到SID帧中的谱参数,从而能够提升解码器根据该SID帧生成的舒适噪声的质量。

图5是根据本发明另一实施例的信号处理方法的示意性流程图。图5的方法由编码器或解码器执行,例如可以由图1中的编码器110或解码器120执行。

510,将输入信号的频带划分为R个子带,其中R为正整数。

520,在R个子带中的每个子带上,确定S个静音帧中每个静音帧的子带组谱距离,S个静音帧中每个静音帧的子带组谱距离为在每个子带上S个静音帧中每个静音帧与其它(S-1)个静音帧之间的谱距离之和,S为正整数。

530,在每个子带上,根据S个静音帧中每个静音帧的子带组谱距离,确定每个子带的第一谱参数,每个子带的第一谱参数用于生成舒适噪声。

本发明实施例中,通过在R个子带中每个子带上根据S个静音帧中每个静音帧的子带组谱距离确定用于生成舒适噪声的每个子带的第一谱参数,而非简单地对多个静音帧的谱参数取平均或取中值得到用于生成舒适噪声的谱参数,从而能够提升舒适噪声的质量。

在步骤530中,对于每个子带,可以根据S个静音帧每个静音帧的谱参数,确定每一个子带上的每个静音帧的子带组谱距离。可选地,作为一个实施例,可以按照等式(14)确定第k个子带上第y个静音帧的子带组谱距离ssdk[y],其中,k=1,2,…,R,y=0,1,…,S-1。

<mrow> <msup> <msub> <mi>ssd</mi> <mi>k</mi> </msub> <mrow> <mo>&lsqb;</mo> <mi>y</mi> <mo>&rsqb;</mo> </mrow> </msup> <mo>=</mo> <munderover> <mi>&Sigma;</mi> <mrow> <mi>j</mi> <mo>=</mo> <mn>0</mn> <mo>,</mo> <mi>j</mi> <mo>&NotEqual;</mo> <mi>y</mi> </mrow> <mrow> <mi>S</mi> <mo>-</mo> <mn>1</mn> </mrow> </munderover> <munderover> <mi>&Sigma;</mi> <mrow> <mi>i</mi> <mo>=</mo> <mn>0</mn> </mrow> <mrow> <mi>L</mi> <mrow> <mo>(</mo> <mi>k</mi> <mo>)</mo> </mrow> <mo>-</mo> <mn>1</mn> </mrow> </munderover> <mo>&lsqb;</mo> <msup> <msub> <mi>U</mi> <mi>k</mi> </msub> <mrow> <mo>&lsqb;</mo> <mi>y</mi> <mo>&rsqb;</mo> </mrow> </msup> <mrow> <mo>(</mo> <mi>i</mi> <mo>)</mo> </mrow> <mo>-</mo> <msup> <msub> <mi>U</mi> <mi>k</mi> </msub> <mrow> <mo>&lsqb;</mo> <mi>j</mi> <mo>&rsqb;</mo> </mrow> </msup> <mrow> <mo>(</mo> <mi>i</mi> <mo>)</mo> </mrow> <mo>&rsqb;</mo> <mo>-</mo> <mo>-</mo> <mo>-</mo> <mrow> <mo>(</mo> <mn>14</mn> <mo>)</mo> </mrow> </mrow>

其中,L(k)可以表示第k个子带所包括的谱参数的系数数目,Uk[y](i)可以表示第k个子带上第y个静音帧的谱参数的第i个系数,Uk[j](i)可以表示第k个子带上第j个静音帧的谱参数的第i个系数。

例如,上述每个静音帧的谱参数可以包括LSF系数、LSP系数、ISF系数、ISP系数、LCP系数、反射系数、FFT系数或MDCT系数等。

下面以谱参数为LSF系数为例进行说明。例如,可以确定每个静音帧的LSF系数的子带组谱距离。每个子带可以包括一个LSF系数,也可以包括多个LSF系数。例如,可以按照等式(15)确定第k个子带上第y个静音帧的LSF系数的子带组谱距离ssdk[y],其中,k=1,2,…,R,y=0,1,…,S-1。

<mrow> <msup> <msub> <mi>ssd</mi> <mi>k</mi> </msub> <mrow> <mo>&lsqb;</mo> <mi>y</mi> <mo>&rsqb;</mo> </mrow> </msup> <mo>=</mo> <munderover> <mi>&Sigma;</mi> <mrow> <mi>j</mi> <mo>=</mo> <mn>0</mn> <mo>,</mo> <mi>j</mi> <mo>&NotEqual;</mo> <mi>k</mi> </mrow> <mrow> <mi>S</mi> <mo>-</mo> <mn>1</mn> </mrow> </munderover> <munderover> <mi>&Sigma;</mi> <mrow> <mi>i</mi> <mo>=</mo> <mn>0</mn> </mrow> <mrow> <mi>L</mi> <mrow> <mo>(</mo> <mi>k</mi> <mo>)</mo> </mrow> <mo>-</mo> <mn>1</mn> </mrow> </munderover> <mo>&lsqb;</mo> <msup> <msub> <mi>lsf</mi> <mi>k</mi> </msub> <mrow> <mo>&lsqb;</mo> <mi>y</mi> <mo>&rsqb;</mo> </mrow> </msup> <mrow> <mo>(</mo> <mi>i</mi> <mo>)</mo> </mrow> <mo>-</mo> <msup> <msub> <mi>lsf</mi> <mi>k</mi> </msub> <mrow> <mo>&lsqb;</mo> <mi>j</mi> <mo>&rsqb;</mo> </mrow> </msup> <mrow> <mo>(</mo> <mi>i</mi> <mo>)</mo> </mrow> <mo>&rsqb;</mo> <mo>-</mo> <mo>-</mo> <mo>-</mo> <mrow> <mo>(</mo> <mn>15</mn> <mo>)</mo> </mrow> </mrow>

其中,L(k)可以表示第k个子带所包括的LSF系数的数目。lsfk[y](i)可以表示第k个子带上第y个静音帧的第i个LSF系数,lsfk[j](i)可以表示第k个子带上第j个静音帧的第i个LSF系数。

相应地,每个子带的第一谱参数也可以包括LSF系数、LSP系数、ISF系数、ISP系数、LCP系数、反射系数、FFT系数或MDCT系数等。

可选地,作为另一实施例,在步骤530中,可以在每个子带上,从S个静音帧中选择第一静音帧,使得在每个子带上S个静音帧中第一静音帧的子带组谱距离最小。然后可以在每个子带上,将第一静音帧的谱参数作为每个子带的第一谱参数。

具体地,编码器可以确定每个子带上的第一静音帧,将该第一静音帧的谱参数作为该子带的第一谱参数。

下面仍以谱参数为LSF系数为例进行说明,相应地,每个子带的第一谱参数为每个子带的第一LSF系数。例如,可以按照等式(15)确定每个子带上的各个静音帧的LSF系数的子带组谱距离。对于每个子带,可以选择子带组谱距离最小的帧的LSF系数作为该子带的第一LSF系数。

可选地,作为另一实施例,在步骤530中,可以在每个子带上,从S个静音帧中选择至少一个静音帧,使得至少一个静音帧的子带组谱距离均小于第四阈值。然后可以在每个子带上,根据至少一个静音帧的谱参数,确定每个子带的第一谱参数。

例如,在一个实施例中,可以将每个子带上的S个静音帧中的至少一个静音帧的谱参数的均值确定为每个子带的第一谱参数。在另一个实施例中,可以将每个子带上的S个静音帧中的至少一个静音帧的谱参数的中值确定为每个子带的第一谱参数。在另一个实施例中也可以使用本发明中的其它方法根据上述至少一个静音帧的谱参数确定每个子带的第一谱参数。

以LSF系数为例,可以按照等式(15)确定每个子带上的各个静音帧的LSF系数的子带组谱距离。对于每个子带,可以选择子带组谱距离均小于第四阈值的至少一个静音帧,将至少一个静音帧的LSF系数的均值确定为该子带的第一LSF系数。上述第四阈值可以是预先设定的。

可选地,作为另一实施例,在图5的方法由编码器执行时,上述S个静音帧可以包括当前输入静音帧以及当前输入静音帧之前的(S-1)个静音帧。

在图5的方法由解码器执行时,上述S个静音帧可以是S个拖尾帧。

可选地,作为另一实施例,在图5的方法由编码器执行时,编码器可以将当前输入静音帧编码为SID帧,其中SID帧包括每个子带的第一谱参数。

本发明实施例中,编码器可以在编码SID帧时,使SID帧包括各个子带的第一谱参数,而非简单地对多个静音帧的谱参数取平均或取中值得到SID帧中的谱参数,从而能够提升解码器根据该SID帧生成的舒适噪声的质量。

图6是根据本发明另一实施例的信号处理方法的示意性流程图。图6的方法由编码器或解码器执行,例如可以由图1中的编码器110或解码器120执行。

610,确定T个静音帧中每个静音帧的第一参数,第一参数用于表征谱熵,T为正整数。

例如,在静音帧的谱熵能够直接确定时,第一参数可以为谱熵。某些情况下,遵循严格定义的谱熵不一定能被直接确定,此时,第一参数可以为能够表征谱熵的其它参数,例如能够反映频谱结构性强弱的参数等。

例如,可以根据每个静音帧的LSF系数确定每个静音帧的第一参数。比如,可以按照等式(16)确定第z个静音帧的第一参数,其中z=1,2,…,T。

<mrow> <msup> <mi>C</mi> <mrow> <mo>&lsqb;</mo> <mi>z</mi> <mo>&rsqb;</mo> </mrow> </msup> <mo>=</mo> <munderover> <mi>&Sigma;</mi> <mrow> <mi>i</mi> <mo>=</mo> <mn>0</mn> </mrow> <mrow> <mi>K</mi> <mo>-</mo> <mn>2</mn> </mrow> </munderover> <msup> <mrow> <mo>&lsqb;</mo> <mi>l</mi> <mi>s</mi> <mi>f</mi> <mrow> <mo>(</mo> <mi>i</mi> <mo>+</mo> <mn>1</mn> <mo>)</mo> </mrow> <mo>-</mo> <mi>l</mi> <mi>s</mi> <mi>f</mi> <mrow> <mo>(</mo> <mi>i</mi> <mo>)</mo> </mrow> <mo>-</mo> <mfrac> <mn>1</mn> <mrow> <mi>K</mi> <mo>-</mo> <mn>1</mn> </mrow> </mfrac> <munderover> <mi>&Sigma;</mi> <mrow> <mi>j</mi> <mo>=</mo> <mn>0</mn> </mrow> <mrow> <mi>K</mi> <mo>-</mo> <mn>2</mn> </mrow> </munderover> <mo>&lsqb;</mo> <mi>l</mi> <mi>s</mi> <mi>f</mi> <mrow> <mo>(</mo> <mi>j</mi> <mo>+</mo> <mn>1</mn> <mo>)</mo> </mrow> <mo>-</mo> <mi>l</mi> <mi>s</mi> <mi>f</mi> <mrow> <mo>(</mo> <mi>j</mi> <mo>)</mo> </mrow> <mo>&rsqb;</mo> <mo>&rsqb;</mo> </mrow> <mn>2</mn> </msup> <mo>-</mo> <mo>-</mo> <mo>-</mo> <mrow> <mo>(</mo> <mn>16</mn> <mo>)</mo> </mrow> </mrow>

其中,K为滤波器阶数。

此处,C是能够反映频谱结构性强弱的参数,并不严格遵循谱熵的定义,C越大,可以表示谱熵越小。

620,根据T个静音帧中每个静音帧的第一参数,确定第一谱参数,第一谱参数用于生成舒适噪声。

本发明实施例中,通过根据T个静音帧的用于表征谱熵的第一参数确定用于生成舒适噪声的第一谱参数,而非简单地对多个静音帧的谱参数取平均或取中值得到用于生成舒适噪声的谱参数,从而能够提升舒适噪声的质量。

可选地,作为一个实施例,可以在确定能够按照聚类准则将T个静音帧分为第一组静音帧和第二组静音帧的情况下,可以根据第一组静音帧的谱参数,确定第一谱参数,其中第一组静音帧的第一参数所表征的谱熵均大于第二组静音帧的第一参数所表征的谱熵。在确定不能够按照聚类准则将T个静音帧分为第一组静音帧和第二组静音帧的情况下,可以对T个静音帧的谱参数进行加权平均处理,以确定第一谱参数,其中第一组静音帧的第一参数所表征的谱熵均大于第二组静音帧的第一参数所表征的谱熵。

一般而言,普通噪声谱的结构性相对较弱,而非噪声信号谱或包含有瞬态成份的噪声谱的结构性相对较强。谱的结构性强弱直接对应谱熵的大小。相对而言,普通噪声的谱熵会较大,而非噪声信号或含有瞬态成份的噪声的谱熵会较小。因此,在T个静音帧能够被分为第一组静音帧和第二组静音帧的情况下,编码器可以根据静音帧的谱熵,选择不包含瞬态成份的第一组静音帧的谱参数来确定第一谱参数。

例如,在一个实施例中可以将第一组静音帧的谱参数的均值确定为第一谱参数。在另一个实施例中,可以将第一组静音帧的谱参数的中值确定为第一谱参数。在另一个实施例中,也可以使用本发明中的其它方法根据上述第一组静音帧的谱参数确定第一谱参数。

如果T个静音帧不能被分为第一组静音帧和第二组静音帧,那么可以对T个静音帧的谱参数进行加权平均处理来得到第一谱参数。可选地,作为另一实施例,上述聚类准则可以包括:第一组静音帧中每个静音帧的第一参数与第一均值之间的距离小于或等于第一组静音帧中每个静音帧的第一参数与第二均值之间的距离;第二组静音帧中每个静音帧的第一参数与第二均值之间的距离小于或等于第二组静音帧中每个静音帧的第一参数与第一均值之间的距离;第一均值与第二均值之间的距离大于第一组静音帧的第一参数与第一均值之间的平均距离;第一均值与第二均值之间的距离大于第二组静音帧的第一参数与第二均值之间的平均距离。

其中,第一均值为第一组静音帧的第一参数的平均值,第二均值为第二组静音帧的第一参数的平均值。

可选地,作为另一实施例,编码器可以对T个静音帧的谱参数进行加权平均处理,以确定第一谱参数;其中,对于T个静音帧中任意不同的第i个静音帧和第j个静音帧,第i个静音帧对应的加权系数大于或等于j个静音帧对应的加权系数;在第一参数与谱熵正相关时,第i个静音帧的第一参数大于第j个静音帧的第一参数;在第一参数与谱熵负相关时,第i个静音帧的第一参数小于第j个静音帧的第一参数,i和j均为正整数,且1≤i≤T,1≤j≤T。

具体地,编码器可以对T个静音帧的谱参数进行加权平均,从而得到第一谱参数。如上所述,普通噪声的谱熵会较大,而非噪声信号或含有瞬态成份的噪声的谱熵会较小。因此,在T个静音帧中,谱熵较大的静音帧对应的加权系数可以大于或等于谱熵较小的静音帧对应的加权系数。

可选地,作为另一实施例,在图6的方法由编码器执行时,上述T个静音帧可以包括当前输入静音帧以及当前输入静音帧之前的(T-1)个静音帧。

在图6的方法由解码器执行时,上述T个静音帧可以为T个拖尾帧。

可选地,作为另一实施例,在图6的方法由编码器执行时,编码器可以将当前输入静音帧编码为SID帧,其中SID帧包括第一谱参数。

本发明实施例中,编码器可以在编码SID帧时,使SID帧包括各个子带的第一谱参数,而非简单地对多个静音帧的谱参数取平均或取中值得到SID帧中的谱参数,从而能够提升解码器根据该SID帧生成的舒适噪声的质量。

图7是根据本发明一个实施例的信号编码设备的示意框图。图7的设备700的一个例子为编码器,例如图1所示的编码器110。设备700包括第一确定单元710、第二确定单元720、第三确定单元730和编码单元740。

第一确定单元710在当前输入帧的前一帧的编码方式为连续编码方式的情况下,预测在当前输入帧被编码为SID帧的情况下解码器根据当前输入帧生成的舒适噪声,并确定实际静音信号,其中当前输入帧为静音帧。第二确定单元720确定第一确定单元710确定的舒适噪声与第一确定单元710确定的实际静音信号的偏离程度。第三确定单元730根据第二确定单元确定的偏离程度,确定当前输入帧的编码方式,当前输入帧的编码方式包括拖尾帧编码方式或SID帧编码方式。编码单元740根据第三确定单元730确定的当前输入帧的编码方式,对当前输入帧进行编码。

本发明实施例中,通过在当前输入帧的前一帧的编码方式为连续编码方式的情况下,预测在当前输入帧被编码为SID帧的情况下解码器根据当前输入帧生成的舒适噪声,并确定舒适噪声与实际静音信号的偏离程度,根据该偏离程度确定当前输入帧的编码方式为拖尾帧编码方式或SID帧编码方式,而非简单地根据统计得到的语音活动帧的数量将当前输入帧编码为拖尾帧,从而能够节省通信带宽。

可选地,作为一个实施例,第一确定单元710可以预测舒适噪声的特征参数,并确定实际静音信号的特征参数,其中舒适噪声的特征参数与实际静音信号的特征参数是一一对应的。第二确定单元720可以确定舒适噪声的特征参数与实际静音信号的特征参数之间的距离。

可选地,作为另一实施例,第三确定单元730可以在舒适噪声的特征参数与实际静音信号的特征参数之间的距离小于阈值集合中对应阈值的情况下,确定当前输入帧的编码方式为SID帧编码方式,其中舒适噪声的特征参数与实际静音信号的特征参数之间的距离与阈值集合中的阈值是一一对应的。第三确定单元730可以在舒适噪声的特征参数与实际静音信号的特征参数之间的距离大于或等于阈值集合中对应阈值的情况下,确定当前输入帧的编码方式为拖尾帧编码方式。

可选地,作为另一实施例,上述舒适噪声的特征参数可以用于表征以下至少一种信息:能量信息,谱信息。

可选地,作为另一实施例,上述能量信息可以包括CELP激励能量。上述谱信息可以包括以下至少一种:线性预测滤波器系数,FFT系数,MDCT系数。

线性预测滤波器系数可以包括以下至少一种:LSF系数,LSP系数,ISF系数,ISP系数,反射系数,LPC系数。

可选地,作为另一实施例,第一确定单元710可以根据当前输入帧的前一帧的舒适噪声参数和当前输入帧的特征参数,预测舒适噪声的特征参数。或者,第一确定单元710可以根据当前输入帧之前的L个拖尾帧的特征参数和当前输入帧的特征参数,预测舒适噪声的特征参数,其中L为正整数。

可选地,作为另一实施例,第一确定单元710可以确定当前输入帧的特征参数作为实际静音信号的特征参数。或者,第一确定单元710可以对M个静音帧的特征参数进行统计处理,以确定实际静音信号的特征参数。

可选地,作为另一实施例,上述M个静音帧可以包括当前输入帧以及当前输入帧之前的(M-1)个静音帧,M为正整数。

可选地,作为另一实施例,舒适噪声的特征参数可以包括舒适噪声的码激励线性预测CELP激励能量和舒适噪声的线谱频率LSF系数,实际静音信号的特征参数可以包括实际静音信号的CELP激励能量和实际静音信号的LSF系数。第二确定单元720可以确定舒适噪声的CELP激励能量与实际静音信号的CELP激励能量之间的距离De,并确定舒适噪声的LSF系数与实际静音信号的LSF系数之间的距离Dlsf。

可选地,作为另一实施例,第三确定单元730可以在距离De小于第一阈值,且距离Dlsf小于第二阈值的情况下,确定当前输入帧的编码方式为SID帧编码方式。第三确定单元730可以在距离De大于或等于第一阈值,或者距离Dlsf大于或等于第二阈值的情况下,确定当前输入帧的编码方式为拖尾帧编码方式。

可选地,作为另一实施例,设备700还可以包括第四确定单元750。第四确定单元750可以获取预设的第一阈值和预设的第二阈值。或者,第四确定单元750可以根据当前输入帧之前的N个静音帧的CELP激励能量确定第一阈值,并根据N个静音帧的LSF系数确定第二阈值,其中N为正整数。

可选地,作为另一实施例,第一确定单元710可以采用第一预测方式,预测舒适噪声,其中第一预测方式与解码器生成舒适噪声的方式相同。

设备700的其它功能和操作可以参照上面图1至图3b的方法实施例的过程,为了避免重复,此处不再赘述。

图8是根据本发明另一实施例的信号处理设备的示意框图。图8的设备800的例子为编码器或解码器,如图1所示的编码器110或解码器120。设备800包括第一确定单元810和第二确定单元820。

第一确定单元810确定P个静音帧中每个静音帧的组加权谱距离,其中P个静音帧中每个静音帧的组加权谱距离为P个静音帧中每个静音帧与其它(P-1)个静音帧之间的加权谱距离之和,P为正整数。第二确定单元820根据第一确定单元810确定的P个静音帧中每个静音帧的组加权谱距离,确定第一谱参数,其中第一谱参数用于生成舒适噪声。

本发明实施例中,通过根据P个静音帧中每个静音帧的组加权谱距离确定用于生成舒适噪声的第一谱参数,而非简单地对多个静音帧的谱参数取平均或取中值得到用于生成舒适噪声的谱参数,从而能够提升舒适噪声的质量。

可选地,作为一个实施例,每个静音帧可以与一组加权系数相对应,其中在这一组加权系数中,对应于第一组子带的加权系数大于对应于第二组子带的加权系数,其中第一组子带的感知重要性大于第二组子带的感知重要性。

可选地,作为另一实施例,第二确定单元820可以从P个静音帧中选择第一静音帧,使得在P个静音帧中第一静音帧的组加权谱距离最小,并可以将第一静音帧的谱参数确定为第一谱参数。

可选地,作为另一实施例,第二确定单元820可以从P个静音帧中选择至少一个静音帧,使得在P个静音帧中至少一个静音帧的组加权谱距离均小于第三阈值,并根据至少一个静音帧的谱参数,确定第一谱参数。

可选地,作为另一实施例,在设备800为编码器时,设备800还可以包括编码单元830。

上述P个静音帧可以包括当前输入静音帧以及当前输入静音帧之前的(P-1)个静音帧。编码单元830可以将当前输入静音帧编码为SID帧,其中SID帧包括第二确定单元820确定的第一谱参数。

设备800的其它功能和操作可以参照上面图4的方法实施例的过程,为了避免重复,此处不再赘述。

图9是根据本发明另一实施例的信号处理设备的示意框图。图9的设备900的例子为编码器或解码器,如图1所示的编码器110或解码器120。设备900包括划分单元910、第一确定单元920和第二确定单元930。

划分单元910将输入信号的频带划分为R个子带,其中R为正整数。第一确定单元920在划分单元910划分的R个子带中每个子带上,确定S个静音帧中每个静音帧的子带组谱距离,S个静音帧中每个静音帧的子带组谱距离为在每个子带上S个静音帧中每个静音帧与其它(S-1)个静音帧之间的谱距离之和,S为正整数。第二确定单元930在每个子带上根据第一确定单元920确定的S个静音帧中每个静音帧的谱距离,确定每个子带的第一谱参数,其中每个子带的第一谱参数用于生成舒适噪声。

本发明实施例中,通过在R个子带中每个子带上根据S个静音帧中每个静音帧的谱距离确定用于生成舒适噪声的每个子带的谱参数,而非简单地对多个静音帧的谱参数取平均或取中值得到用于生成舒适噪声的的谱参数,从而能够提升舒适噪声的质量。

可选地,作为一个实施例,第二确定单元930可以在每个子带上,从S个静音帧中选择第一静音帧,使得在每个子带上的S个静音帧中第一静音帧的子带组谱距离最小,并在每个子带上将第一静音帧的谱参数确定为每个子带的第一谱参数。

可选地,作为另一实施例,第二确定单元930可以在每个子带上,从S个静音帧中选择至少一个静音帧,使得至少一个静音帧的子带组谱距离均小于第四阈值,并在每个子带上,根据至少一个静音帧的谱参数确定每个子带的第一谱参数。

可选地,作为另一实施例,在设备900为编码器时,设备900还可以包括编码单元940。

上述S个静音帧可以包括当前输入静音帧以及当前输入静音帧之前的(S-1)个静音帧。编码单元940可以将当前输入静音帧编码为SID帧,其中SID帧包括每个子带的第一谱参数。

设备900的其它功能和操作可以参照上面图5的方法实施例的过程,为了避免重复,此处不再赘述。

图10是根据本发明另一实施例的信号处理设备的示意框图。图10的设备1000的一个例子为编码器或解码器,如图1所示的编码器110或解码器120。设备1000包括第一确定单元1010和第二确定单元1020。

第一确定单元1010确定T个静音帧中每个静音帧的第一参数,第一参数用于表征谱熵,T为正整数。第二确定单元1020根据第一确定单元1010确定的T个静音帧中每个静音帧的第一参数,确定第一谱参数,其中第一谱参数用于生成舒适噪声。

本发明实施例中,通过根据T个静音帧的用于表征谱熵的第一参数确定用于生成舒适噪声的第一谱参数,而非简单地对多个静音帧的谱参数取平均或取中值得到用于生成舒适噪声的谱参数,从而能够提升舒适噪声的质量。

可选地,作为一个实施例,第二确定单元1020可以在确定能够按照聚类准则将T个静音帧分为第一组静音帧和第二组静音帧的情况下,根据第一组静音帧的谱参数,确定第一谱参数,其中第一组静音帧的第一参数所表征的谱熵均大于第二组静音帧的第一参数所表征的谱熵;在确定不能够按照聚类准则将T个静音帧分为第一组静音帧和第二组静音帧的情况下,对T个静音帧的谱参数进行加权平均处理,以确定第一谱参数,其中第一组静音帧的第一参数所表征的谱熵均大于第二组静音帧的第一参数所表征的谱熵。

可选地,作为另一实施例,上述聚类准则可以包括:第一组静音帧中每个静音帧的第一参数与第一均值之间的距离小于或等于第一组静音帧中每个静音帧的第一参数与第二均值之间的距离;第二组静音帧中每个静音帧的第一参数与第二均值之间的距离小于或等于第二组静音帧中每个静音帧的第一参数与第一均值之间的距离;第一均值与第二均值之间的距离大于第一组静音帧的第一参数与第一均值之间的平均距离;第一均值与第二均值之间的距离大于第二组静音帧的第一参数与第二均值之间的平均距离。

其中,第一均值为第一组静音帧的第一参数的平均值,第二均值为第二组静音帧的第一参数的平均值。

可选地,作为另一实施例,第二确定单元1020可以对T个静音帧的谱参数进行加权平均处理,以确定第一谱参数。其中,对于T个静音帧中任意不同的第i个静音帧和第j个静音帧,第i个静音帧对应的加权系数大于或等于j个静音帧对应的加权系数;在第一参数与谱熵正相关时,第i个静音帧的第一参数大于第j个静音帧的第一参数;在第一参数与谱熵负相关时,第i个静音帧的第一参数小于第j个静音帧的第一参数,i和j均为正整数,且1≤i≤T,1≤j≤T。

可选地,作为另一实施例,在设备1000为编码器时,设备1000还可以包括编码单元1030。

上述T个静音帧可以包括当前输入静音帧以及当前输入静音帧之前的(T-1)个静音帧。编码单元1030可以将当前输入静音帧编码为SID帧,其中SID帧包括第一谱参数。

设备1000的其它功能和操作可以参照上面图6的方法实施例的过程,为了避免重复,此处不再赘述。

图11是根据本发明另一实施例的信号编码设备的示意框图。图7的设备1100的一个例子为编码器。设备1100包括存储器1110和处理器1120。

存储器1110可以包括随机存储器、闪存、只读存储器、可编程只读存储器、非易失性存储器或寄存器等。处理器1120可以是中央处理器(Central Processing Unit,CPU)。

存储器1110用于存储可执行指令。处理器1120可以执行存储器1110中存储的可执行指令,用于:在当前输入帧的前一帧的编码方式为连续编码方式的情况下,预测在当前输入帧被编码为SID帧的情况下解码器根据当前输入帧生成的舒适噪声,并确定实际静音信号,其中当前输入帧为静音帧;确定舒适噪声与实际静音信号的偏离程度;根据偏离程度,确定当前输入帧的编码方式,当前输入帧的编码方式包括拖尾帧编码方式或SID帧编码方式;根据当前输入帧的编码方式,对当前输入帧进行编码。

本发明实施例中,通过在当前输入帧的前一帧的编码方式为连续编码方式的情况下,预测在当前输入帧被编码为SID帧的情况下解码器根据当前输入帧生成的舒适噪声,并确定舒适噪声与实际静音信号的偏离程度,根据该偏离程度确定当前输入帧的编码方式为拖尾帧编码方式或SID帧编码方式,而非简单地根据统计得到的语音活动帧的数量将当前输入帧编码为拖尾帧,从而能够节省通信带宽。

可选地,作为一个实施例,处理器1120可以预测舒适噪声的特征参数,并确定实际静音信号的特征参数,其中舒适噪声的特征参数与实际静音信号的特征参数是一一对应的。处理器1120可以确定舒适噪声的特征参数与实际静音信号的特征参数之间的距离。

可选地,作为另一实施例,处理器1120可以在舒适噪声的特征参数与实际静音信号的特征参数之间的距离小于阈值集合中对应阈值的情况下,确定当前输入帧的编码方式为SID帧编码方式,其中舒适噪声的特征参数与实际静音信号的特征参数之间的距离与阈值集合中的阈值是一一对应的。处理器1120可以在舒适噪声的特征参数与实际静音信号的特征参数之间的距离大于或等于阈值集合中对应阈值的情况下,确定当前输入帧的编码方式为拖尾帧编码方式。

可选地,作为另一实施例,上述舒适噪声的特征参数可以用于表征以下至少一种信息:能量信息,谱信息。

可选地,作为另一实施例,上述能量信息可以包括CELP激励能量。上述谱信息可以包括以下至少一种:线性预测滤波器系数,FFT系数,MDCT系数。线性预测滤波器系数可以包括以下至少一种:LSF系数,LSP系数,ISF系数,ISP系数,反射系数,LPC系数。

可选地,作为另一实施例,处理器1120可以根据当前输入帧的前一帧的舒适噪声参数和当前输入帧的特征参数,预测舒适噪声的特征参数。或者,处理器1120可以根据当前输入帧之前的L个拖尾帧的特征参数和当前输入帧的特征参数,预测舒适噪声的特征参数,其中L为正整数。

可选地,作为另一实施例,处理器1120可以确定当前输入帧的特征参数作为实际静音信号的参数。或者,处理器1120可以对M个静音帧的特征参数进行统计处理,以确定实际静音信号的参数。

可选地,作为另一实施例,上述M个静音帧可以包括当前输入帧以及当前输入帧之前的(M-1)个静音帧,M为正整数。

可选地,作为另一实施例,舒适噪声的特征参数可以包括舒适噪声的码激励线性预测CELP激励能量和舒适噪声的线谱频率LSF系数,实际静音信号的特征参数可以包括实际静音信号的CELP激励能量和实际静音信号的LSF系数。处理器1120可以确定舒适噪声的CELP激励能量与实际静音信号的CELP激励能量之间的距离De,并确定舒适噪声的LSF系数与实际静音信号的LSF系数之间的距离Dlsf。

可选地,作为另一实施例,处理器1120可以在距离De小于第一阈值,且距离Dlsf小于第二阈值的情况下,确定当前输入帧的编码方式为SID帧编码方式。处理器1120可以在距离De大于或等于第一阈值,或者距离Dlsf大于或等于第二阈值的情况下,确定当前输入帧的编码方式为拖尾帧编码方式。

可选地,作为另一实施例,处理器1120还可以获取预设的第一阈值和预设的第二阈值。或者,处理器1120还可以根据当前输入帧之前的N个静音帧的CELP激励能量确定第一阈值,并根据N个静音帧的LSF系数确定第二阈值,其中N为正整数。

可选地,作为另一实施例,处理器1120可以采用第一预测方式,预测舒适噪声,其中第一预测方式与解码器生成舒适噪声的方式相同。

设备1100的其它功能和操作可以参照上面图1至图3b的方法实施例的过程,为了避免重复,此处不再赘述。

图12是根据本发明另一实施例的信号编码设备的示意框图。图12的设备1200的例子为编码器或解码器,如图1所示的编码器110或解码器120。设备1200包括存储器1210和处理器1220。

存储器1210可以包括随机存储器、闪存、只读存储器、可编程只读存储器、非易失性存储器或寄存器等。处理器1220可以是CPU。

存储器1210用于存储可执行指令。处理器1220可以执行存储器1210中存储的可执行指令,用于:确定P个静音帧中每个静音帧的组加权谱距离,其中P个静音帧中每个静音帧的组加权谱距离为P个静音帧中每个静音帧与其它(P-1)个静音帧之间的加权谱距离之和,P为正整数;根据P个静音帧中每个静音帧的组加权谱距离,确定第一谱参数,其中第一谱参数用于生成舒适噪声。

本发明实施例中,通过根据P个静音帧中每个静音帧的组加权谱距离确定用于生成舒适噪声的第一谱参数,而非简单地对多个静音帧的谱参数取平均或取中值得到用于生成舒适噪声的谱参数,从而能够提升舒适噪声的质量。

可选地,作为一个实施例,每个静音帧可以与一组加权系数相对应,其中在这一组加权系数中,对应于第一组子带的加权系数大于对应于第二组子带的加权系数,其中第一组子带的感知重要性大于第二组子带的感知重要性。

可选地,作为另一实施例,处理器1220可以从P个静音帧中选择第一静音帧,使得在P个静音帧中第一静音帧的组加权谱距离最小,并将第一静音帧的谱参数确定为第一谱参数。

可选地,作为另一实施例,处理器1220可以从P个静音帧中选择至少一个静音帧,使得在P个静音帧中至少一个静音帧的组加权谱距离均小于第三阈值,并根据至少一个静音帧的谱参数,确定第一谱参数。

可选地,作为另一实施例,在设备1200为编码器时,上述P个静音帧可以包括当前输入静音帧以及当前输入静音帧之前的(P-1)个静音帧。处理器1220可以将当前输入静音帧编码为SID帧,其中SID帧包括第一谱参数。

设备1200的其它功能和操作可以参照上面图4的方法实施例的过程,为了避免重复,此处不再赘述。

图13是根据本发明另一实施例的信号处理设备的示意框图。图13的设备1300的例子为编码器或解码器,如图1所示的编码器110或解码器120。设备1300包括存储器1310和处理器1320。

存储器1310可以包括随机存储器、闪存、只读存储器、可编程只读存储器、非易失性存储器或寄存器等。处理器1320可以是CPU。

存储器1310用于存储可执行指令。处理器1320可以执行存储器1310中存储的可执行指令,用于:将输入信号的频带划分为R个子带,其中R为正整数;在R个子带中的每个子带上,确定S个静音帧中每个静音帧的子带组谱距离,S个静音帧中每个静音帧的子带组谱距离为在每个子带上S个静音帧中每个静音帧与其它(S-1)个静音帧之间的谱距离之和,S为正整数;在每个子带上根据S个静音帧中每个静音帧的子带组谱距离,确定每个子带的第一谱参数,其中每个子带的第一谱参数用于生成舒适噪声。

本发明实施例中,通过根据R个子带中每个子带上的S个静音帧中每个静音帧的谱距离确定用于生成舒适噪声的每个子带的谱参数,而非简单地对多个静音帧的谱参数取平均或取中值得到用于生成舒适噪声的谱参数,从而能够提升舒适噪声的质量。

可选地,作为一个实施例,处理器1320可以在每个子带上,从S个静音帧中选择第一静音帧,使得在每个子带上S个静音帧中第一静音帧的子带组谱距离最小,并在每个子带上将第一静音帧的谱参数确定为每个子带的第一谱参数。

可选地,作为另一实施例,处理器1320可以在每个子带上,从S个静音帧中选择至少一个静音帧,使得至少一个静音帧的子带组谱距离均小于第四阈值,并在每个子带上,根据至少一个静音帧的谱参数确定每个子带的第一谱参数。

可选地,作为另一实施例,在设备1300为编码器时,上述S个静音帧可以包括当前输入静音帧以及当前输入静音帧之前的(S-1)个静音帧。处理器1320可以将当前输入静音帧编码为SID帧,其中SID帧包括每个子带的第一谱参数。

设备1300的其它功能和操作可以参照上面图5的方法实施例的过程,为了避免重复,此处不再赘述。

图14是根据本发明另一实施例的信号处理设备的示意框图。图14的设备1400的例子为编码器或解码器,如图1所示的编码器110或解码器120。设备1400包括存储器1410和处理器1420。

存储器1410可以包括随机存储器、闪存、只读存储器、可编程只读存储器、非易失性存储器或寄存器等。处理器1420可以是CPU。

存储器1410用于存储可执行指令。处理器1420可以执行存储器1410中存储的可执行指令,用于:确定T个静音帧中每个静音帧的第一参数,第一参数用于表征谱熵,T为正整数;根据T个静音帧中每个静音帧的第一参数,确定第一谱参数,其中第一谱参数用于生成舒适噪声。

本发明实施例中,通过根据T个静音帧的用于表征谱熵的第一参数确定用于生成舒适噪声的第一谱参数,而非简单地对多个静音帧的谱参数取平均或取中值得到用于生成舒适噪声的谱参数,从而能够提升舒适噪声的质量。

可选地,作为一个实施例,处理器1420可以在确定能够按照聚类准则将T个静音帧分为第一组静音帧和第二组静音帧的情况下,根据第一组静音帧的谱参数,确定第一谱参数,其中第一组静音帧的第一参数所表征的谱熵均大于第二组静音帧的第一参数所表征的谱熵;在确定不能够按照聚类准则将T个静音帧分为第一组静音帧和第二组静音帧的情况下,对T个静音帧的谱参数进行加权平均处理,以确定第一谱参数,其中第一组静音帧的第一参数所表征的谱熵均大于第二组静音帧的第一参数所表征的谱熵。

可选地,作为另一实施例,上述聚类准则可以包括:第一组静音帧中每个静音帧的第一参数与第一均值之间的距离小于或等于第一组静音帧中每个静音帧的第一参数与第二均值之间的距离;第二组静音帧中每个静音帧的第一参数与第二均值之间的距离小于或等于第二组静音帧中每个静音帧的第一参数与第一均值之间的距离;第一均值与第二均值之间的距离大于第一组静音帧的第一参数与第一均值之间的平均距离;第一均值与第二均值之间的距离大于第二组静音帧的第一参数与第二均值之间的平均距离。

其中,第一均值为第一组静音帧的第一参数的平均值,第二均值为第二组静音帧的第一参数的平均值。

可选地,作为另一实施例,处理器1420可以对T个静音帧的谱参数进行加权平均处理,以确定第一谱参数。其中,对于T个静音帧中任意不同的第i个静音帧和第j个静音帧,第i个静音帧对应的加权系数大于或等于j个静音帧对应的加权系数;在第一参数与谱熵正相关时,第i个静音帧的第一参数大于第j个静音帧的第一参数;在第一参数与谱熵负相关时,第i个静音帧的第一参数小于第j个静音帧的第一参数,i和j均为正整数,且1≤i≤T,1≤j≤T。

可选地,作为另一实施例,在设备1400为编码器时,上述T个静音帧可以包括当前输入静音帧以及当前输入静音帧之前的(T-1)个静音帧。处理器1420可以将当前输入静音帧编码为SID帧,其中SID帧包括第一谱参数。

设备1400的其它功能和操作可以参照上面图6的方法实施例的过程,为了避免重复,此处不再赘述。

本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。

所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统、装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。

在本申请所提供的几个实施例中,应该理解到,所揭露的系统、装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。

所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。

另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。

所述功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。

以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以所述权利要求的保护范围为准。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1