语音频码流的解码方法及装置与流程

文档序号:12965243阅读:239来源:国知局
语音频码流的解码方法及装置与流程

本发明涉及音频解码技术,具体涉及语音频码流解码方法及装置。



背景技术:

基于网际互连协议的语音业务(voip,voiceoverinternetprotocol)系统之中,分组包在传输过程中可能需要经过多个路由器,而这些路由器在通话过程中也可能发生改变,所以通话过程中的传输时延可能会改变。而且当两个或者更多个用户试图通过同一个网关进入网络时,路由时延可能发生变化;这种时延上的变化被称为时延抖动(delayjitter)。同样,接收端、发送端和网关等使用非实时操作系统也会造成时延抖动,严重时会产生数据包丢失,造成语音频失真,导致voip质量下降。

目前,已有很多技术在通信系统不同层中来降低时延、平滑时延抖动及进行丢包补偿。接收端可通过高效抖动缓存处理(jbm,jitterbuffermanagement)算法来在一定程度上补偿网络的时延抖动。然而,对丢包率较高的情况,仅仅通过jbm技术显然不能满足高质量通信的需求。

为了更好的避免语音频帧延迟抖动导致的质量下降问题,引入了冗余编码算法,即在编码端,除了用一定的比特率编码本语音频帧信息外,还用较低比特率编码除本语音频帧之外其他语音频帧的信息,将较低比特率的其他语音频帧信息的码流作为冗余信息和本语音频帧信息的码流一起传输到解码端。在解码端,当某一帧语音频帧丢失时,若抖动缓存(jitterbuffer)中缓存了(或已收到的码流里)包含丢失语音频帧的冗余信息,则根据冗余信息恢复该丢失语音频帧,从而改善语音频质量。

现有冗余编码算法中,对于第n帧的码流,除了包含第n帧的语音频帧信息之外,还包含了较低码率下的第n-m帧语音频帧信息。在传输过程中若第n-m帧丢失时,则根据第n帧的码流中包含的第n-m帧的语音频信息进行解码处理,以恢复得到第n-m帧语音频信号。

从上可知,在现有的冗余编码算法中,冗余码流信息是使用较低的码率编码得到的,因此很可能会造成信号不稳定,从而导致输出的语音频信号的质量不高。



技术实现要素:

本发明实施例提供了语音频码流的解码方法及装置,有利于提高输出语音频信号的质量。

本发明实施例第一方面提供一种语音频码流的解码方法,可包括:

获取当前语音频帧的语音频解码参数,其中,所述当前语音频帧为冗余解码帧或者所述当前语音频帧的前一帧语音频帧为冗余解码帧;

根据x帧语音频帧的语音频参数对所述当前语音频帧的语音频解码参数进行后处理,以得到所述当前语音频帧的后处理的语音频解码参数,所述x帧语音频帧包括所述当前语音频帧的前m帧语音频帧和/或所述当前语音频帧的后n帧语音频帧,所述m和n为正整数;

使用所述当前语音频帧的后处理的语音频解码参数恢复所述当前语音频帧的语音频信号。

结合第一方面,在第一方面的第一种可能的实施方式中,所述当前语音频帧的语音频解码参数包括所述当前语音频帧的频谱对参数,其中,所述根据x帧语音频帧的语音频参数对所述当前语音频帧的语音频解码参数进行后处理,以得到所述当前语音频帧的后处理的语音频解码参数,包括:

根据x帧语音频帧的信号类型、谱倾斜因子、自适应码书增益和频谱对参数中的至少一种,对所述当前语音频帧的频谱对参数进行后处理,以得到所述当前语音频帧的后处理的频谱对参数。

结合第一方面的第一种可能的实施方式,在第一方面的第二种可能的实施方式中,所述根据x帧语音频帧的信号类型、谱倾斜因子、自适应码书增益和频谱对参数中的至少一种,对所述当前语音频帧的频谱对参数进行后处理,以得到所述当前语音频帧的后处理的频谱对参数,包括:

若所述当前语音频帧为正常解码帧且所述当前语音频帧的前一帧语音频帧为冗余解码帧,并且所述当前语音频帧的信号类型为清音,且所述当前语音频帧的前一帧语音频帧的信号类型不为清音,则将所述当前语音频帧的频谱对参数作为所述当前语音频帧的后处理的频谱对参数,或基于所述当前语音频帧的频谱对参数获得所述当前语音频帧的后处理的频谱对参数;

或者,

若所述当前语音频帧为正常解码帧并且所述当前语音频帧的前一帧语音频帧为冗余解码帧,并且所述当前语音频帧的信号类型为清音,并且所述当前语音频帧的前一帧语音频帧的信号类型不为清音,则基于当前语音频帧的频谱对参数和所述当前语音频帧的前一帧语音频帧的频谱对参数获得所述当前语音频帧的后处理的频谱对参数;

或者,

若所述当前语音频帧为冗余解码帧,且所述当前语音频帧的信号类型不为清音,并且所述当前语音频帧的后一帧语音频帧的信号类型为清音,则将所述当前语音频帧的前一帧语音频帧的频谱对参数作为所述当前语音频帧的后处理的频谱对参数,或基于所述当前语音频帧的前一帧语音频帧的频谱对参数获得所述当前语音频帧的后处理的频谱对参数;

或者,

若所述当前语音频帧为冗余解码帧,且所述当前语音频帧的信号类型不为清音,并且所述当前语音频帧的后一帧语音频帧的信号类型为清音,则基于所述当前语音频帧的频谱对参数和所述当前语音频帧的前一帧语音频帧的频谱对参数,获得所述当前语音频帧的后处理的频谱对参数;

或者,

若所述当前语音频帧为冗余解码帧且所述当前语音频帧的信号类型不为清音,并且所述当前语音频帧的后一帧语音频帧中的子帧的自适应码书增益的最大值小于或等于第一阈值,并且所述当前语音频帧的前一帧语音频帧的谱倾斜因子小于或等于第二阈值,则将所述当前语音频帧的前一帧语音频帧的频谱对参数作为所述当前语音频帧的后处理的频谱对参数,或基于所述当前语音频帧的前一帧语音频帧的频谱对参数获得所述当前语音频帧的后处理的频谱对参数;

或者,若所述当前语音频帧为冗余解码帧且所述当前语音频帧的信号类型不为清音,并且所述当前语音频帧的后一帧语音频帧中的子帧的自适应码书增益的最大值小于或等于第一阈值,并且所述当前语音频帧的前一帧语音频帧的谱倾斜因子小于或等于第二阈值,则基于当前语音频帧的频谱对参数和所述当前语音频帧的前一帧语音频帧的频谱对参数,获得所述当前语音频帧的后处理的频谱对参数;

或者,若所述当前语音频帧为冗余解码帧,并且所述当前语音频帧的信号类型不为清音,并且所述当前语音频帧的后一帧语音频帧为清音,并且所述当前语音频帧的后一帧语音频帧中的子帧的自适应码书增益的最大值小于或等于第三阈值,并且所述当前语音频帧的前一帧语音频帧的谱倾斜因子小于或等于第四阈值,则将所述当前语音频帧的前一帧语音频帧的频谱对参数作为所述当前语音频帧的后处理的频谱对参数,或基于所述当前语音频帧的前一帧语音频帧的频谱对参数获得所述当前语音频帧的后处理的频谱对参数;

或者,

若所述当前语音频帧为冗余解码帧,并且所述当前语音频帧的信号类型不为清音,并且所述当前语音频帧的后一帧语音频帧的信号类型为清音,并且所述当前语音频帧的后一帧语音频帧中的子帧的自适应码书增益的最大值小于或者等于第三阈值,并且所述当前语音频帧的前一帧语音频帧的谱倾斜因子小于或者等于第四阈值,则基于所述当前语音频帧的频谱对参数和所述当前语音频帧的前一帧语音频帧的频谱对参数,获得所述当前语音频帧的后处理的频谱对参数。

结合第一方面的第二种可能的实施方式,在第一方面的第三种可能的实施方式中,所述基于所述当前语音频帧的频谱对参数和所述当前语音频帧的前一帧语音频帧的频谱对参数,获得所述当前语音频帧的后处理的频谱对参数,包括:具体通过如下公式,基于所述当前语音频帧的频谱对参数和所述当前语音频帧的前一帧语音频帧的频谱对参数,获得所述当前语音频帧的后处理的频谱对参数:

lsp[k]=α*lsp_old[k]+β*lsp_mid[k]+δ*lsp_new[k]0≤k≤l;

其中,所述lsp[k]为所述当前语音频帧的后处理的频谱对参数,所述lsp_old[k]为所述当前语音频帧的前一帧语音频帧的频谱对参数,所述lsp_mid[k]为所述当前语音频帧的频谱对参数的中间值,所述lsp_new[k]为所述当前语音频帧的频谱对参数,所述l为频谱对参数的阶数,其中,所述α为所述当前语音频帧的前一帧语音频帧的频谱对参数的权重,所述β为所述当前语音频帧的频谱对参数的中间值的权重,所述δ为所述当前语音频帧的频谱对参数的权重,α≥0,β≥0,δ≥0,且α+β+δ=1,

其中,若所述当前语音频帧为正常解码帧,并且所述当前语音频帧的前一帧语音频帧为冗余解码帧,则所述α等于0或所述α小于或等于第五阈值;

或者,若所述当前语音频帧为冗余解码帧,则所述β等于0或所述β小于或等于第六阈值;

或者,若所述当前语音频帧为冗余解码帧,所述δ等于0或所述δ小于或等于第七阈值;

或者,若所述当前语音频帧为冗余解码帧,则所述β等于0或所述β小于或等于第六阈值,并且所述δ等于0或所述δ小于或等于第七阈值。

结合第一方面的第二种可能的实施方式,在第一方面的第四种可能的实施方式中,所述基于所述当前语音频帧的频谱对参数和所述当前语音频帧的前一帧语音频帧的频谱对参数,获得所述当前语音频帧的后处理的频谱对参数,包括:具体通过如下公式,基于所述当前语音频帧的频谱对参数和所述当前语音频帧的前一帧语音频帧的频谱对参数,获得所述当前语音频帧的后处理的频谱对参数:

lsp[k]=α*lsp_old[k]+δ*lsp_new[k]0≤k≤l;

其中,所述lsp[k]为所述当前语音频帧的后处理的频谱对参数,所述lsp_old[k]为所述当前语音频帧的前一帧语音频帧的频谱对参数,所述lsp_new[k]为所述当前语音频帧的频谱对参数,所述l为频谱对参数的阶数,所述α为所述当前语音频帧的前一帧语音频帧的频谱对参数的权重,所述δ为所述当前语音频帧的频谱对参数的权重,α≥0,δ≥0,且α+δ=1,

其中,若所述当前语音频帧为正常解码帧,并且所述当前语音频帧的前一帧语音频帧为冗余解码帧,则所述α等于0或所述α小于或等于第五阈值;

或者,若所述当前语音频帧为冗余解码帧,则所述δ等于0或所述δ小于或等于第七阈值。

结合第一方面或第一方面的第一种可能的实施方式或第一方面的第二种可能的实施方式或第一方面的第二种可能的实施方式或第一方面的第三种可能的实施方式或第一方面的第四种可能的实施方式,在第一方面的第五种可能的实施方式中,

所述当前语音频帧的语音频解码参数包括所述当前语音频帧的自适应码书增益;其中,所述根据x帧语音频帧的语音频参数对所述当前语音频帧的语音频解码参数进行后处理,以得到所述当前语音频帧的后处理的语音频解码参数包括:

根据x帧语音频帧的信号类型、代数码书增益和自适应码书增益中的至少一种,对所述当前语音频帧的自适应码书增益进行后处理,以得到所述当前语音频帧的后处理的自适应码书增益。

结合第一方面的第五种可能的实施方式,在第一方面的第六种可能的实施方式中,所述根据x帧语音频帧的信号类型、代数码书增益和自适应码书增益中的至少一种,对所述当前语音频帧的自适应码书增益进行后处理,包括:

若所述当前语音频帧为冗余解码帧并且所述当前语音频帧的信号类型不为清音,并且所述当前语音频帧的后两帧语音频帧之中的至少一帧语音频帧的信号类型为清音,并且所述当前语音频帧中的当前子帧的代数码书增益大于或等于所述当前语音频帧的前一帧语音频帧的代数码书增益,则衰减所述当前子帧的自适应码书增益;

或者,若所述当前语音频帧为冗余解码帧,并且所述当前语音频帧的信号类型不为清音,并且所述当前语音频帧的后两帧语音频帧之中的至少一帧语音频帧的信号类型为清音,并且所述当前语音频帧中的当前子帧的代数码书增益大于或等于所述当前子帧的前一子帧的代数码书增益,则衰减所述当前子帧的自适应码书增益;

或者,若所述当前语音频帧为冗余解码帧或所述当前语音频帧为正常解码帧且所述当前语音频帧的前一帧语音频帧为冗余解码帧,并且若所述当前语音频帧的信号类型为普通语音,并且所述当前语音频帧的后一帧语音频帧的信号类型为浊音,并且所述当前语音频帧中的某子帧的代数码书增益大于或等于所述某子帧的前一子帧的代数码书增益,则基于所述当前语音频帧的当前子帧和所述当前子帧的相邻子帧的代数码书增益的比值、所述当前语音频帧的当前子帧和所述当前子帧的相邻子帧的自适应码书增益的比值和所述当前语音频帧的当前子帧和所述当前语音频帧的前一帧语音频帧的代数码书增益的比值之中的至少一个,调整所述当前语音频帧的当前子帧的自适应码书增益;

或者,若所述当前语音频帧为冗余解码帧或者所述当前语音频帧为正常解码帧且所述当前语音频帧的前一帧语音频帧为冗余解码帧,并且若所述当前语音频帧的信号类型为普通语音,并且所述当前语音频帧的后一帧语音频帧的信号类型为浊音,并且所述当前语音频帧中的某子帧的代数码书增益大于或者等于所述当前语音频帧的前一帧语音频帧的代数码书增益,则基于所述当前语音频帧的当前子帧和所述当前子帧的相邻子帧的代数码书增益的比值、所述当前语音频帧的当前子帧和所述当前子帧的相邻子帧的自适应码书增益的比值和所述当前语音频帧的当前子帧和所述当前语音频帧的前一帧语音频帧的代数码书增益的比值之中的至少一个,调整所述当前语音频帧的当前子帧的自适应码书增益;

或者,

若所述当前语音频帧为冗余解码帧或所述当前语音频帧为正常解码帧且所述当前语音频帧的前一帧语音频帧为冗余解码帧,且若所述当前语音频帧为浊音,并且所述当前语音频帧的前一帧语音频帧的信号类型为普通语音,并且所述当前语音频帧中的某子帧的代数码书增益大于或等于所述某子帧的前一子帧的代数码书增益,则基于所述当前语音频帧的当前子帧和所述当前子帧的相邻子帧的代数码书增益的比值、所述当前语音频帧的当前子帧和所述当前子帧的相邻子帧的自适应码书增益的比值和所述当前语音频帧的当前子帧和所述当前语音频帧的前一帧语音频帧的代数码书增益的比值中的至少一个,调整所述当前语音频帧的当前子帧的自适应码书增益;

或者,若所述当前语音频帧为冗余解码帧或者所述当前语音频帧为正常解码帧并且所述当前语音频帧的前一帧语音频帧为冗余解码帧,并且若所述当前语音频帧的信号类型为浊音,并且所述当前语音频帧的前一帧语音频帧的信号类型为普通语音,并且所述当前语音频帧中的某子帧的代数码书增益大于或等于所述当前语音频帧的前一帧语音频帧的代数码书增益,则基于所述当前语音频帧的当前子帧和所述当前子帧的相邻子帧的代数码书增益的比值、所述当前语音频帧的当前子帧和所述当前子帧的相邻子帧的自适应码书增益的比值和所述当前语音频帧的当前子帧和所述当前语音频帧的前一帧语音频帧的代数码书增益的比值之中的至少一个,调整所述当前语音频帧的当前子帧的自适应码书增益。

结合第一方面或第一方面的第一种可能的实施方式或第一方面的第二种可能的实施方式或第一方面的第二种可能的实施方式或第一方面的第三种可能的实施方式或第一方面的第四种可能的实施方式或第一方面的第五种可能的实施方式或第一方面的第六种可能的实施方式,在第一方面的第七种可能的实施方式中,所述当前语音频帧的语音频解码参数包括所述当前语音频帧的代数码书,所述根据x帧语音频帧的语音频参数对所述当前语音频帧的语音频解码参数进行后处理,以得到所述当前语音频帧的后处理的语音频解码参数包括:根据x帧语音频帧的信号类型、代数码书和谱倾斜因子的至少一种,对所述当前语音频帧的代数码书进行后处理,以得到所述当前语音频帧的后处理的代数码书。

结合第一方面的第七种可能的实施方式,在第一方面的第八种可能的实施方式中,所述根据x帧语音频帧的信号类型、代数码书和谱倾斜因子的至少一种,对所述当前语音频帧的代数码书进行后处理,包括:

若所述当前语音频帧为冗余解码帧,并且所述当前语音频帧的后一帧语音频帧的信号类型为清音,并且所述当前语音频帧的前一帧语音频帧的谱倾斜因子小于或等于第八阈值,并且所述当前语音频帧的其中一个子帧的代数码书为零或小于或等于第九阈值,则将所述当前语音频帧的前一子帧的代数码书或随机噪声作为所述当前子帧的代数码书。

结合第一方面或第一方面的第一种可能的实施方式或第一方面的第二种可能的实施方式或第一方面的第二种可能的实施方式或第一方面的第三种可能的实施方式或第一方面的第四种可能的实施方式或第一方面的第五种可能的实施方式或第一方面的第六种可能的实施方式或第一方面的第七种可能的实施方式或第一方面的第八种可能的实施方式,在第一方面的第九种可能的实施方式中,所述当前语音频帧的语音频解码参数包括所述当前语音频帧的频带扩展包络,其中,所述根据x帧语音频帧的语音频参数对所述当前语音频帧的语音频解码参数进行后处理,以得到所述当前语音频帧的后处理的语音频解码参数包括:根据x帧语音频帧的信号类型、频带扩展包络和谱倾斜因子中的至少一种,对所述当前语音频帧的频带扩展包络进行后处理,以得到所述当前语音频帧的后处理的频带扩展包络。

结合第一方面的第九种可能的实施方式,在第一方面的第十种可能的实施方式中,

所述根据x帧语音频帧的信号类型、频带扩展包络和谱倾斜因子中的至少一种,对所述当前语音频帧的频带扩展包络进行后处理,以得到所述当前语音频帧的后处理的频带扩展包络,包括:

若所述当前语音频帧的前一帧语音频帧为正常解码帧,且所述当前语音频帧的前一帧语音频帧和当前语音频帧的后一帧语音频帧的信号类型相同,则基于所述当前语音频帧的前一帧语音频帧的频带扩展包络和所述当前语音频帧的频带扩展包络,得到所述当前语音频帧的后处理的频带扩展包络;

或者,

若所述当前语音频帧为冗余解码的预测模式,则基于所述当前语音频帧的前一帧语音频帧的频带扩展包络和所述当前语音频帧的频带扩展包络,得到所述当前语音频帧的后处理的频带扩展包络;

或者,

若所述当前语音频帧的信号类型不是清音,且所述当前语音频帧的后一帧语音频帧的信号类型为清音,且所述当前语音频帧的前一帧语音频帧的谱倾斜因子小于或等于第十阈值,则根据所述当前语音频帧的前一帧语音频帧的频带扩展包络或者谱倾斜因子,修正所述当前语音频帧的频带扩展包络,以得到所述当前语音频帧的后处理的频带扩展包络。

结合第一方面的第十种可能的实施方式,在第一方面的第十一种可能的实施方式中,

所述基于所述当前语音频帧的前一帧语音频帧的频带扩展包络和所述当前语音频帧的频带扩展包络,得到所述当前语音频帧的后处理的频带扩展包络包括:具体通过如下公式,基于所述当前语音频帧的前一帧语音频帧的频带扩展包络和所述当前语音频帧的频带扩展包络,得到所述当前语音频帧的后处理的频带扩展包络:

gainframe=fac1*gainframe_old+fac2*gainframe_new;

其中,所述gainframe为所述当前语音频帧的后处理的频带扩展包络,所述gainframe_old为所述当前语音频帧的前一帧语音频帧的频带扩展包络,所述gainframe_new为所述当前语音频帧的频带扩展包络,所述fac1为所述当前语音频帧的前一帧语音频帧的频带扩展包络的权重,所述fac2为所述当前语音频帧的频带扩展包络的权重;fac1≥0,fac2≥0,且fac1+fac2=1。

结合第一方面的第十种可能的实施方式,在第一方面的第十二种可能的实施方式中,所述修正所述当前语音频帧的频带扩展包络的修正因子与所述当前语音频帧的前一帧语音频帧的谱倾斜因子成反比,与所述当前语音频帧的前一帧语音频帧的频带扩展包络与所述当前语音频帧的频带扩展包络的比值成正比。

结合第一方面或第一方面的第一种可能的实施方式或第一方面的第二种可能的实施方式或第一方面的第二种可能的实施方式或第一方面的第三种可能的实施方式或第一方面的第四种可能的实施方式或第一方面的第五种可能的实施方式或第一方面的第六种可能的实施方式或第一方面的第七种可能的实施方式或第一方面的第八种可能的实施方式或第一方面的第九种可能的实施方式或第一方面的第十种可能的实施方式或第一方面的第十一种可能的实施方式或第一方面的第十二种可能的实施方式,在第一方面的第十三种可能的实施方式中,所述当前语音频帧的语音频解码参数包括所述当前语音频帧的基因周期,所述根据x帧语音频帧的语音频参数对所述当前语音频帧的语音频解码参数进行后处理,以得到所述当前语音频帧的后处理的语音频解码参数,包括:根据x帧语音频帧的信号类型和/或基因周期,对所述当前语音频帧的基因周期进行后处理,以得到所述当前语音频帧的后处理的基因周期。

本发明实施例第二方面提供一种用于解码语音频码流的解码器,包括:

参数获取单元,用于获取当前语音频帧的语音频解码参数,其中,所述当前语音频帧为冗余解码帧或者所述当前语音频帧的前一帧语音频帧为冗余解码帧;

后处理单元,用于根据x帧语音频帧的语音频参数对所述当前语音频帧的语音频解码参数进行后处理,以得到所述当前语音频帧的后处理的语音频解码参数,所述x帧语音频帧包括所述当前语音频帧的前m帧语音频帧和/或所述当前语音频帧的后n帧语音频帧,所述m和n为正整数;

恢复单元,用于使用所述当前语音频帧的后处理的语音频解码参数恢复所述当前语音频帧的语音频信号。

结合第二方面,在第二方面的第一种可能的实施方式中,所述后处理单元具体用于,当所述当前语音频帧的语音频解码参数包括所述当前语音频帧的频谱对参数,根据x帧语音频帧的频谱对参数、自适应码书增益、谱倾斜因子和信号类型中的至少一种,对所述当前语音频帧的频谱对参数进行后处理,以得到所述当前语音频帧的后处理的频谱对参数。

结合第二方面的第一种可能的实施方式,在第二方面的第二种可能的实施方式中,在所述根据x帧语音频帧的频谱对参数、自适应码书增益、谱倾斜因子和信号类型中的至少一种,对所述当前语音频帧的频谱对参数进行后处理,以得到所述当前语音频帧的后处理的频谱对参数的方面,所述后处理单元具体用于,

若所述当前语音频帧为正常解码帧且所述当前语音频帧的前一帧语音频帧为冗余解码帧,并且所述当前语音频帧的信号类型为清音,且所述当前语音频帧的前一帧语音频帧的信号类型不为清音,则将所述当前语音频帧的频谱对参数作为所述当前语音频帧的后处理的频谱对参数,或基于所述当前语音频帧的频谱对参数获得所述当前语音频帧的后处理的频谱对参数;

或者,若所述当前语音频帧为正常解码帧并且所述当前语音频帧的前一帧语音频帧为冗余解码帧,并且所述当前语音频帧的信号类型为清音,并且所述当前语音频帧的前一帧语音频帧的信号类型不为清音,则基于当前语音频帧的频谱对参数和所述当前语音频帧的前一帧语音频帧的频谱对参数获得所述当前语音频帧的后处理的频谱对参数;

或者,若所述当前语音频帧为冗余解码帧,且所述当前语音频帧的信号类型不为清音,并且所述当前语音频帧的后一帧语音频帧的信号类型为清音,则将所述当前语音频帧的前一帧语音频帧的频谱对参数作为所述当前语音频帧的后处理的频谱对参数,或基于所述当前语音频帧的前一帧语音频帧的频谱对参数获得所述当前语音频帧的后处理的频谱对参数;

或者,若所述当前语音频帧为冗余解码帧,且所述当前语音频帧的信号类型不为清音,并且所述当前语音频帧的后一帧语音频帧的信号类型为清音,则基于所述当前语音频帧的频谱对参数和所述当前语音频帧的前一帧语音频帧的频谱对参数,获得所述当前语音频帧的后处理的频谱对参数;

或者,若所述当前语音频帧为冗余解码帧且所述当前语音频帧的信号类型不为清音,并且所述当前语音频帧的后一帧语音频帧中的子帧的自适应码书增益的最大值小于或等于第一阈值,并且所述当前语音频帧的前一帧语音频帧的谱倾斜因子小于或等于第二阈值,则将所述当前语音频帧的前一帧语音频帧的频谱对参数作为所述当前语音频帧的后处理的频谱对参数,或基于所述当前语音频帧的前一帧语音频帧的频谱对参数获得所述当前语音频帧的后处理的频谱对参数;

或者,若所述当前语音频帧为冗余解码帧且所述当前语音频帧的信号类型不为清音,并且所述当前语音频帧的后一帧语音频帧中的子帧的自适应码书增益的最大值小于或等于第一阈值,并且所述当前语音频帧的前一帧语音频帧的谱倾斜因子小于或等于第二阈值,则基于当前语音频帧的频谱对参数和所述当前语音频帧的前一帧语音频帧的频谱对参数,获得所述当前语音频帧的后处理的频谱对参数;

或者,若所述当前语音频帧为冗余解码帧,并且所述当前语音频帧的信号类型不为清音,并且所述当前语音频帧的后一帧语音频帧为清音,并且所述当前语音频帧的后一帧语音频帧中的子帧的自适应码书增益的最大值小于或等于第三阈值,并且所述当前语音频帧的前一帧语音频帧的谱倾斜因子小于或等于第四阈值,则将所述当前语音频帧的前一帧语音频帧的频谱对参数作为所述当前语音频帧的后处理的频谱对参数,或基于所述当前语音频帧的前一帧语音频帧的频谱对参数获得所述当前语音频帧的后处理的频谱对参数;

或者,

若所述当前语音频帧为冗余解码帧,并且所述当前语音频帧的信号类型不为清音,并且所述当前语音频帧的后一帧语音频帧的信号类型为清音,并且所述当前语音频帧的后一帧语音频帧中的子帧的自适应码书增益的最大值小于或者等于第三阈值,并且所述当前语音频帧的前一帧语音频帧的谱倾斜因子小于或者等于第四阈值,则基于所述当前语音频帧的频谱对参数和所述当前语音频帧的前一帧语音频帧的频谱对参数,获得所述当前语音频帧的后处理的频谱对参数。

结合第二方面的第二种可能的实施方式,在第二方面的第三种可能的实施方式中,在所述基于所述当前语音频帧的频谱对参数和所述当前语音频帧的前一帧语音频帧的频谱对参数,获得所述当前语音频帧的后处理的频谱对参数的方面,

所述后处理单元具体用于,通过如下公式,基于所述当前语音频帧的频谱对参数和所述当前语音频帧的前一帧语音频帧的频谱对参数,获得所述当前语音频帧的后处理的频谱对参数:

lsp[k]=α*lsp_old[k]+β*lsp_mid[k]+δ*lsp_new[k]0≤k≤l;

其中,所述lsp[k]为所述当前语音频帧的后处理的频谱对参数,所述lsp_old[k]为所述当前语音频帧的前一帧语音频帧的频谱对参数,所述lsp_mid[k]为所述当前语音频帧的频谱对参数的中间值,所述lsp_new[k]为所述当前语音频帧的频谱对参数,所述l为频谱对参数的阶数,其中,所述α为所述当前语音频帧的前一帧语音频帧的频谱对参数的权重,所述β为所述当前语音频帧的频谱对参数的中间值的权重,所述δ为所述当前语音频帧的频谱对参数的权重,α≥0,β≥0,δ≥0,且α+β+δ=1,

其中,若所述当前语音频帧为正常解码帧,并且所述当前语音频帧的前一帧语音频帧为冗余解码帧,则所述α等于0或所述α小于或等于第五阈值;

或者,若所述当前语音频帧为冗余解码帧,则所述β等于0或所述β小于或等于第六阈值;

或者,若所述当前语音频帧为冗余解码帧,所述δ等于0或所述δ小于或等于第七阈值;

或者,若所述当前语音频帧为冗余解码帧,则所述β等于0或所述β小于或等于第六阈值,并且所述δ等于0或所述δ小于或等于第七阈值。

结合第二方面的第二种可能的实施方式,在第二方面的第四种可能的实施方式中,在所述基于所述当前语音频帧的频谱对参数和所述当前语音频帧的前一帧语音频帧的频谱对参数,获得所述当前语音频帧的后处理的频谱对参数的方面,

所述后处理单元具体用于,通过如下公式,基于所述当前语音频帧的频谱对参数和所述当前语音频帧的前一帧语音频帧的频谱对参数,获得所述当前语音频帧的后处理的频谱对参数:

lsp[k]=α*lsp_old[k]+δ*lsp_new[k]0≤k≤l;

其中,所述lsp[k]为所述当前语音频帧的后处理的频谱对参数,所述lsp_old[k]为所述当前语音频帧的前一帧语音频帧的频谱对参数,所述lsp_new[k]为所述当前语音频帧的频谱对参数,所述l为频谱对参数的阶数,所述α为所述当前语音频帧的前一帧语音频帧的频谱对参数的权重,所述δ为所述当前语音频帧的频谱对参数的权重,α≥0,δ≥0,且α+δ=1,

其中,若所述当前语音频帧为正常解码帧,并且所述当前语音频帧的前一帧语音频帧为冗余解码帧,则所述α等于0或所述α小于或等于第五阈值;

或者,若所述当前语音频帧为冗余解码帧,则所述δ等于0或所述δ小于或等于第七阈值。

结合第二方面或第二方面的第一种可能的实施方式或第二方面的第二种可能的实施方式或第二方面的第二种可能的实施方式或第二方面的第三种可能的实施方式或第二方面的第四种可能的实施方式,在第二方面的第五种可能的实施方式中,

所述后处理单元具体用于,当前语音频帧的语音频解码参数包括所述当前语音频帧的自适应码书增益,根据x帧语音频帧的信号类型、代数码书增益和自适应码书增益中的至少一种,对所述当前语音频帧的自适应码书增益进行后处理,以得到所述当前语音频帧的后处理的自适应码书增益。

结合第二方面的第五种可能的实施方式,在第二方面的第六种可能的实施方式中,在根据x帧语音频帧的信号类型、代数码书增益和自适应码书增益中的至少一种,对所述当前语音频帧的自适应码书增益进行后处理的方面,所述后处理单元具体用于,

若所述当前语音频帧为冗余解码帧并且所述当前语音频帧的信号类型不为清音,并且所述当前语音频帧的后两帧语音频帧之中的至少一帧语音频帧的信号类型为清音,并且所述当前语音频帧中的当前子帧的代数码书增益大于或等于所述当前语音频帧的前一帧语音频帧的代数码书增益,则衰减所述当前子帧的自适应码书增益;

或者,若所述当前语音频帧为冗余解码帧,并且所述当前语音频帧的信号类型不为清音,并且所述当前语音频帧的后两帧语音频帧之中的至少一帧语音频帧的信号类型为清音,并且所述当前语音频帧中的当前子帧的代数码书增益大于或等于所述当前子帧的前一子帧的代数码书增益,则衰减所述当前子帧的自适应码书增益;

或者,若所述当前语音频帧为冗余解码帧或所述当前语音频帧为正常解码帧且所述当前语音频帧的前一帧语音频帧为冗余解码帧,并且若所述当前语音频帧的信号类型为普通语音,并且所述当前语音频帧的后一帧语音频帧的信号类型为浊音,并且所述当前语音频帧中的某子帧的代数码书增益大于或等于所述某子帧的前一子帧的代数码书增益,则基于所述当前语音频帧的当前子帧和所述当前子帧的相邻子帧的代数码书增益的比值、所述当前语音频帧的当前子帧和所述当前子帧的相邻子帧的自适应码书增益的比值和所述当前语音频帧的当前子帧和所述当前语音频帧的前一帧语音频帧的代数码书增益的比值之中的至少一个,调整所述当前语音频帧的当前子帧的自适应码书增益;

或者,若所述当前语音频帧为冗余解码帧或者所述当前语音频帧为正常解码帧且所述当前语音频帧的前一帧语音频帧为冗余解码帧,并且若所述当前语音频帧的信号类型为普通语音,并且所述当前语音频帧的后一帧语音频帧的信号类型为浊音,并且所述当前语音频帧中的某子帧的代数码书增益大于或者等于所述当前语音频帧的前一帧语音频帧的代数码书增益,则基于所述当前语音频帧的当前子帧和所述当前子帧的相邻子帧的代数码书增益的比值、所述当前语音频帧的当前子帧和所述当前子帧的相邻子帧的自适应码书增益的比值和所述当前语音频帧的当前子帧和所述当前语音频帧的前一帧语音频帧的代数码书增益的比值之中的至少一个,调整所述当前语音频帧的当前子帧的自适应码书增益;

或者,

若所述当前语音频帧为冗余解码帧或所述当前语音频帧为正常解码帧且所述当前语音频帧的前一帧语音频帧为冗余解码帧,且若所述当前语音频帧为浊音,并且所述当前语音频帧的前一帧语音频帧的信号类型为普通语音,并且所述当前语音频帧中的某子帧的代数码书增益大于或等于所述某子帧的前一子帧的代数码书增益,则基于所述当前语音频帧的当前子帧和所述当前子帧的相邻子帧的代数码书增益的比值、所述当前语音频帧的当前子帧和所述当前子帧的相邻子帧的自适应码书增益的比值和所述当前语音频帧的当前子帧和所述当前语音频帧的前一帧语音频帧的代数码书增益的比值中的至少一个,调整所述当前语音频帧的当前子帧的自适应码书增益;

或者,若所述当前语音频帧为冗余解码帧或者所述当前语音频帧为正常解码帧并且所述当前语音频帧的前一帧语音频帧为冗余解码帧,并且若所述当前语音频帧的信号类型为浊音,并且所述当前语音频帧的前一帧语音频帧的信号类型为普通语音,并且所述当前语音频帧中的某子帧的代数码书增益大于或等于所述当前语音频帧的前一帧语音频帧的代数码书增益,则基于所述当前语音频帧的当前子帧和所述当前子帧的相邻子帧的代数码书增益的比值、所述当前语音频帧的当前子帧和所述当前子帧的相邻子帧的自适应码书增益的比值和所述当前语音频帧的当前子帧和所述当前语音频帧的前一帧语音频帧的代数码书增益的比值之中的至少一个,调整所述当前语音频帧的当前子帧的自适应码书增益。

结合第二方面或第二方面的第一种可能的实施方式或第二方面的第二种可能的实施方式或第二方面的第二种可能的实施方式或第二方面的第三种可能的实施方式或第二方面的第四种可能的实施方式或第二方面的第五种可能的实施方式或第二方面的第六种可能的实施方式,在第二方面的第七种可能的实施方式中,

所述后处理单元具体用于,当所述当前语音频帧的语音频解码参数包括所述当前语音频帧的代数码书,根据x帧语音频帧的信号类型、代数码书和谱倾斜因子的至少一种,对所述当前语音频帧的代数码书进行后处理,以得到所述当前语音频帧的后处理的代数码书。

结合第二方面的第七种可能的实施方式,在第二方面的第八种可能的实施方式中,在所述根据x帧语音频帧的信号类型、代数码书和谱倾斜因子的至少一种,对所述当前语音频帧的代数码书进行后处理的方面,所述后处理单元具体用于,若所述当前语音频帧为冗余解码帧,且所述当前语音频帧的后一帧语音频帧的信号类型为清音,且所述当前语音频帧的前一帧语音频帧的谱倾斜因子小于或等于第八阈值,并且所述当前语音频帧的其中一个子帧的代数码书为零或小于或等于第九阈值,则将所述当前语音频帧的前一子帧的代数码书或随机噪声作为所述当前子帧的代数码书。

结合第二方面或第二方面的第一种可能的实施方式或第二方面的第二种可能的实施方式或第二方面的第二种可能的实施方式或第二方面的第三种可能的实施方式或第二方面的第四种可能的实施方式或第二方面的第五种可能的实施方式或第二方面的第六种可能的实施方式或第二方面的第七种可能的实施方式或第二方面的第八种可能的实施方式,在第二方面的第九种可能的实施方式中,所述后处理单元具体用于,当所述当前语音频帧的语音频解码参数包括所述当前语音频帧的频带扩展包络,根据x帧语音频帧的信号类型、频带扩展包络和谱倾斜因子中的至少一种,对所述当前语音频帧的频带扩展包络进行后处理,以得到所述当前语音频帧的后处理的频带扩展包络。

结合第二方面的第九种可能的实施方式,在第二方面的第十种可能的实施方式中,在所述根据x帧语音频帧的信号类型、频带扩展包络和谱倾斜因子中的至少一种,对所述当前语音频帧的频带扩展包络进行后处理,以得到所述当前语音频帧的后处理的频带扩展包络的方面,所述后处理单元具体用于,

若所述当前语音频帧的前一帧语音频帧为正常解码帧,且所述当前语音频帧的前一帧语音频帧和当前语音频帧的后一帧语音频帧的信号类型相同,则基于所述当前语音频帧的前一帧语音频帧的频带扩展包络和所述当前语音频帧的频带扩展包络,得到所述当前语音频帧的后处理的频带扩展包络;

或者,

若所述当前语音频帧为冗余解码的预测模式,则基于所述当前语音频帧的前一帧语音频帧的频带扩展包络和所述当前语音频帧的频带扩展包络,得到所述当前语音频帧的后处理的频带扩展包络;

或者,

若所述当前语音频帧的信号类型不是清音,且所述当前语音频帧的后一帧语音频帧的信号类型为清音,且所述当前语音频帧的前一帧语音频帧的谱倾斜因子小于或等于第十阈值,则根据所述当前语音频帧的前一帧语音频帧的频带扩展包络或者谱倾斜因子,修正所述当前语音频帧的频带扩展包络,以得到所述当前语音频帧的后处理的频带扩展包络。

结合第二方面的第十种可能的实施方式,在第二方面的第十一种可能的实施方式中,

在所述基于所述当前语音频帧的前一帧语音频帧的频带扩展包络和所述当前语音频帧的频带扩展包络,得到所述当前语音频帧的后处理的频带扩展包络包括的方面,所述后处理单元具体用于,具体通过如下公式,基于所述当前语音频帧的前一帧语音频帧的频带扩展包络和所述当前语音频帧的频带扩展包络,得到所述当前语音频帧的后处理的频带扩展包络:

gainframe=fac1*gainframe_old+fac2*gainframe_new;

其中,所述gainframe为所述当前语音频帧的后处理的频带扩展包络,所述gainframe_old为所述当前语音频帧的前一帧语音频帧的频带扩展包络,所述gainframe_new为所述当前语音频帧的频带扩展包络,所述fac1为所述当前语音频帧的前一帧语音频帧的频带扩展包络的权重,所述fac2为所述当前语音频帧的频带扩展包络的权重;fac1≥0,fac2≥0,且fac1+fac2=1。

结合第二方面的第十种可能的实施方式,在第二方面的第十二种可能的实施方式中,所述后处理单元修正所述当前语音频帧的频带扩展包络的修正因子与所述当前语音频帧的前一帧语音频帧的谱倾斜因子成反比,与所述当前语音频帧的前一帧语音频帧的频带扩展包络与所述当前语音频帧的频带扩展包络的比值成正比。

结合第二方面或第二方面的第一种可能的实施方式或第二方面的第二种可能的实施方式或第二方面的第二种可能的实施方式或第二方面的第三种可能的实施方式或第二方面的第四种可能的实施方式或第二方面的第五种可能的实施方式或第二方面的第六种可能的实施方式或第二方面的第七种可能的实施方式或第二方面的第八种可能的实施方式或第二方面的第九种可能的实施方式或第二方面的第十种可能的实施方式或第二方面的第十一种可能的实施方式或第二方面的第十二种可能的实施方式,在第二方面的第十三种可能的实施方式中,所述后处理单元具体用于,当所述当前语音频帧的语音频解码参数包括所述当前语音频帧的基因周期,根据x帧语音频帧的信号类型和基因周期中的至少一种,对所述当前语音频帧的基因周期进行后处理,以得到所述当前语音频帧的后处理的基因周期。

本发明实施例第三方面提供一种计算机存储介质,其中,该计算机存储介质可存储有程序,该程序执行时包括本发明实施例中记载的任意一种语音频码流的解码方法的部分或全部步骤。

可以看出,在本发明的一些实施例中,对于当前语音频帧为冗余解码帧或者所述当前语音频帧的前一帧语音频帧为冗余解码帧的场景,解码端获得当前语音频帧的与音频解码参数后,根据x帧语音频帧的语音频参数对当前语音频帧的语音频解码参数进行后处理,以得到所述当前语音频帧的后处理的语音频解码参数,上述x帧语音频帧包括上述当前语音频帧的前m帧语音频帧和/或上述当前语音频帧的后n帧语音频帧,并使用当前语音频帧的后处理的音频解码参数恢复当前语音频帧的语音频信号,这样有利于解码信号在冗余解码帧和正常解码帧之间或在冗余解码帧和帧擦除掩蔽(fec,frameerasureconcealment)恢复帧之间过渡时得到稳定质量,从而提高输出的语音频信号的质量。

附图说明

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

图1是本发明实施例提供的一种语音频码流的解码方法的流程示意图;

图2是本发明实施例提供的另一种语音频码流的解码方法的流程示意图;

图3是本发明实施例提供的一种解码器的示意图;

图4是本发明实施例提供的另一种解码器的示意图;

图5是本发明实施例提供的另一种解码器的示意图。

具体实施方式

本发明实施例提供了语音频码流的解码方法及装置,有利于提高输出语音频信号的质量。

为使得本发明的发明目的、特征、优点能够更加的明显和易懂,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,下面所描述的实施例仅仅是本发明一部分实施例,而非全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其它实施例,都属于本发明保护的范围。

本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”、“第三”“第四”等是用于区别不同的对象,而不是用于描述特定的顺序。此外术语“包括”和“具有”以及他们任何变形,意图在于覆盖不排他的包含。例如包含了一系列步骤或单元的过程、方法、系统、产品或设备没有限定于已列出的步骤或单元,而是可包括没有列出的步骤或单元。

以下分别进行详细说明。

先介绍本发明实施例提供的语音频码流的解码方法,本发明实施例提供的语音频码流的解码方法的执行主体是解码器,该解码器可以是任何需要输出语音的装置,如手机,笔记本电脑,平板电脑,个人电脑等设备。

本发明一种语音频码流的解码方法的一个实施例,一种语音频码流的解码方法,可以包括:获取当前语音频帧的语音频解码参数,其中,上述当前语音频帧为冗余解码帧或者上述当前语音频帧的前一帧语音频帧为冗余解码帧;根据x帧语音频帧的语音频参数对上述当前语音频帧的语音频解码参数进行后处理,以得到上述当前语音频帧的后处理的语音频解码参数,上述x帧语音频帧包括上述当前语音频帧的前m帧语音频帧和/或上述当前语音频帧的后n帧语音频帧,上述m和n为正整数;使用上述当前语音频帧的后处理的语音频解码参数恢复上述当前语音频帧的语音频信号。

参见图1,图1是本发明的一个实施例提供的一种语音频码流的解码方法的流程示意图。其中,本发明的一个实施例提供的一种语音频码流的解码方法可包括以下内容:

101、获取当前语音频帧的语音频解码参数。

其中,上述当前语音频帧为冗余解码帧或者上述当前语音频帧的前一帧语音频帧为冗余解码帧。

其中,在上述当前语音频帧的前一帧语音频帧为冗余解码帧时,当前语音频帧可能是正常解码帧、fec恢复帧或冗余解码帧,其中,当前语音频帧若为fec恢复帧,则可基于fec算法预测出当前语音频帧的语音频解码参数。

102、根据x帧语音频帧的语音频参数对上述当前语音频帧的语音频解码参数进行后处理,以得到上述当前语音频帧的后处理的语音频解码参数,上述x帧语音频帧包括上述当前语音频帧的前m帧语音频帧和/或上述当前语音频帧的后n帧语音频帧。上述m和n为正整数。

其中,某帧语音频帧(例如当前语音频帧或者当前语音频帧的前一帧语音频帧)为正常解码帧,是指上述某帧语音频帧的语音频参数能够直接从该某帧语音频帧码流中解码获得。某帧语音频帧(例如当前语音频帧或者当前语音频帧的前一帧语音频帧)为冗余解码帧,是指该某帧语音频帧的语音频参数不能够直接从该某帧语音频帧码流中解码获得,但是该某帧语音频帧的冗余码流信息可从其他语音频帧码流中获得。

其中,当前语音频帧的前m帧语音频帧是指,时域上在当前语音频帧之前且与当前语音频帧紧邻的m帧语音频帧。

例如,m可等于1、2或3其它值,其中,当m=1时,当前语音频帧的前m帧语音频帧即为当前语音频帧的前一帧语音频帧,而当前语音频帧的前一帧语音频帧与当前语音频帧是紧邻的两个语音频帧,当m=2时,当前语音频帧的前m帧语音频帧即为当前语音频帧的前一帧语音频帧以及当前语音频帧的前一帧语音频帧的前一帧语音频帧,而当前语音频帧的前一帧语音频帧以及当前语音频帧的前一帧语音频帧的前一帧语音频帧与当前语音频帧是紧邻的三帧语音频帧,以此类推。

其中,当前语音频帧的后n帧语音频帧是指,时域上在当前语音频帧之后且与当前语音频帧紧邻的n帧语音频帧。

例如,n可等于1、2、3或4其它值,其中,当n=1时,当前语音频帧的后n帧语音频帧即为当前语音频帧的后一帧语音频帧,而当前语音频帧的后一帧语音频帧与当前语音频帧是紧邻的两个语音频帧,当n=2时,当前语音频帧的后n帧语音频帧即为当前语音频帧的后一帧语音频帧以及当前语音频帧的后一帧语音频帧的后一帧语音频帧,而当前语音频帧的后一帧语音频帧以及当前语音频帧的后一帧语音频帧的后一帧语音频帧与当前语音频帧是紧邻的三个语音频帧,以此类推。

其中,语音频解码参数可包括如下参数的至少一种:

频带扩展包络、自适应码书增益(gain_pit)、代数码书、基因周期、谱倾斜因子和频谱对参数等。

其中,语音频参数可包括语音频解码参数和信号类型等。

其中,语音频帧的信号类型可以是清音(unvoiced)、浊音(voiced)或普通语音(generic)、过渡语音(transition)或静默音(inactive)等等。

其中,频谱对参数例如可以是线谱对(lsp:linearspectralpairs)参数和导抗频谱对(isp:immittancespectralpairs)参数中的至少一个。

可以理解,本发明实施例可以对当前语音频帧的频带扩展包络、自适应码书增益、代数码书、基因周期和频谱对参数之中的至少1个语音频解码参数进行后处理,具体选择几个参数,选择哪几个参数进行后处理可以根据应用的场景和环境进行选择,本发明实施例并不做限定。

对于不同的语音频解码参数可能进行不同的后处理,例如,对当前语音频帧的频谱对参数进行的后处理,可以是使用当前语音频帧的频谱对参数和当前语音频帧的前一帧语音频帧的频谱对参数做自适应的加权,以获得当前语音频帧的后处理的频谱对参数。对当前语音频帧的自适应码书增益的后处理可以是对自适应码书增益进行调整,如衰减等。

本发明实施例不对具体的后处理方式进行限定,具体进行何种后处理可以根据需要或者根据应用的环境和场景进行设定。

103、使用上述当前语音频帧的后处理的语音频解码参数恢复上述当前语音频帧的语音频信号。

从上可知,本实施例中,对于当前语音频帧为冗余解码帧或者上述当前语音频帧的前一帧语音频帧为冗余解码帧的场景,解码端获得当前语音频帧的解码参数后,根据x帧语音频帧的语音频参数对当前语音频帧的语音频解码参数进行后处理,以得到上述当前语音频帧的后处理的语音频解码参数,上述x帧语音频帧包括上述当前语音频帧的前m帧语音频帧和/或上述当前语音频帧的后n帧语音频帧,并使用当前语音频帧的后处理的音频解码参数恢复当前语音频帧的语音频信号,这样有利于解码信号在冗余解码帧和正常解码帧之间或在冗余解码帧和fec恢复帧之间过渡时得到稳定质量,从而提高输出的语音频信号的质量。

在本发明的一些实施例中,上述当前语音频帧的语音频解码参数包括上述当前语音频帧的频谱对参数,其中,上述根据x帧语音频帧的语音频参数对上述当前语音频帧的语音频解码参数进行后处理,以得到上述当前语音频帧的后处理的语音频解码参数,例如可包括:根据x帧语音频帧的信号类型、谱倾斜因子、自适应码书增益和频谱对参数中的至少一种,对上述当前语音频帧的频谱对参数进行后处理,以得到上述当前语音频帧的后处理的频谱对参数。

举例来说,上述根据x帧语音频帧的信号类型、谱倾斜因子、自适应码书增益和频谱对参数中的至少一种,对上述当前语音频帧的频谱对参数进行后处理,以得到上述当前语音频帧的后处理的频谱对参数,可包括:

若上述当前语音频帧为正常解码帧且上述当前语音频帧的前一帧语音频帧为冗余解码帧,并且上述当前语音频帧的信号类型为清音,且上述当前语音频帧的前一帧语音频帧的信号类型不为清音,则将上述当前语音频帧的频谱对参数作为上述当前语音频帧的后处理的频谱对参数,或基于上述当前语音频帧的频谱对参数获得上述当前语音频帧的后处理的频谱对参数;

或者,

若上述当前语音频帧为正常解码帧并且上述当前语音频帧的前一帧语音频帧为冗余解码帧,并且上述当前语音频帧的信号类型为清音,并且上述当前语音频帧的前一帧语音频帧的信号类型不为清音,则基于当前语音频帧的频谱对参数和上述当前语音频帧的前一帧语音频帧的频谱对参数获得上述当前语音频帧的后处理的频谱对参数;

或者,

若上述当前语音频帧为冗余解码帧,且上述当前语音频帧的信号类型不为清音,并且上述当前语音频帧的后一帧语音频帧的信号类型为清音,则将上述当前语音频帧的前一帧语音频帧的频谱对参数作为上述当前语音频帧的后处理的频谱对参数,或基于上述当前语音频帧的前一帧语音频帧的频谱对参数获得上述当前语音频帧的后处理的频谱对参数;

或者,

若上述当前语音频帧为冗余解码帧,且上述当前语音频帧的信号类型不为清音,并且上述当前语音频帧的后一帧语音频帧的信号类型为清音,则基于上述当前语音频帧的频谱对参数和上述当前语音频帧的前一帧语音频帧的频谱对参数,获得上述当前语音频帧的后处理的频谱对参数;

或者,

若上述当前语音频帧为冗余解码帧且上述当前语音频帧的信号类型不为清音,并且上述当前语音频帧的后一帧语音频帧中的子帧的自适应码书增益的最大值小于或等于第一阈值,并且上述当前语音频帧的前一帧语音频帧的谱倾斜因子小于或等于第二阈值,则将上述当前语音频帧的前一帧语音频帧的频谱对参数作为上述当前语音频帧的后处理的频谱对参数,或基于上述当前语音频帧的前一帧语音频帧的频谱对参数获得上述当前语音频帧的后处理的频谱对参数;

或者,

若上述当前语音频帧为冗余解码帧且上述当前语音频帧的信号类型不为清音,并且上述当前语音频帧的后一帧语音频帧中的子帧的自适应码书增益的最大值小于或等于第一阈值,并且上述当前语音频帧的前一帧语音频帧的谱倾斜因子小于或等于第二阈值,则基于当前语音频帧的频谱对参数和上述当前语音频帧的前一帧语音频帧的频谱对参数,获得上述当前语音频帧的后处理的频谱对参数;

或者,

若上述当前语音频帧为冗余解码帧,并且上述当前语音频帧的信号类型不为清音,并且上述当前语音频帧的后一帧语音频帧为清音,并且上述当前语音频帧的后一帧语音频帧中的子帧的自适应码书增益的最大值小于或等于第三阈值,并且上述当前语音频帧的前一帧语音频帧的谱倾斜因子小于或等于第四阈值,则将上述当前语音频帧的前一帧语音频帧的频谱对参数作为上述当前语音频帧的后处理的频谱对参数,或基于上述当前语音频帧的前一帧语音频帧的频谱对参数获得上述当前语音频帧的后处理的频谱对参数;

或者,

若上述当前语音频帧为冗余解码帧,并且上述当前语音频帧的信号类型不为清音,并且上述当前语音频帧的后一帧语音频帧的信号类型为清音,并且上述当前语音频帧的后一帧语音频帧中的子帧的自适应码书增益的最大值小于或者等于第三阈值,并且上述当前语音频帧的前一帧语音频帧的谱倾斜因子小于或者等于第四阈值,则基于上述当前语音频帧的频谱对参数和上述当前语音频帧的前一帧语音频帧的频谱对参数,获得上述当前语音频帧的后处理的频谱对参数。

其中,上述基于上述当前语音频帧的频谱对参数和上述当前语音频帧的前一帧语音频帧的频谱对参数,获得上述当前语音频帧的后处理的频谱对参数的方式可以是多种多样的。

例如,上述基于上述当前语音频帧的频谱对参数和上述当前语音频帧的前一帧语音频帧的频谱对参数,获得上述当前语音频帧的后处理的频谱对参数可包括:具体通过如下公式,基于上述当前语音频帧的频谱对参数和上述当前语音频帧的前一帧语音频帧的频谱对参数,获得上述当前语音频帧的后处理的频谱对参数:

lsp[k]=α*lsp_old[k]+β*lsp_mid[k]+δ*lsp_new[k]0≤k≤l;

其中,上述lsp[k]为上述当前语音频帧的后处理的频谱对参数,上述lsp_old[k]为上述当前语音频帧的前一帧语音频帧的频谱对参数,上述lsp_mid[k]为上述当前语音频帧的频谱对参数的中间值,上述lsp_new[k]为上述当前语音频帧的频谱对参数,上述l为频谱对参数的阶数,其中,上述α为上述当前语音频帧的前一帧语音频帧的频谱对参数的权重,上述β为上述当前语音频帧的频谱对参数的中间值的权重,上述δ为上述当前语音频帧的频谱对参数的权重,α≥0,β≥0,δ≥0,且α+β+δ=1,

其中,若上述当前语音频帧为正常解码帧,并且上述当前语音频帧的前一帧语音频帧为冗余解码帧,则上述α等于0或上述α小于或等于第五阈值;或者,若上述当前语音频帧为冗余解码帧,则上述β等于0或上述β小于或等于第六阈值;或者,若上述当前语音频帧为冗余解码帧,上述δ等于0或上述δ小于或等于第七阈值;或者若上述当前语音频帧为冗余解码帧,则上述β等于0或者上述β小于或等于第六阈值,并且上述δ等于0或上述δ小于或者等于第七阈值。

又例如,上述基于上述当前语音频帧的频谱对参数和上述当前语音频帧的前一帧语音频帧的频谱对参数,获得上述当前语音频帧的后处理的频谱对参数可以包括:具体通过如下公式,基于上述当前语音频帧的频谱对参数和上述当前语音频帧的前一帧语音频帧的频谱对参数,获得上述当前语音频帧的后处理的频谱对参数:

lsp[k]=α*lsp_old[k]+δ*lsp_new[k]0≤k≤l;

其中,上述lsp[k]为上述当前语音频帧的后处理的频谱对参数,上述lsp_old[k]为上述当前语音频帧的前一帧语音频帧的频谱对参数,上述lsp_new[k]为上述当前语音频帧的频谱对参数,上述l为频谱对参数的阶数,上述α为上述当前语音频帧的前一帧语音频帧的频谱对参数的权重,上述δ为上述当前语音频帧的频谱对参数的权重,α≥0,δ≥0,且α+δ=1,

其中,若上述当前语音频帧为正常解码帧并且上述当前语音频帧的前一帧语音频帧为冗余解码帧,则上述α等于0或者上述α小于或等于第五阈值;或者,若上述当前语音频帧为冗余解码帧,则上述δ等于0或上述δ小于或等于第七阈值。

其中,对于第五阈值、第六阈值和第七阈值,可以根据应用的环境或场景的不同而设置不同的值。例如,第五阈值的取值可接近于0,例如第五阈值可等于0.001、0.002、0.01或0.1或其它接近于0的值。其中,第六阈值的取值可接近于0,如第六阈值可等于0.001、0.002、0.01或0.1或其它接近于0的值。第七阈值的取值可接近于0,例如第七阈值可等于0.001、0.002、0.01或0.1或其它接近于0的值。

其中,对于第一阈值、第二阈值、第三阈值和第四阈值,可以根据应用的环境或场景的不同而设置不同的值。

例如第一阈值可以设置为0.9,0.8,0.85,0.7,0.89或0.91等。

例如第二阈值可以设置为0.16,0.15,0.165,0.1,0.161或0.159等。

例如第三阈值可以设置为0.9,0.8,0.85,0.7,0.89或0.91等。

例如第四阈值可以设置为0.16,0.15,0.165,0.1,0.161或0.159等。

其中,第一阈值可等于或不等于第三阈值。第二阈值可等于或不等于第四阈值。

在本发明另一些实施例中,上述当前语音频帧的语音频解码参数包括上述当前语音频帧的自适应码书增益;其中,上述根据x帧语音频帧的语音频参数对上述当前语音频帧的语音频解码参数进行后处理,以得到上述当前语音频帧的后处理的语音频解码参数,可包括:根据x帧语音频帧的信号类型、代数码书增益和自适应码书增益中的至少一种,对上述当前语音频帧的自适应码书增益进行后处理,以得到上述当前语音频帧的后处理的自适应码书增益。

举例来说,上述根据x帧语音频帧的信号类型、代数码书增益和自适应码书增益中的至少一种,对上述当前语音频帧的自适应码书增益进行后处理可以包括:

若上述当前语音频帧为冗余解码帧并且上述当前语音频帧的信号类型不为清音,并且上述当前语音频帧的后两帧语音频帧之中的至少一帧语音频帧的信号类型为清音,并且上述当前语音频帧中的当前子帧的代数码书增益大于或等于上述当前语音频帧的前一帧语音频帧的代数码书增益(例如,上述当前语音频帧中的当前子帧的代数码书增益为上述当前语音频帧的前一帧语音频帧的代数码书增益的1倍、1.5倍、2倍、2.5倍、3倍、3.4倍、4倍或其它大于或等于1的倍数),则衰减上述当前子帧的自适应码书增益;

或者,

若上述当前语音频帧为冗余解码帧,并且上述当前语音频帧的信号类型不为清音,并且上述当前语音频帧的后一帧语音频帧和后一帧语音频帧的后一帧语音频帧之中的至少一帧语音频帧的信号类型为清音,并且上述当前语音频帧中的当前子帧的代数码书增益大于或等于上述当前子帧的前一子帧的代数码书增益(例如上述当前语音频帧中的当前子帧的代数码书增益是上述当前子帧的前一子帧的代数码书增益的1倍、1.5倍、2倍、2.5倍、3倍、3.4倍、4倍或其它大于或等于1的倍数),则衰减上述当前子帧的自适应码书增益;

或者,

若上述当前语音频帧为冗余解码帧或上述当前语音频帧为正常解码帧且上述当前语音频帧的前一帧语音频帧为冗余解码帧,并且若上述当前语音频帧的信号类型为普通语音,并且上述当前语音频帧的后一帧语音频帧的信号类型为浊音,并且上述当前语音频帧中的某子帧的代数码书增益大于或等于上述某子帧的前一子帧的代数码书增益(例如,上述当前语音频帧中的某子帧的代数码书增益可为上述某子帧的前一子帧的代数码书增益的1倍、1.5倍、2倍、2.5倍、3倍、3.4倍、4倍或其它大于或等于1的倍数),则基于上述当前语音频帧的当前子帧和上述当前子帧的相邻子帧的代数码书增益的比值、上述当前语音频帧的当前子帧和上述当前子帧的相邻子帧的自适应码书增益的比值和上述当前语音频帧的当前子帧和上述当前语音频帧的前一帧语音频帧的代数码书增益的比值之中的至少一个,调整(如增大或衰减)上述当前语音频帧的当前子帧的自适应码书增益(例如若上述当前语音频帧的当前子帧和上述当前子帧的相邻子帧的代数码书增益的比值大于或等于第十一阈值(第十一阈值例如可等于2、2.1、.2.5、3或其它值),上述当前语音频帧的当前子帧和上述当前子帧的相邻子帧的自适应码书增益的比值大于或等于第十二阈值(第十二阈值例如可等于1、1.1、1.5、2、2.1或其它值),且上述当前语音频帧的当前子帧和上述当前语音频帧的前一帧语音频帧的代数码书增益的比值小于或等于第十三阈值(第十三阈值例如可等于1、1.1、1.5、2或其它值),则可增大上述当前语音频帧的当前子帧的自适应码书增益);

或者,

若上述当前语音频帧为冗余解码帧或者上述当前语音频帧为正常解码帧且上述当前语音频帧的前一帧语音频帧为冗余解码帧,并且若上述当前语音频帧的信号类型为普通语音,并且上述当前语音频帧的后一帧语音频帧的信号类型为浊音,并且上述当前语音频帧中的某子帧的代数码书增益大于或者等于上述当前语音频帧的前一帧语音频帧的代数码书增益(上述当前语音频帧中的某子帧的代数码书增益为上述当前语音频帧的前一帧语音频帧的代数码书增益的1倍、1.5倍、2倍、2.5倍、3倍、3.4倍、4倍或其它大于或等于1的倍数),则基于上述当前语音频帧的当前子帧和上述当前子帧的相邻子帧的代数码书增益的比值、上述当前语音频帧的当前子帧和上述当前子帧的相邻子帧的自适应码书增益的比值和上述当前语音频帧的当前子帧和上述当前语音频帧的前一帧语音频帧的代数码书增益的比值之中的至少一个,调整(衰减或增大)上述当前语音频帧的当前子帧的自适应码书增益(例如,若上述当前语音频帧的当前子帧和上述当前子帧的相邻子帧的代数码书增益的比值大于或等于第十一阈值(第十一阈值例如可等于2、2.1、.2.5、3或其它值),上述当前语音频帧的当前子帧和上述当前子帧的相邻子帧的自适应码书增益的比值大于或等于第十二阈值(第十二阈值例如可等于1、1.1、1.5、2、2.1或其它值),且上述当前语音频帧的当前子帧和上述当前语音频帧的前一帧语音频帧的代数码书增益的比值小于或等于第十三阈值(第十三阈值例如可等于1、1.1、1.5、2或其它值),则可增大上述当前语音频帧的当前子帧的自适应码书增益);

或者,

若上述当前语音频帧为冗余解码帧或上述当前语音频帧为正常解码帧且上述当前语音频帧的前一帧语音频帧为冗余解码帧,且若上述当前语音频帧为浊音,并且上述当前语音频帧的前一帧语音频帧的信号类型为普通语音,并且上述当前语音频帧中的某子帧的代数码书增益大于或等于上述某子帧的前一子帧的代数码书增益(例如上述当前语音频帧中的某子帧的代数码书增益可为上述某子帧的前一子帧的代数码书增益的1倍、1.5倍、2倍、2.5倍、3倍、3.4倍、4倍或其它大于或等于1的倍数),则基于上述当前语音频帧的当前子帧和上述当前子帧的相邻子帧的代数码书增益的比值、上述当前语音频帧的当前子帧和上述当前子帧的相邻子帧的自适应码书增益的比值和上述当前语音频帧的当前子帧和上述当前语音频帧的前一帧语音频帧的代数码书增益的比值中的至少一个,调整(衰减或增大)上述当前语音频帧的当前子帧的自适应码书增益(例如若上述当前语音频帧的当前子帧和上述当前子帧的相邻子帧的代数码书增益的比值大于或等于第十一阈值(第十一阈值例如等于2、2.1、.2.5、3或其它值),上述当前语音频帧的当前子帧和上述当前子帧的相邻子帧的自适应码书增益的比值大于或等于第十二阈值(第十二阈值例如等于1、1.1、1.5或2、2.1或其它值),且上述当前语音频帧的当前子帧和上述当前语音频帧的前一帧语音频帧的代数码书增益的比值小于或等于第十三阈值(第十三阈值例如可等于1、1.1、1.5、2或其它值),则可增大上述当前语音频帧的当前子帧的自适应码书增益);

或者,

若上述当前语音频帧为冗余解码帧或者上述当前语音频帧为正常解码帧并且上述当前语音频帧的前一帧语音频帧为冗余解码帧,并且若上述当前语音频帧的信号类型为浊音,并且上述当前语音频帧的前一帧语音频帧的信号类型为普通语音,并且上述当前语音频帧中的某子帧的代数码书增益大于或等于上述当前语音频帧的前一帧语音频帧的代数码书增益(例如,上述当前语音频帧中的某子帧的代数码书增益为上述当前语音频帧的前一帧语音频帧的代数码书增益的1倍、1.5倍、2倍、2.5倍、3倍、3.4倍、4倍或其它大于或等于1的倍数),则基于上述当前语音频帧的当前子帧和上述当前子帧的相邻子帧的代数码书增益的比值、上述当前语音频帧的当前子帧和上述当前子帧的相邻子帧的自适应码书增益的比值和上述当前语音频帧的当前子帧和上述当前语音频帧的前一帧语音频帧的代数码书增益的比值之中的至少一个,调整(衰减或增大)上述当前语音频帧的当前子帧的自适应码书增益(例如若上述当前语音频帧的当前子帧和上述当前子帧的相邻子帧的代数码书增益的比值大于或等于第十一阈值(第十一阈值例如可等于2、2.1、.2.5、3或其它值),上述当前语音频帧的当前子帧和上述当前子帧的相邻子帧的自适应码书增益的比值大于或等于第十二阈值(第十二阈值例如可等于1、1.1、1.5、2、2.1或其它值),且上述当前语音频帧的当前子帧和上述当前语音频帧的前一帧语音频帧的代数码书增益的比值小于或等于第十三阈值(第十三阈值例如等于1、1.1、1.5、2或其它值),则可增大上述当前语音频帧的当前子帧的自适应码书增益)。

在本发明的另一些实施例中,上述当前语音频帧的语音频解码参数包括上述当前语音频帧的代数码书,上述根据x帧语音频帧的语音频参数对上述当前语音频帧的语音频解码参数进行后处理,以得到上述当前语音频帧的后处理的语音频解码参数,可以包括:根据x帧语音频帧的信号类型、代数码书和谱倾斜因子的至少一种,对上述当前语音频帧的代数码书进行后处理,以得到上述当前语音频帧的后处理的代数码书。

举例来说,上述根据x帧语音频帧的信号类型、代数码书和谱倾斜因子的至少一种,对上述当前语音频帧的代数码书进行后处理,可包括:若上述当前语音频帧为冗余解码帧,并且上述当前语音频帧的后一帧语音频帧的信号类型为清音,并且上述当前语音频帧的前一帧语音频帧的谱倾斜因子小于或等于第八阈值,并且上述当前语音频帧的其中一个子帧的代数码书为零或小于或等于第九阈值,则将上述当前语音频帧的前一子帧的代数码书或随机噪声作为上述当前子帧的代数码书。

其中,对于第八阈值和第九阈值,可以根据应用的环境或场景的不同而设置不同的值。

例如第八阈值可以设置为0.16,0.15,0.165,0.1,0.161或0.159等。

例如第九阈值可以设置为0.1,0.09,0.11,0.07,0.101或0.099或其它接近于0的值等。

其中,第八阈值可等于或不等于第二阈值。

在本发明的另一些实施例中,上述当前语音频帧的语音频解码参数包括上述当前语音频帧的频带扩展包络,其中,上述根据x帧语音频帧的语音频参数对上述当前语音频帧的语音频解码参数进行后处理,以得到上述当前语音频帧的后处理的语音频解码参数,可包括:根据x帧语音频帧的信号类型、频带扩展包络和谱倾斜因子中的至少一种,对上述当前语音频帧的频带扩展包络进行后处理,以得到上述当前语音频帧的后处理的频带扩展包络。

举例来说,上述根据x帧语音频帧的信号类型、频带扩展包络和谱倾斜因子中的至少一种,对上述当前语音频帧的频带扩展包络进行后处理,以得到上述当前语音频帧的后处理的频带扩展包络,可以包括:

若上述当前语音频帧的前一帧语音频帧为正常解码帧,且上述当前语音频帧的前一帧语音频帧和当前语音频帧的后一帧语音频帧的信号类型相同,则基于上述当前语音频帧的前一帧语音频帧的频带扩展包络和上述当前语音频帧的频带扩展包络,得到上述当前语音频帧的后处理的频带扩展包络;

或者,

若上述当前语音频帧为冗余解码的预测模式,则基于上述当前语音频帧的前一帧语音频帧的频带扩展包络和上述当前语音频帧的频带扩展包络,得到上述当前语音频帧的后处理的频带扩展包络;

或者,

若上述当前语音频帧的信号类型不是清音,且上述当前语音频帧的后一帧语音频帧的信号类型为清音,且上述当前语音频帧的前一帧语音频帧的谱倾斜因子小于或等于第十阈值,则根据上述当前语音频帧的前一帧语音频帧的频带扩展包络或者谱倾斜因子,修正上述当前语音频帧的频带扩展包络,以得到上述当前语音频帧的后处理的频带扩展包络。

可根据应用的环境或场景的不同而设置第十阈值的不同的取值。例如第十阈值可以设置为0.16,0.15,0.165,0.1,0.161或0.159等。

例如,基于上述当前语音频帧的前一帧语音频帧的频带扩展包络和上述当前语音频帧的频带扩展包络,得到上述当前语音频帧的后处理的频带扩展包络可以包括:具体通过如下公式,基于上述当前语音频帧的前一帧语音频帧的频带扩展包络和上述当前语音频帧的频带扩展包络,得到上述当前语音频帧的后处理的频带扩展包络:

gainframe=fac1*gainframe_old+fac2*gainframe_new。

其中,上述gainframe为上述当前语音频帧的后处理的频带扩展包络,上述gainframe_old为上述当前语音频帧的前一帧语音频帧的频带扩展包络,上述gainframe_new为上述当前语音频帧的频带扩展包络,上述fac1为上述当前语音频帧的前一帧语音频帧的频带扩展包络的权重,上述fac2为上述当前语音频帧的频带扩展包络的权重,fac1≥0,fac2≥0,且fac1+fac2=1。

又例如,上述修正上述当前语音频帧的频带扩展包络的修正因子与上述当前语音频帧的前一帧语音频帧的谱倾斜因子成反比,与上述当前语音频帧的前一帧语音频帧的频带扩展包络与上述当前语音频帧的频带扩展包络的比值成正比。

在本发明的另一些实施例中,上述当前语音频帧的语音频解码参数包括上述当前语音频帧的基因周期,上述根据x帧语音频帧的语音频参数对上述当前语音频帧的语音频解码参数进行后处理,以得到上述当前语音频帧的后处理的语音频解码参数,可包括:根据x帧语音频帧的信号类型和/或基因周期,对上述当前语音频帧的基因周期进行后处理(例如,可以根据x帧语音频帧的信号类型和/或基因周期,对上述当前语音频帧的基因周期进行增大或者衰减等后处理),以得到上述当前语音频帧的后处理的基因周期。

从上可知,本发明的一些实施例中,在清音语音频帧和非清音语音频帧之间过渡(例如,当前语音频帧的信号类型为清音并且为冗余解码帧时,而当前语音频帧的前一帧语音频帧或后一帧语音频帧的信号类型为非清音并且为正常解码帧,或者当前语音频帧的信号类型为非清音且为正常解码帧,当前语音频帧的前一帧语音频帧或后一帧语音频帧的信号类型为清音并且为冗余解码帧)时,对当前语音频帧的语音频解码参数进行后处理,从而有利于去掉清音语音频帧和非清音语音频帧的帧间过渡时的咔咔声(click)现象,从而提高输出的语音频信号的质量。

本发明的另一些实施例中,在普通语音频帧与浊音语音频帧之间过渡(当前帧为普通语音帧并且为冗余解码帧时,而当前语音频帧的前一帧语音频帧或后一帧语音频帧的信号类型为浊音并且为正常解码帧,或当前语音频帧的信号类型为浊音且为正常解码帧,当前语音频帧的前一帧语音频帧或后一帧语音频帧的信号类型为普通语音并且为冗余解码帧)时,对当前语音频帧的语音频解码参数进行后处理,从而有利于纠正普通语音帧和浊音帧之间过渡时的能量不稳定现象,从而提高输出的语音频信号的质量。

本发明的又一些实施例中,在当前语音频帧为冗余解码帧,并且当前语音频帧的信号类型不是清音,且当前语音频帧的后一帧语音频帧的信号类型是清音时,对当前帧的频带扩展包络进行调整,从而修正时域频带扩展的能量不稳定现象,提高输出的语音频信号的质量。

为便于更好的理解和实施本发明实施例的上述方案,下面通过举例一些具体的应用场景进行说明。

参见图2,图2是本发明的另一个实施例提供的另一种语音频码流的解码方法的流程示意图。本发明的另一个实施例提供的另一种语音频码流的解码方法可包括以下内容:

201、判断当前语音频帧的解码状态。

具体地,例如可以基于jbm算法或其它算法,判断当前语音频帧的解码状态为正常解码帧、冗余解码帧或fec恢复帧。

其中,若当前语音频帧为正常解码帧,且当前语音频帧的前一帧语音频帧为冗余解码帧,则执行步骤202。

其中,若当前语音频帧为冗余解码帧,则执行步骤203。

其中,若当前语音频帧为fec恢复帧,且上述当前语音频帧的前一帧语音频帧为冗余解码帧,则执行步骤204。

202、基于当前语音频帧码流获得当前语音频帧的语音频解码参数,跳转至步骤205。

203、基于当前语音频帧的冗余码流,获得上述当前语音频帧的语音频解码参数,跳转至步骤205。

204、基于fec算法预测得到当前语音频帧的语音频解码参数,跳转至步骤205。

205、根据x帧语音频帧的语音频参数对上述当前语音频帧的语音频解码参数进行后处理,以得到上述当前语音频帧的后处理的语音频解码参数。上述x帧语音频帧包括上述当前语音频帧的前m帧语音频帧和/或上述当前语音频帧的后n帧语音频帧。上述m和n为正整数。

206、使用上述当前语音频帧的后处理的语音频解码参数恢复上述当前语音频帧的语音频信号。

其中,对于不同的语音频解码参数可能进行不同的后处理,例如,对当前语音频帧的频谱对参数进行的后处理,可以是使用当前语音频帧的频谱对参数和当前语音频帧的前一帧语音频帧的频谱对参数做自适应的加权,以获得当前语音频帧的后处理的频谱对参数。对当前语音频帧的自适应码书增益的后处理可以是对自适应码书增益进行调整,如衰减等。

在本发明的一些实施例中,上述当前语音频帧的语音频解码参数包括上述当前语音频帧的频谱对参数,其中,上述根据x帧语音频帧的语音频参数对上述当前语音频帧的语音频解码参数进行后处理,以得到上述当前语音频帧的后处理的语音频解码参数,例如可包括:根据x帧语音频帧的信号类型、谱倾斜因子、自适应码书增益和频谱对参数中的至少一种,对上述当前语音频帧的频谱对参数进行后处理,以得到上述当前语音频帧的后处理的频谱对参数。

举例来说,上述根据x帧语音频帧的信号类型、谱倾斜因子、自适应码书增益和频谱对参数中的至少一种,对上述当前语音频帧的频谱对参数进行后处理,以得到上述当前语音频帧的后处理的频谱对参数,可包括:

若上述当前语音频帧为正常解码帧且上述当前语音频帧的前一帧语音频帧为冗余解码帧,并且上述当前语音频帧的信号类型为清音,且上述当前语音频帧的前一帧语音频帧的信号类型不为清音,则将上述当前语音频帧的频谱对参数作为上述当前语音频帧的后处理的频谱对参数,或基于上述当前语音频帧的频谱对参数获得上述当前语音频帧的后处理的频谱对参数;

或者,

若上述当前语音频帧为正常解码帧并且上述当前语音频帧的前一帧语音频帧为冗余解码帧,并且上述当前语音频帧的信号类型为清音,并且上述当前语音频帧的前一帧语音频帧的信号类型不为清音,则基于当前语音频帧的频谱对参数和上述当前语音频帧的前一帧语音频帧的频谱对参数获得上述当前语音频帧的后处理的频谱对参数;

或者,

若上述当前语音频帧为冗余解码帧,且上述当前语音频帧的信号类型不为清音,并且上述当前语音频帧的后一帧语音频帧的信号类型为清音,则将上述当前语音频帧的前一帧语音频帧的频谱对参数作为上述当前语音频帧的后处理的频谱对参数,或基于上述当前语音频帧的前一帧语音频帧的频谱对参数获得上述当前语音频帧的后处理的频谱对参数;

或者,

若上述当前语音频帧为冗余解码帧,且上述当前语音频帧的信号类型不为清音,并且上述当前语音频帧的后一帧语音频帧的信号类型为清音,则基于上述当前语音频帧的频谱对参数和上述当前语音频帧的前一帧语音频帧的频谱对参数,获得上述当前语音频帧的后处理的频谱对参数;

或者,

若上述当前语音频帧为冗余解码帧且上述当前语音频帧的信号类型不为清音,并且上述当前语音频帧的后一帧语音频帧中的子帧的自适应码书增益的最大值小于或等于第一阈值,并且上述当前语音频帧的前一帧语音频帧的谱倾斜因子小于或等于第二阈值,则将上述当前语音频帧的前一帧语音频帧的频谱对参数作为上述当前语音频帧的后处理的频谱对参数,或基于上述当前语音频帧的前一帧语音频帧的频谱对参数获得上述当前语音频帧的后处理的频谱对参数;

或者,

若上述当前语音频帧为冗余解码帧且上述当前语音频帧的信号类型不为清音,并且上述当前语音频帧的后一帧语音频帧中的子帧的自适应码书增益的最大值小于或等于第一阈值,并且上述当前语音频帧的前一帧语音频帧的谱倾斜因子小于或等于第二阈值,则基于当前语音频帧的频谱对参数和上述当前语音频帧的前一帧语音频帧的频谱对参数,获得上述当前语音频帧的后处理的频谱对参数;

或者,

若上述当前语音频帧为冗余解码帧,并且上述当前语音频帧的信号类型不为清音,并且上述当前语音频帧的后一帧语音频帧为清音,并且上述当前语音频帧的后一帧语音频帧中的子帧的自适应码书增益的最大值小于或等于第三阈值,并且上述当前语音频帧的前一帧语音频帧的谱倾斜因子小于或等于第四阈值,则将上述当前语音频帧的前一帧语音频帧的频谱对参数作为上述当前语音频帧的后处理的频谱对参数,或基于上述当前语音频帧的前一帧语音频帧的频谱对参数获得上述当前语音频帧的后处理的频谱对参数;

或者,

若上述当前语音频帧为冗余解码帧,并且上述当前语音频帧的信号类型不为清音,并且上述当前语音频帧的后一帧语音频帧的信号类型为清音,并且上述当前语音频帧的后一帧语音频帧中的子帧的自适应码书增益的最大值小于或者等于第三阈值,并且上述当前语音频帧的前一帧语音频帧的谱倾斜因子小于或者等于第四阈值,则基于上述当前语音频帧的频谱对参数和上述当前语音频帧的前一帧语音频帧的频谱对参数,获得上述当前语音频帧的后处理的频谱对参数。

其中,上述基于上述当前语音频帧的频谱对参数和上述当前语音频帧的前一帧语音频帧的频谱对参数,获得上述当前语音频帧的后处理的频谱对参数的方式可以是多种多样的。

例如,上述基于上述当前语音频帧的频谱对参数和上述当前语音频帧的前一帧语音频帧的频谱对参数,获得上述当前语音频帧的后处理的频谱对参数可包括:具体通过如下公式,基于上述当前语音频帧的频谱对参数和上述当前语音频帧的前一帧语音频帧的频谱对参数,获得上述当前语音频帧的后处理的频谱对参数:

lsp[k]=α*lsp_old[k]+β*lsp_mid[k]+δ*lsp_new[k]0≤k≤l;

其中,上述lsp[k]为上述当前语音频帧的后处理的频谱对参数,上述lsp_old[k]为上述当前语音频帧的前一帧语音频帧的频谱对参数,上述lsp_mid[k]为上述当前语音频帧的频谱对参数的中间值,上述lsp_new[k]为上述当前语音频帧的频谱对参数,上述l为频谱对参数的阶数,其中,上述α为上述当前语音频帧的前一帧语音频帧的频谱对参数的权重,上述β为上述当前语音频帧的频谱对参数的中间值的权重,上述δ为上述当前语音频帧的频谱对参数的权重,α≥0,β≥0,δ≥0,且α+β+δ=1,

其中,若上述当前语音频帧为正常解码帧,并且上述当前语音频帧的前一帧语音频帧为冗余解码帧,则上述α等于0或上述α小于或等于第五阈值;或者,若上述当前语音频帧为冗余解码帧,则上述β等于0或上述β小于或等于第六阈值;或者,若上述当前语音频帧为冗余解码帧,上述δ等于0或上述δ小于或等于第七阈值;或者若上述当前语音频帧为冗余解码帧,则上述β等于0或者上述β小于或等于第六阈值,并且上述δ等于0或上述δ小于或者等于第七阈值。

又例如,上述基于上述当前语音频帧的频谱对参数和上述当前语音频帧的前一帧语音频帧的频谱对参数,获得上述当前语音频帧的后处理的频谱对参数可以包括:具体通过如下公式,基于上述当前语音频帧的频谱对参数和上述当前语音频帧的前一帧语音频帧的频谱对参数,获得上述当前语音频帧的后处理的频谱对参数:

lsp[k]=α*lsp_old[k]+δ*lsp_new[k]0≤k≤l;

其中,上述lsp[k]为上述当前语音频帧的后处理的频谱对参数,上述lsp_old[k]为上述当前语音频帧的前一帧语音频帧的频谱对参数,上述lsp_new[k]为上述当前语音频帧的频谱对参数,上述l为频谱对参数的阶数,上述α为上述当前语音频帧的前一帧语音频帧的频谱对参数的权重,上述δ为上述当前语音频帧的频谱对参数的权重,α≥0,δ≥0,且α+δ=1,

其中,若上述当前语音频帧为正常解码帧并且上述当前语音频帧的前一帧语音频帧为冗余解码帧,则上述α等于0或者上述α小于或等于第五阈值;或者,若上述当前语音频帧为冗余解码帧,则上述δ等于0或上述δ小于或等于第七阈值。

其中,对于第五阈值、第六阈值和第七阈值,可以根据应用的环境或场景的不同而设置不同的值。例如,第五阈值的取值可接近于0,例如第五阈值可等于0.001、0.002、0.01或0.1或其它接近于0的值。其中,第六阈值的取值可接近于0,如第六阈值可等于0.001、0.002、0.01或0.1或其它接近于0的值。第七阈值的取值可接近于0,例如第七阈值可等于0.001、0.002、0.01或0.1或其它接近于0的值。

其中,对于第一阈值、第二阈值、第三阈值和第四阈值,可以根据应用的环境或场景的不同而设置不同的值。

例如第一阈值可以设置为0.9,0.8,0.85,0.7,0.89或0.91等。

例如第二阈值可以设置为0.16,0.15,0.165,0.1,0.161或0.159等。

例如第三阈值可以设置为0.9,0.8,0.85,0.7,0.89或0.91等。

例如第四阈值可以设置为0.16,0.15,0.165,0.1,0.161或0.159等。

其中,第一阈值可等于或不等于第三阈值。第二阈值可等于或不等于第四阈值。

在本发明另一些实施例中,上述当前语音频帧的语音频解码参数包括上述当前语音频帧的自适应码书增益;其中,上述根据x帧语音频帧的语音频参数对上述当前语音频帧的语音频解码参数进行后处理,以得到上述当前语音频帧的后处理的语音频解码参数,可包括:根据x帧语音频帧的信号类型、代数码书增益和自适应码书增益中的至少一种,对上述当前语音频帧的自适应码书增益进行后处理,以得到上述当前语音频帧的后处理的自适应码书增益。

举例来说,上述根据x帧语音频帧的信号类型、代数码书增益和自适应码书增益中的至少一种,对上述当前语音频帧的自适应码书增益进行后处理可以包括:

若上述当前语音频帧为冗余解码帧并且上述当前语音频帧的信号类型不为清音,并且上述当前语音频帧的后两帧语音频帧之中的至少一帧语音频帧的信号类型为清音,并且上述当前语音频帧中的当前子帧的代数码书增益大于或等于上述当前语音频帧的前一帧语音频帧的代数码书增益(例如,上述当前语音频帧中的当前子帧的代数码书增益为上述当前语音频帧的前一帧语音频帧的代数码书增益的1倍、1.5倍、2倍、2.5倍、3倍、3.4倍、4倍或其它大于或等于1的倍数),则衰减上述当前子帧的自适应码书增益;

或者,

若上述当前语音频帧为冗余解码帧,并且上述当前语音频帧的信号类型不为清音,并且上述当前语音频帧的后一帧语音频帧和后一帧语音频帧的后一帧语音频帧之中的至少一帧语音频帧的信号类型为清音,并且上述当前语音频帧中的当前子帧的代数码书增益大于或等于上述当前子帧的前一子帧的代数码书增益(例如上述当前语音频帧中的当前子帧的代数码书增益是上述当前子帧的前一子帧的代数码书增益的1倍、1.5倍、2倍、2.5倍、3倍、3.4倍、4倍或其它大于或等于1的倍数),则衰减上述当前子帧的自适应码书增益;

或者,

若上述当前语音频帧为冗余解码帧或上述当前语音频帧为正常解码帧且上述当前语音频帧的前一帧语音频帧为冗余解码帧,并且若上述当前语音频帧的信号类型为普通语音,并且上述当前语音频帧的后一帧语音频帧的信号类型为浊音,并且上述当前语音频帧中的某子帧的代数码书增益大于或等于上述某子帧的前一子帧的代数码书增益(例如,上述当前语音频帧中的某子帧的代数码书增益可为上述某子帧的前一子帧的代数码书增益的1倍、1.5倍、2倍、2.5倍、3倍、3.4倍、4倍或其它大于或等于1的倍数),则基于上述当前语音频帧的当前子帧和上述当前子帧的相邻子帧的代数码书增益的比值、上述当前语音频帧的当前子帧和上述当前子帧的相邻子帧的自适应码书增益的比值和上述当前语音频帧的当前子帧和上述当前语音频帧的前一帧语音频帧的代数码书增益的比值之中的至少一个,调整(如增大或衰减)上述当前语音频帧的当前子帧的自适应码书增益(例如若上述当前语音频帧的当前子帧和上述当前子帧的相邻子帧的代数码书增益的比值大于或等于第十一阈值(第十一阈值例如可等于2、2.1、.2.5、3或其它值),上述当前语音频帧的当前子帧和上述当前子帧的相邻子帧的自适应码书增益的比值大于或等于第十二阈值(第十二阈值例如可等于1、1.1、1.5、2、2.1或其它值),且上述当前语音频帧的当前子帧和上述当前语音频帧的前一帧语音频帧的代数码书增益的比值小于或等于第十三阈值(第十三阈值例如可等于1、1.1、1.5、2或其它值),则可增大上述当前语音频帧的当前子帧的自适应码书增益);

或者,

若上述当前语音频帧为冗余解码帧或者上述当前语音频帧为正常解码帧且上述当前语音频帧的前一帧语音频帧为冗余解码帧,并且若上述当前语音频帧的信号类型为普通语音,并且上述当前语音频帧的后一帧语音频帧的信号类型为浊音,并且上述当前语音频帧中的某子帧的代数码书增益大于或者等于上述当前语音频帧的前一帧语音频帧的代数码书增益(上述当前语音频帧中的某子帧的代数码书增益为上述当前语音频帧的前一帧语音频帧的代数码书增益的1倍、1.5倍、2倍、2.5倍、3倍、3.4倍、4倍或其它大于或等于1的倍数),则基于上述当前语音频帧的当前子帧和上述当前子帧的相邻子帧的代数码书增益的比值、上述当前语音频帧的当前子帧和上述当前子帧的相邻子帧的自适应码书增益的比值和上述当前语音频帧的当前子帧和上述当前语音频帧的前一帧语音频帧的代数码书增益的比值之中的至少一个,调整(衰减或增大)上述当前语音频帧的当前子帧的自适应码书增益(例如,若上述当前语音频帧的当前子帧和上述当前子帧的相邻子帧的代数码书增益的比值大于或等于第十一阈值(第十一阈值例如可等于2、2.1、.2.5、3或其它值),上述当前语音频帧的当前子帧和上述当前子帧的相邻子帧的自适应码书增益的比值大于或等于第十二阈值(第十二阈值例如可等于1、1.1、1.5、2、2.1或其它值),且上述当前语音频帧的当前子帧和上述当前语音频帧的前一帧语音频帧的代数码书增益的比值小于或等于第十三阈值(第十三阈值例如可等于1、1.1、1.5、2或其它值),则可增大上述当前语音频帧的当前子帧的自适应码书增益);

或者,

若上述当前语音频帧为冗余解码帧或上述当前语音频帧为正常解码帧且上述当前语音频帧的前一帧语音频帧为冗余解码帧,且若上述当前语音频帧为浊音,并且上述当前语音频帧的前一帧语音频帧的信号类型为普通语音,并且上述当前语音频帧中的某子帧的代数码书增益大于或等于上述某子帧的前一子帧的代数码书增益(例如上述当前语音频帧中的某子帧的代数码书增益可为上述某子帧的前一子帧的代数码书增益的1倍、1.5倍、2倍、2.5倍、3倍、3.4倍、4倍或其它大于或等于1的倍数),则基于上述当前语音频帧的当前子帧和上述当前子帧的相邻子帧的代数码书增益的比值、上述当前语音频帧的当前子帧和上述当前子帧的相邻子帧的自适应码书增益的比值和上述当前语音频帧的当前子帧和上述当前语音频帧的前一帧语音频帧的代数码书增益的比值中的至少一个,调整(衰减或增大)上述当前语音频帧的当前子帧的自适应码书增益(例如若上述当前语音频帧的当前子帧和上述当前子帧的相邻子帧的代数码书增益的比值大于或等于第十一阈值(第十一阈值例如等于2、2.1、.2.5、3或其它值),上述当前语音频帧的当前子帧和上述当前子帧的相邻子帧的自适应码书增益的比值大于或等于第十二阈值(第十二阈值例如等于1、1.1、1.5或2、2.1或其它值),且上述当前语音频帧的当前子帧和上述当前语音频帧的前一帧语音频帧的代数码书增益的比值小于或等于第十三阈值(第十三阈值例如可等于1、1.1、1.5、2或其它值),则可增大上述当前语音频帧的当前子帧的自适应码书增益);

或者,

若上述当前语音频帧为冗余解码帧或者上述当前语音频帧为正常解码帧并且上述当前语音频帧的前一帧语音频帧为冗余解码帧,并且若上述当前语音频帧的信号类型为浊音,并且上述当前语音频帧的前一帧语音频帧的信号类型为普通语音,并且上述当前语音频帧中的某子帧的代数码书增益大于或等于上述当前语音频帧的前一帧语音频帧的代数码书增益(例如,上述当前语音频帧中的某子帧的代数码书增益为上述当前语音频帧的前一帧语音频帧的代数码书增益的1倍、1.5倍、2倍、2.5倍、3倍、3.4倍、4倍或其它大于或等于1的倍数),则基于上述当前语音频帧的当前子帧和上述当前子帧的相邻子帧的代数码书增益的比值、上述当前语音频帧的当前子帧和上述当前子帧的相邻子帧的自适应码书增益的比值和上述当前语音频帧的当前子帧和上述当前语音频帧的前一帧语音频帧的代数码书增益的比值之中的至少一个,调整(衰减或增大)上述当前语音频帧的当前子帧的自适应码书增益(例如若上述当前语音频帧的当前子帧和上述当前子帧的相邻子帧的代数码书增益的比值大于或等于第十一阈值(第十一阈值例如可等于2、2.1、.2.5、3或其它值),上述当前语音频帧的当前子帧和上述当前子帧的相邻子帧的自适应码书增益的比值大于或等于第十二阈值(第十二阈值例如可等于1、1.1、1.5、2、2.1或其它值),且上述当前语音频帧的当前子帧和上述当前语音频帧的前一帧语音频帧的代数码书增益的比值小于或等于第十三阈值(第十三阈值例如可等于1、1.1、1.5、2或其它值),则可增大上述当前语音频帧的当前子帧的自适应码书增益)。

在本发明的另一些实施例中,上述当前语音频帧的语音频解码参数包括上述当前语音频帧的代数码书,上述根据x帧语音频帧的语音频参数对上述当前语音频帧的语音频解码参数进行后处理,以得到上述当前语音频帧的后处理的语音频解码参数,可以包括:根据x帧语音频帧的信号类型、代数码书和谱倾斜因子的至少一种,对上述当前语音频帧的代数码书进行后处理,以得到上述当前语音频帧的后处理的代数码书。

举例来说,上述根据x帧语音频帧的信号类型、代数码书和谱倾斜因子的至少一种,对上述当前语音频帧的代数码书进行后处理,可包括:若上述当前语音频帧为冗余解码帧,并且上述当前语音频帧的后一帧语音频帧的信号类型为清音,并且上述当前语音频帧的前一帧语音频帧的谱倾斜因子小于或等于第八阈值,并且上述当前语音频帧的其中一个子帧的代数码书为零或小于或等于第九阈值,则将上述当前语音频帧的前一子帧的代数码书或随机噪声作为上述当前子帧的代数码书。

其中,对于第八阈值和第九阈值,可以根据应用的环境或场景的不同而设置不同的值。

例如第八阈值可以设置为0.16,0.15,0.165,0.1,0.161或0.159等。

例如第九阈值可以设置为0.1,0.09,0.11,0.07,0.101或0.099或其它接近于0的值等。

其中,第八阈值可等于或不等于第二阈值。

在本发明的另一些实施例中,上述当前语音频帧的语音频解码参数包括上述当前语音频帧的频带扩展包络,其中,上述根据x帧语音频帧的语音频参数对上述当前语音频帧的语音频解码参数进行后处理,以得到上述当前语音频帧的后处理的语音频解码参数,可包括:根据x帧语音频帧的信号类型、频带扩展包络和谱倾斜因子中的至少一种,对上述当前语音频帧的频带扩展包络进行后处理,以得到上述当前语音频帧的后处理的频带扩展包络。

举例来说,上述根据x帧语音频帧的信号类型、频带扩展包络和谱倾斜因子中的至少一种,对上述当前语音频帧的频带扩展包络进行后处理,以得到上述当前语音频帧的后处理的频带扩展包络,可以包括:

若上述当前语音频帧的前一帧语音频帧为正常解码帧,且上述当前语音频帧的前一帧语音频帧和当前语音频帧的后一帧语音频帧的信号类型相同,则基于上述当前语音频帧的前一帧语音频帧的频带扩展包络和上述当前语音频帧的频带扩展包络,得到上述当前语音频帧的后处理的频带扩展包络;

或者,

若上述当前语音频帧为冗余解码的预测模式,则基于上述当前语音频帧的前一帧语音频帧的频带扩展包络和上述当前语音频帧的频带扩展包络,得到上述当前语音频帧的后处理的频带扩展包络;

或者,

若上述当前语音频帧的信号类型不是清音,且上述当前语音频帧的后一帧语音频帧的信号类型为清音,且上述当前语音频帧的前一帧语音频帧的谱倾斜因子小于或等于第十阈值,则根据上述当前语音频帧的前一帧语音频帧的频带扩展包络或者谱倾斜因子,修正上述当前语音频帧的频带扩展包络,以得到上述当前语音频帧的后处理的频带扩展包络。

可根据应用的环境或场景的不同而设置第十阈值的不同的取值。例如第十阈值可以设置为0.16,0.15,0.165,0.1,0.161或0.159等。

例如,基于上述当前语音频帧的前一帧语音频帧的频带扩展包络和上述当前语音频帧的频带扩展包络,得到上述当前语音频帧的后处理的频带扩展包络可以包括:具体通过如下公式,基于上述当前语音频帧的前一帧语音频帧的频带扩展包络和上述当前语音频帧的频带扩展包络,得到上述当前语音频帧的后处理的频带扩展包络:

gainframe=fac1*gainframe_old+fac2*gainframe_new。

其中,上述gainframe为上述当前语音频帧的后处理的频带扩展包络,上述gainframe_old为上述当前语音频帧的前一帧语音频帧的频带扩展包络,上述gainframe_new为上述当前语音频帧的频带扩展包络,上述fac1为上述当前语音频帧的前一帧语音频帧的频带扩展包络的权重,上述fac2为上述当前语音频帧的频带扩展包络的权重,fac1≥0,fac2≥0,且fac1+fac2=1。

又例如,上述修正上述当前语音频帧的频带扩展包络的修正因子与上述当前语音频帧的前一帧语音频帧的谱倾斜因子成反比,与上述当前语音频帧的前一帧语音频帧的频带扩展包络与上述当前语音频帧的频带扩展包络的比值成正比。

在本发明的另一些实施例中,上述当前语音频帧的语音频解码参数包括上述当前语音频帧的基因周期,上述根据x帧语音频帧的语音频参数对上述当前语音频帧的语音频解码参数进行后处理,以得到上述当前语音频帧的后处理的语音频解码参数,可包括:根据x帧语音频帧的信号类型和/或基因周期,对上述当前语音频帧的基因周期进行后处理(例如,可以根据x帧语音频帧的信号类型和/或基因周期,对上述当前语音频帧的基因周期进行增大或者衰减等后处理),以得到上述当前语音频帧的后处理的基因周期。

从上可知,本实施例中,对于当前语音频帧为冗余解码帧或者上述当前语音频帧的前一帧语音频帧为冗余解码帧的场景,解码端获得当前语音频帧的解码参数后,根据x帧语音频帧的语音频参数对当前语音频帧的语音频解码参数进行后处理,以得到上述当前语音频帧的后处理的语音频解码参数,上述x帧语音频帧包括上述当前语音频帧的前m帧语音频帧和/或上述当前语音频帧的后n帧语音频帧,并使用当前语音频帧的后处理的音频解码参数恢复当前语音频帧的语音频信号,这样有利于解码信号在冗余解码帧和正常解码帧之间或在冗余解码帧和fec恢复帧之间过渡时得到稳定质量,从而提高输出的语音频信号的质量。

从上可知,本发明的一些实施例中,在清音语音频帧和非清音语音频帧之间过渡(例如,当前语音频帧的信号类型为清音并且为冗余解码帧时,而当前语音频帧的前一帧语音频帧或后一帧语音频帧的信号类型为非清音并且为正常解码帧,或者当前语音频帧的信号类型为非清音且为正常解码帧,当前语音频帧的前一帧语音频帧或后一帧语音频帧的信号类型为清音并且为冗余解码帧)时,对当前语音频帧的语音频解码参数进行后处理,从而有利于去掉清音语音频帧和非清音语音频帧的帧间过渡时的咔咔声(click)现象,从而提高输出的语音频信号的质量。

本发明的另一些实施例中,在普通语音频帧与浊音语音频帧之间过渡(当前帧为普通语音帧并且为冗余解码帧时,而当前语音频帧的前一帧语音频帧或后一帧语音频帧的信号类型为浊音并且为正常解码帧,或当前语音频帧的信号类型为浊音且为正常解码帧,当前语音频帧的前一帧语音频帧或后一帧语音频帧的信号类型为普通语音并且为冗余解码帧)时,对当前语音频帧的语音频解码参数进行后处理,从而有利于纠正普通语音帧和浊音帧之间过渡时的能量不稳定现象,从而提高输出的语音频信号的质量。

本发明的又一些实施例中,在当前语音频帧为冗余解码帧,并且当前语音频帧的信号类型不是清音,且当前语音频帧的后一帧语音频帧的信号类型是清音时,对当前帧的频带扩展包络进行调整,从而修正时域频带扩展的能量不稳定现象,提高输出的语音频信号的质量。

本发明实施例还提供用于实施上述方案的相关装置。

参见图3,本发明实施例提供一种用于解码语音频码流的解码器300,可以包括:参数获取单元310、后处理单元320和恢复单元330。

参数获取单元310,用于获取当前语音频帧的语音频解码参数,其中,上述当前语音频帧为冗余解码帧或者上述当前语音频帧的前一帧语音频帧为冗余解码帧。

其中,在上述当前语音频帧的前一帧语音频帧为冗余解码帧时,当前语音频帧可能是正常解码帧、冗余解码帧或fec恢复帧。

后处理单元320,用于根据x帧语音频帧的语音频参数对上述当前语音频帧的语音频解码参数进行后处理,以得到上述当前语音频帧的后处理的语音频解码参数,上述x帧语音频帧包括上述当前语音频帧的前m帧语音频帧和/或上述当前语音频帧的后n帧语音频帧,上述m和n为正整数。

恢复单元330,用于使用上述当前语音频帧的后处理的语音频解码参数恢复上述当前语音频帧的语音频信号。

其中,某帧语音频帧(例如当前语音频帧或者当前语音频帧的前一帧语音频帧)为正常解码帧,是指上述某帧语音频帧的语音频参数等能够直接从该某帧语音频帧码流中解码获得。某帧语音频帧(例如当前语音频帧或者当前语音频帧的前一帧语音频帧)为冗余解码帧,是指该某帧语音频帧的语音频参数等不能够直接从该某帧语音频帧码流中解码获得,但是该某帧语音频帧的冗余码流信息可从其他语音频帧码流中获得。

其中,当前语音频帧的前m帧语音频帧是指,时域上在当前语音频帧之前且与当前语音频帧紧邻的m帧语音频帧。

例如,m可等于1、2或3其它值,其中,当m=1时,当前语音频帧的前m帧语音频帧即为当前语音频帧的前一帧语音频帧,而当前语音频帧的前一帧语音频帧与当前语音频帧是紧邻的两个语音频帧,当m=2时,当前语音频帧的前m帧语音频帧即为当前语音频帧的前一帧语音频帧以及当前语音频帧的前一帧语音频帧的前一帧语音频帧,而当前语音频帧的前一帧语音频帧以及当前语音频帧的前一帧语音频帧的前一帧语音频帧与当前语音频帧是紧邻的三帧语音频帧,以此类推。

其中,当前语音频帧的后n帧语音频帧是指,时域上在当前语音频帧之后且与当前语音频帧紧邻的n帧语音频帧。

例如,n可等于1、2、3或4其它值,其中,当n=1时,当前语音频帧的后n帧语音频帧即为当前语音频帧的后一帧语音频帧,而当前语音频帧的后一帧语音频帧与当前语音频帧是紧邻的两个语音频帧,当n=2时,当前语音频帧的后n帧语音频帧即为当前语音频帧的后一帧语音频帧以及当前语音频帧的后一帧语音频帧的后一帧语音频帧,而当前语音频帧的后一帧语音频帧以及当前语音频帧的后一帧语音频帧的后一帧语音频帧与当前语音频帧是紧邻的三个语音频帧,以此类推。

其中,语音频解码参数可包括如下参数的至少一种:

频带扩展包络、自适应码书增益(gain_pit)、代数码书、基因周期、谱倾斜因子和频谱对参数等。

其中,语音频参数可包括语音频解码参数和信号类型等。

其中,语音频帧的信号类型可以是清音、浊音或普通语音、过渡语音或静默音等等。

其中,频谱对参数例如可为线谱对(lsp)参数和导抗频谱对(isp)参数中的至少一个。

可以理解,本发明实施例后处理单元320可以对当前语音频帧的频带扩展包络、自适应码书增益、代数码书、基因周期和频谱对参数之中的至少1个语音频解码参数进行后处理,具体选择几个参数,选择哪几个参数进行后处理可以根据应用的场景和环境进行选择,本发明实施例并不做限定。

后处理单元320对于不同的语音频解码参数可能进行不同的后处理,例如后处理单元320对当前语音频帧的频谱对参数进行的后处理,可以是使用当前语音频帧的频谱对参数和当前语音频帧的前一帧语音频帧的频谱对参数做自适应的加权,以获得当前语音频帧的后处理的频谱对参数。后处理单元320对当前语音频帧的自适应码书增益的后处理例如可以是对自适应码书增益进行调整,如衰减等。

本发明实施例不对后处理单元320具体的后处理方式进行限定,具体进行何种后处理可以根据需要或者根据应用的环境和场景进行设定。

在本发明一些实施例中,后处理单元320可具体用于,当上述当前语音频帧的语音频解码参数包括上述当前语音频帧的频谱对参数,根据x帧语音频帧的频谱对参数、自适应码书增益、谱倾斜因子和信号类型中的至少一种,对上述当前语音频帧的频谱对参数进行后处理,以得到上述当前语音频帧的后处理的频谱对参数。

在本发明的一些实施例中,在上述根据x帧语音频帧的频谱对参数、自适应码书增益、谱倾斜因子和信号类型中的至少一种,对上述当前语音频帧的频谱对参数进行后处理,以得到上述当前语音频帧的后处理的频谱对参数的方面,上述后处理单元具体用于,

若上述当前语音频帧为正常解码帧且上述当前语音频帧的前一帧语音频帧为冗余解码帧,并且上述当前语音频帧的信号类型为清音,且上述当前语音频帧的前一帧语音频帧的信号类型不为清音,则将上述当前语音频帧的频谱对参数作为上述当前语音频帧的后处理的频谱对参数,或基于上述当前语音频帧的频谱对参数获得上述当前语音频帧的后处理的频谱对参数;

或者,

若上述当前语音频帧为正常解码帧并且上述当前语音频帧的前一帧语音频帧为冗余解码帧,并且上述当前语音频帧的信号类型为清音,并且上述当前语音频帧的前一帧语音频帧的信号类型不为清音,则基于当前语音频帧的频谱对参数和上述当前语音频帧的前一帧语音频帧的频谱对参数获得上述当前语音频帧的后处理的频谱对参数;

或者,

若上述当前语音频帧为冗余解码帧,且上述当前语音频帧的信号类型不为清音,并且上述当前语音频帧的后一帧语音频帧的信号类型为清音,则将上述当前语音频帧的前一帧语音频帧的频谱对参数作为上述当前语音频帧的后处理的频谱对参数,或基于上述当前语音频帧的前一帧语音频帧的频谱对参数获得上述当前语音频帧的后处理的频谱对参数;

或者,

若上述当前语音频帧为冗余解码帧,且上述当前语音频帧的信号类型不为清音,并且上述当前语音频帧的后一帧语音频帧的信号类型为清音,则基于上述当前语音频帧的频谱对参数和上述当前语音频帧的前一帧语音频帧的频谱对参数,获得上述当前语音频帧的后处理的频谱对参数;

或者,

若上述当前语音频帧为冗余解码帧且上述当前语音频帧的信号类型不为清音,并且上述当前语音频帧的后一帧语音频帧中的子帧的自适应码书增益的最大值小于或等于第一阈值,并且上述当前语音频帧的前一帧语音频帧的谱倾斜因子小于或等于第二阈值,则将上述当前语音频帧的前一帧语音频帧的频谱对参数作为上述当前语音频帧的后处理的频谱对参数,或基于上述当前语音频帧的前一帧语音频帧的频谱对参数获得上述当前语音频帧的后处理的频谱对参数;

或者,

若上述当前语音频帧为冗余解码帧且上述当前语音频帧的信号类型不为清音,并且上述当前语音频帧的后一帧语音频帧中的子帧的自适应码书增益的最大值小于或等于第一阈值,并且上述当前语音频帧的前一帧语音频帧的谱倾斜因子小于或等于第二阈值,则基于当前语音频帧的频谱对参数和上述当前语音频帧的前一帧语音频帧的频谱对参数,获得上述当前语音频帧的后处理的频谱对参数;

或者,

若上述当前语音频帧为冗余解码帧,并且上述当前语音频帧的信号类型不为清音,并且上述当前语音频帧的后一帧语音频帧为清音,并且上述当前语音频帧的后一帧语音频帧中的子帧的自适应码书增益的最大值小于或等于第三阈值,并且上述当前语音频帧的前一帧语音频帧的谱倾斜因子小于或等于第四阈值,则将上述当前语音频帧的前一帧语音频帧的频谱对参数作为上述当前语音频帧的后处理的频谱对参数,或基于上述当前语音频帧的前一帧语音频帧的频谱对参数获得上述当前语音频帧的后处理的频谱对参数;

或者,

若上述当前语音频帧为冗余解码帧,并且上述当前语音频帧的信号类型不为清音,并且上述当前语音频帧的后一帧语音频帧的信号类型为清音,并且上述当前语音频帧的后一帧语音频帧中的子帧的自适应码书增益的最大值小于或者等于第三阈值,并且上述当前语音频帧的前一帧语音频帧的谱倾斜因子小于或者等于第四阈值,则基于上述当前语音频帧的频谱对参数和上述当前语音频帧的前一帧语音频帧的频谱对参数,获得上述当前语音频帧的后处理的频谱对参数。

在本发明一些实施例中,在上述基于上述当前语音频帧的频谱对参数和上述当前语音频帧的前一帧语音频帧的频谱对参数,获得上述当前语音频帧的后处理的频谱对参数的方面,

上述后处理单元320具体用于,通过如下公式,基于上述当前语音频帧的频谱对参数和上述当前语音频帧的前一帧语音频帧的频谱对参数,获得上述当前语音频帧的后处理的频谱对参数:

lsp[k]=α*lsp_old[k]+β*lsp_mid[k]+δ*lsp_new[k]0≤k≤l;

其中,上述lsp[k]为上述当前语音频帧的后处理的频谱对参数,上述lsp_old[k]为上述当前语音频帧的前一帧语音频帧的频谱对参数,上述lsp_mid[k]为上述当前语音频帧的频谱对参数的中间值,上述lsp_new[k]为上述当前语音频帧的频谱对参数,上述l为频谱对参数的阶数,其中,上述α为上述当前语音频帧的前一帧语音频帧的频谱对参数的权重,上述β为上述当前语音频帧的频谱对参数的中间值的权重,上述δ为上述当前语音频帧的频谱对参数的权重,α≥0,β≥0,δ≥0,且α+β+δ=1,

其中,若上述当前语音频帧为正常解码帧,并且上述当前语音频帧的前一帧语音频帧为冗余解码帧,则上述α等于0或上述α小于或等于第五阈值;

或者,若上述当前语音频帧为冗余解码帧,则上述β等于0或上述β小于或等于第六阈值;

或者,若上述当前语音频帧为冗余解码帧,上述δ等于0或上述δ小于或等于第七阈值;

或者,若上述当前语音频帧为冗余解码帧,则上述β等于0或上述β小于或等于第六阈值,并且上述δ等于0或上述δ小于或等于第七阈值。

在本发明另一些实施例中,在上述基于上述当前语音频帧的频谱对参数和上述当前语音频帧的前一帧语音频帧的频谱对参数,获得上述当前语音频帧的后处理的频谱对参数的方面,

上述后处理单元320具体用于,通过如下公式,基于上述当前语音频帧的频谱对参数和上述当前语音频帧的前一帧语音频帧的频谱对参数,获得上述当前语音频帧的后处理的频谱对参数:

lsp[k]=α*lsp_old[k]+δ*lsp_new[k]0≤k≤l;

其中,上述lsp[k]为上述当前语音频帧的后处理的频谱对参数,上述lsp_old[k]为上述当前语音频帧的前一帧语音频帧的频谱对参数,上述lsp_new[k]为上述当前语音频帧的频谱对参数,上述l为频谱对参数的阶数,上述α为上述当前语音频帧的前一帧语音频帧的频谱对参数的权重,上述δ为上述当前语音频帧的频谱对参数的权重,α≥0,δ≥0,且α+δ=1,

其中,若上述当前语音频帧为正常解码帧,并且上述当前语音频帧的前一帧语音频帧为冗余解码帧,则上述α等于0或上述α小于或等于第五阈值;

或者,若上述当前语音频帧为冗余解码帧,则上述δ等于0或上述δ小于或等于第七阈值。

其中,对于第五阈值、第六阈值和第七阈值,可以根据应用的环境或场景的不同而设置不同的值。例如,第五阈值的取值可接近于0,例如第五阈值可等于0.001、0.002、0.01或0.1或其它接近于0的值。其中,第六阈值的取值可接近于0,如第六阈值可等于0.001、0.002、0.01或0.1或其它接近于0的值。第七阈值的取值可接近于0,例如第七阈值可等于0.001、0.002、0.01或0.1或其它接近于0的值。

其中,对于第一阈值、第二阈值、第三阈值和第四阈值,可以根据应用的环境或场景的不同而设置不同的值。

例如第一阈值可以设置为0.9,0.8,0.85,0.7,0.89或0.91等。

例如第二阈值可以设置为0.16,0.15,0.165,0.1,0.161或0.159等。

例如第三阈值可以设置为0.9,0.8,0.85,0.7,0.89或0.91等。

例如第四阈值可以设置为0.16,0.15,0.165,0.1,0.161或0.159等。

其中,第一阈值可等于或不等于第三阈值。第二阈值可等于或不等于第四阈值。

在本发明一些实施例中,上述后处理单元320具体用于,当前语音频帧的语音频解码参数包括上述当前语音频帧的自适应码书增益,根据x帧语音频帧的信号类型、代数码书增益和自适应码书增益中的至少一种,对上述当前语音频帧的自适应码书增益进行后处理,以得到上述当前语音频帧的后处理的自适应码书增益。

例如,在根据x帧语音频帧的信号类型、代数码书增益和自适应码书增益中的至少一种,对上述当前语音频帧的自适应码书增益进行后处理的方面,上述后处理单元具体用于,

若上述当前语音频帧为冗余解码帧并且上述当前语音频帧的信号类型不为清音,并且上述当前语音频帧的后两帧语音频帧之中的至少一帧语音频帧的信号类型为清音,并且上述当前语音频帧中的当前子帧的代数码书增益大于或等于上述当前语音频帧的前一帧语音频帧的代数码书增益,则衰减上述当前子帧的自适应码书增益;

或者,

若上述当前语音频帧为冗余解码帧,并且上述当前语音频帧的信号类型不为清音,并且上述当前语音频帧的后两帧语音频帧之中的至少一帧语音频帧的信号类型为清音,并且上述当前语音频帧中的当前子帧的代数码书增益大于或等于上述当前子帧的前一子帧的代数码书增益,则衰减上述当前子帧的自适应码书增益;

或者,

若上述当前语音频帧为冗余解码帧或上述当前语音频帧为正常解码帧且上述当前语音频帧的前一帧语音频帧为冗余解码帧,并且若上述当前语音频帧的信号类型为普通语音,并且上述当前语音频帧的后一帧语音频帧的信号类型为浊音,并且上述当前语音频帧中的某子帧的代数码书增益大于或等于上述某子帧的前一子帧的代数码书增益,则基于上述当前语音频帧的当前子帧和上述当前子帧的相邻子帧的代数码书增益的比值、上述当前语音频帧的当前子帧和上述当前子帧的相邻子帧的自适应码书增益的比值和上述当前语音频帧的当前子帧和上述当前语音频帧的前一帧语音频帧的代数码书增益的比值之中的至少一个,调整上述当前语音频帧的当前子帧的自适应码书增益;

或者,

若上述当前语音频帧为冗余解码帧或者上述当前语音频帧为正常解码帧且上述当前语音频帧的前一帧语音频帧为冗余解码帧,并且若上述当前语音频帧的信号类型为普通语音,并且上述当前语音频帧的后一帧语音频帧的信号类型为浊音,并且上述当前语音频帧中的某子帧的代数码书增益大于或者等于上述当前语音频帧的前一帧语音频帧的代数码书增益,则基于上述当前语音频帧的当前子帧和上述当前子帧的相邻子帧的代数码书增益的比值、上述当前语音频帧的当前子帧和上述当前子帧的相邻子帧的自适应码书增益的比值和上述当前语音频帧的当前子帧和上述当前语音频帧的前一帧语音频帧的代数码书增益的比值之中的至少一个,调整上述当前语音频帧的当前子帧的自适应码书增益;

或者,

若上述当前语音频帧为冗余解码帧或上述当前语音频帧为正常解码帧且上述当前语音频帧的前一帧语音频帧为冗余解码帧,且若上述当前语音频帧为浊音,并且上述当前语音频帧的前一帧语音频帧的信号类型为普通语音,并且上述当前语音频帧中的某子帧的代数码书增益大于或等于上述某子帧的前一子帧的代数码书增益,则基于上述当前语音频帧的当前子帧和上述当前子帧的相邻子帧的代数码书增益的比值、上述当前语音频帧的当前子帧和上述当前子帧的相邻子帧的自适应码书增益的比值和上述当前语音频帧的当前子帧和上述当前语音频帧的前一帧语音频帧的代数码书增益的比值中的至少一个,调整上述当前语音频帧的当前子帧的自适应码书增益;

或者,

若上述当前语音频帧为冗余解码帧或者上述当前语音频帧为正常解码帧并且上述当前语音频帧的前一帧语音频帧为冗余解码帧,并且若上述当前语音频帧的信号类型为浊音,并且上述当前语音频帧的前一帧语音频帧的信号类型为普通语音,并且上述当前语音频帧中的某子帧的代数码书增益大于或等于上述当前语音频帧的前一帧语音频帧的代数码书增益,则基于上述当前语音频帧的当前子帧和上述当前子帧的相邻子帧的代数码书增益的比值、上述当前语音频帧的当前子帧和上述当前子帧的相邻子帧的自适应码书增益的比值和上述当前语音频帧的当前子帧和上述当前语音频帧的前一帧语音频帧的代数码书增益的比值之中的至少一个,调整上述当前语音频帧的当前子帧的自适应码书增益。

在本发明一些实施例中,上述后处理单元320具体用于,当上述当前语音频帧的语音频解码参数包括上述当前语音频帧的代数码书,根据x帧语音频帧的信号类型、代数码书和谱倾斜因子的至少一种,对上述当前语音频帧的代数码书进行后处理,以得到上述当前语音频帧的后处理的代数码书。

例如,在上述根据x帧语音频帧的信号类型、代数码书和谱倾斜因子的至少一种,对上述当前语音频帧的代数码书进行后处理的方面,上述后处理单元320具体用于,若上述当前语音频帧为冗余解码帧,且上述当前语音频帧的后一帧语音频帧的信号类型为清音,且上述当前语音频帧的前一帧语音频帧的谱倾斜因子小于或等于第八阈值,并且上述当前语音频帧的其中一个子帧的代数码书为零或小于或等于第九阈值,则将上述当前语音频帧的前一子帧的代数码书或随机噪声作为上述当前子帧的代数码书。

其中,对于第八阈值和第九阈值,可以根据应用的环境或场景的不同而设置不同的值。

例如第八阈值可以设置为0.16,0.15,0.165,0.1,0.161或0.159等。

例如第九阈值可以设置为0.1,0.09,0.11,0.07,0.101或0.099或其它接近于0的值等。

其中,第八阈值可等于或不等于第二阈值。

在本发明的一些实施例中,上述后处理单元320具体用于,当上述当前语音频帧的语音频解码参数包括上述当前语音频帧的频带扩展包络,根据x帧语音频帧的信号类型、频带扩展包络和谱倾斜因子中的至少一种,对上述当前语音频帧的频带扩展包络进行后处理,以得到上述当前语音频帧的后处理的频带扩展包络。

例如,在上述根据x帧语音频帧的信号类型、频带扩展包络和谱倾斜因子中的至少一种,对上述当前语音频帧的频带扩展包络进行后处理,以得到上述当前语音频帧的后处理的频带扩展包络的方面,上述后处理单元具体用于,

若上述当前语音频帧的前一帧语音频帧为正常解码帧,且上述当前语音频帧的前一帧语音频帧和当前语音频帧的后一帧语音频帧的信号类型相同,则基于上述当前语音频帧的前一帧语音频帧的频带扩展包络和上述当前语音频帧的频带扩展包络,得到上述当前语音频帧的后处理的频带扩展包络;

或者,

若上述当前语音频帧为冗余解码的预测模式,则基于上述当前语音频帧的前一帧语音频帧的频带扩展包络和上述当前语音频帧的频带扩展包络,得到上述当前语音频帧的后处理的频带扩展包络;

或者,

若上述当前语音频帧的信号类型不是清音,且上述当前语音频帧的后一帧语音频帧的信号类型为清音,且上述当前语音频帧的前一帧语音频帧的谱倾斜因子小于或等于第十阈值,则根据上述当前语音频帧的前一帧语音频帧的频带扩展包络或者谱倾斜因子,修正上述当前语音频帧的频带扩展包络,以得到上述当前语音频帧的后处理的频带扩展包络。

可根据应用的环境或场景的不同而设置第十阈值的不同的取值。例如第十阈值可以设置为0.16,0.15,0.165,0.1,0.161或0.159等。

例如,在上述基于上述当前语音频帧的前一帧语音频帧的频带扩展包络和上述当前语音频帧的频带扩展包络,得到上述当前语音频帧的后处理的频带扩展包络包括的方面,上述后处理单元320具体用于,具体通过如下公式,基于上述当前语音频帧的前一帧语音频帧的频带扩展包络和上述当前语音频帧的频带扩展包络,得到上述当前语音频帧的后处理的频带扩展包络:

gainframe=fac1*gainframe_old+fac2*gainframe_new;

其中,上述gainframe为上述当前语音频帧的后处理的频带扩展包络,上述gainframe_old为上述当前语音频帧的前一帧语音频帧的频带扩展包络,上述gainframe_new为上述当前语音频帧的频带扩展包络,上述fac1为上述当前语音频帧的前一帧语音频帧的频带扩展包络的权重,上述fac2为上述当前语音频帧的频带扩展包络的权重;fac1≥0,fac2≥0,且fac1+fac2=1。

又例如,上述后处理单元320修正上述当前语音频帧的频带扩展包络的修正因子与上述当前语音频帧的前一帧语音频帧的谱倾斜因子成反比,与上述当前语音频帧的前一帧语音频帧的频带扩展包络与上述当前语音频帧的频带扩展包络的比值成正比。

在本发明一些实施例中,上述后处理单元320具体用于,当上述当前语音频帧的语音频解码参数包括上述当前语音频帧的基因周期,根据x帧语音频帧的信号类型和基因周期中的至少一种,对上述当前语音频帧的基因周期进行后处理,以得到上述当前语音频帧的后处理的基因周期。

可以理解的是,本实施例的解码器300的各功能模块的功能可根据上述方法实施例中的方法具体实现,其具体实现过程可以参照上述方法实施例的相关描述,此处不再赘述。其中,解码器300可为任何需要输出语音的装置,如笔记本电脑,平板电脑、个人电脑、手机等设备。

从上可知,本实施例中,对于当前语音频帧为冗余解码帧或者上述当前语音频帧的前一帧语音频帧为冗余解码帧的场景,解码端获得当前语音频帧的解码参数后,根据x帧语音频帧的语音频参数对当前语音频帧的语音频解码参数进行后处理,以得到上述当前语音频帧的后处理的语音频解码参数,上述x帧语音频帧包括上述当前语音频帧的前m帧语音频帧和/或上述当前语音频帧的后n帧语音频帧,并使用当前语音频帧的后处理的音频解码参数恢复当前语音频帧的语音频信号,这样有利于解码信号在冗余解码帧和正常解码帧之间或在冗余解码帧和fec恢复帧之间过渡时得到稳定质量,从而提高输出的语音频信号的质量。

从上可知,本发明的一些实施例中,在清音语音频帧和非清音语音频帧之间过渡(例如,当前语音频帧的信号类型为清音并且为冗余解码帧时,而当前语音频帧的前一帧语音频帧或后一帧语音频帧的信号类型为非清音并且为正常解码帧,或者当前语音频帧的信号类型为非清音且为正常解码帧,当前语音频帧的前一帧语音频帧或后一帧语音频帧的信号类型为清音并且为冗余解码帧)时,对当前语音频帧的语音频解码参数进行后处理,从而有利于去掉清音语音频帧和非清音语音频帧的帧间过渡时的咔咔声(click)现象,从而提高输出的语音频信号的质量。

本发明的另一些实施例中,在普通语音频帧与浊音语音频帧之间过渡(当前帧为普通语音帧并且为冗余解码帧时,而当前语音频帧的前一帧语音频帧或后一帧语音频帧的信号类型为浊音并且为正常解码帧,或当前语音频帧的信号类型为浊音且为正常解码帧,当前语音频帧的前一帧语音频帧或后一帧语音频帧的信号类型为普通语音并且为冗余解码帧)时,对当前语音频帧的语音频解码参数进行后处理,从而有利于纠正普通语音帧和浊音帧之间过渡时的能量不稳定现象,从而提高输出的语音频信号的质量。

本发明的又一些实施例中,在当前语音频帧为冗余解码帧,并且当前语音频帧的信号类型不是清音,且当前语音频帧的后一帧语音频帧的信号类型是清音时,对当前帧的频带扩展包络进行调整,从而修正时域频带扩展的能量不稳定现象,提高输出的语音频信号的质量。

参见图4,图4为本发明实施例提供的解码器400的示意图,解码器400可包括至少一个总线401、与总线401相连的至少一个处理器402以及与总线401相连的至少一个存储器403。

其中,处理器402通过总线401,调用存储器403中存储的代码以用于获取当前语音频帧的语音频解码参数,其中,上述当前语音频帧为冗余解码帧或者上述当前语音频帧的前一帧语音频帧为冗余解码帧;根据x帧语音频帧的语音频参数对上述当前语音频帧的语音频解码参数进行后处理,以得到上述当前语音频帧的后处理的语音频解码参数,上述x帧语音频帧包括上述当前语音频帧的前m帧语音频帧和/或上述当前语音频帧的后n帧语音频帧,上述m和n为正整数;使用上述当前语音频帧的后处理的语音频解码参数恢复上述当前语音频帧的语音频信号。

其中,语音频解码参数可包括如下参数的至少一种:

频带扩展包络、自适应码书增益(gain_pit)、代数码书、基因周期、谱倾斜因子和频谱对参数等。

其中,语音频参数可包括语音频解码参数和信号类型等。

其中,语音频帧的信号类型可以是清音(unvoiced)、浊音(voiced)或普通语音(generic)、过渡语音(transition)或静默音(inactive)等等。

其中,频谱对参数例如可以是线谱对(lsp)参数和导抗频谱对(isp)参数中的至少一个。

其中,当前语音频帧的前m帧语音频帧是指,时域上在当前语音频帧之前且与当前语音频帧紧邻的m帧语音频帧。

例如,m可等于1、2或3其它值,其中,当m=1时,当前语音频帧的前m帧语音频帧即为当前语音频帧的前一帧语音频帧,而当前语音频帧的前一帧语音频帧与当前语音频帧是紧邻的两个语音频帧,当m=2时,当前语音频帧的前m帧语音频帧即为当前语音频帧的前一帧语音频帧以及当前语音频帧的前一帧语音频帧的前一帧语音频帧,而当前语音频帧的前一帧语音频帧以及当前语音频帧的前一帧语音频帧的前一帧语音频帧与当前语音频帧是紧邻的三帧语音频帧,以此类推。

其中,当前语音频帧的后n帧语音频帧是指,时域上在当前语音频帧之后且与当前语音频帧紧邻的n帧语音频帧。

例如,n可等于1、2、3或4其它值,其中,当n=1时,当前语音频帧的后n帧语音频帧即为当前语音频帧的后一帧语音频帧,而当前语音频帧的后一帧语音频帧与当前语音频帧是紧邻的两个语音频帧,当n=2时,当前语音频帧的后n帧语音频帧即为当前语音频帧的后一帧语音频帧以及当前语音频帧的后一帧语音频帧的后一帧语音频帧,而当前语音频帧的后一帧语音频帧以及当前语音频帧的后一帧语音频帧的后一帧语音频帧与当前语音频帧是紧邻的三个语音频帧,以此类推。

可以理解,本发明实施例处理器402调用存储器403中存储的代码可用于对当前语音频帧的频带扩展包络、自适应码书增益、代数码书、基因周期和频谱对参数之中的至少1个语音频解码参数进行后处理,具体选择几个参数,选择哪几个参数进行后处理可以根据应用的场景和环境进行选择,本发明实施例并不做限定。

对于不同的语音频解码参数可能进行不同的后处理,例如,对当前语音频帧的频谱对参数进行的后处理,可以是使用当前语音频帧的频谱对参数和当前语音频帧的前一帧语音频帧的频谱对参数做自适应的加权,以获得当前语音频帧的后处理的频谱对参数。对当前语音频帧的自适应码书增益的后处理可以是对自适应码书增益进行调整,如衰减等。

本发明实施例不对具体的后处理方式进行限定,具体进行何种后处理可以根据需要或者根据应用的环境和场景进行设定。

在本发明的一些实施例中,上述当前语音频帧的语音频解码参数包括上述当前语音频帧的频谱对参数,其中,在上述根据x帧语音频帧的语音频参数对上述当前语音频帧的语音频解码参数进行后处理,以得到上述当前语音频帧的后处理的语音频解码参数的方面,处理器402调用存储器403中存储的代码可具体用于:根据x帧语音频帧的信号类型、谱倾斜因子、自适应码书增益和频谱对参数中的至少一种,对上述当前语音频帧的频谱对参数进行后处理,以得到上述当前语音频帧的后处理的频谱对参数。

举例来说,在上述根据x帧语音频帧的信号类型、谱倾斜因子、自适应码书增益和频谱对参数中的至少一种,对上述当前语音频帧的频谱对参数进行后处理,以得到上述当前语音频帧的后处理的频谱对参数的方面,处理器402调用存储器403中存储的代码可具体用于:

若上述当前语音频帧为正常解码帧且上述当前语音频帧的前一帧语音频帧为冗余解码帧,并且上述当前语音频帧的信号类型为清音,且上述当前语音频帧的前一帧语音频帧的信号类型不为清音,则将上述当前语音频帧的频谱对参数作为上述当前语音频帧的后处理的频谱对参数,或基于上述当前语音频帧的频谱对参数获得上述当前语音频帧的后处理的频谱对参数;

或者,

若上述当前语音频帧为正常解码帧并且上述当前语音频帧的前一帧语音频帧为冗余解码帧,并且上述当前语音频帧的信号类型为清音,并且上述当前语音频帧的前一帧语音频帧的信号类型不为清音,则基于当前语音频帧的频谱对参数和上述当前语音频帧的前一帧语音频帧的频谱对参数获得上述当前语音频帧的后处理的频谱对参数;

或者,

若上述当前语音频帧为冗余解码帧,且上述当前语音频帧的信号类型不为清音,并且上述当前语音频帧的后一帧语音频帧的信号类型为清音,则将上述当前语音频帧的前一帧语音频帧的频谱对参数作为上述当前语音频帧的后处理的频谱对参数,或基于上述当前语音频帧的前一帧语音频帧的频谱对参数获得上述当前语音频帧的后处理的频谱对参数;

或者,

若上述当前语音频帧为冗余解码帧,且上述当前语音频帧的信号类型不为清音,并且上述当前语音频帧的后一帧语音频帧的信号类型为清音,则基于上述当前语音频帧的频谱对参数和上述当前语音频帧的前一帧语音频帧的频谱对参数,获得上述当前语音频帧的后处理的频谱对参数;

或者,

若上述当前语音频帧为冗余解码帧且上述当前语音频帧的信号类型不为清音,并且上述当前语音频帧的后一帧语音频帧中的子帧的自适应码书增益的最大值小于或等于第一阈值,并且上述当前语音频帧的前一帧语音频帧的谱倾斜因子小于或等于第二阈值,则将上述当前语音频帧的前一帧语音频帧的频谱对参数作为上述当前语音频帧的后处理的频谱对参数,或基于上述当前语音频帧的前一帧语音频帧的频谱对参数获得上述当前语音频帧的后处理的频谱对参数;

或者,

若上述当前语音频帧为冗余解码帧且上述当前语音频帧的信号类型不为清音,并且上述当前语音频帧的后一帧语音频帧中的子帧的自适应码书增益的最大值小于或等于第一阈值,并且上述当前语音频帧的前一帧语音频帧的谱倾斜因子小于或等于第二阈值,则基于当前语音频帧的频谱对参数和上述当前语音频帧的前一帧语音频帧的频谱对参数,获得上述当前语音频帧的后处理的频谱对参数;

或者,

若上述当前语音频帧为冗余解码帧,并且上述当前语音频帧的信号类型不为清音,并且上述当前语音频帧的后一帧语音频帧为清音,并且上述当前语音频帧的后一帧语音频帧中的子帧的自适应码书增益的最大值小于或等于第三阈值,并且上述当前语音频帧的前一帧语音频帧的谱倾斜因子小于或等于第四阈值,则将上述当前语音频帧的前一帧语音频帧的频谱对参数作为上述当前语音频帧的后处理的频谱对参数,或基于上述当前语音频帧的前一帧语音频帧的频谱对参数获得上述当前语音频帧的后处理的频谱对参数;

或者,

若上述当前语音频帧为冗余解码帧,并且上述当前语音频帧的信号类型不为清音,并且上述当前语音频帧的后一帧语音频帧的信号类型为清音,并且上述当前语音频帧的后一帧语音频帧中的子帧的自适应码书增益的最大值小于或者等于第三阈值,并且上述当前语音频帧的前一帧语音频帧的谱倾斜因子小于或者等于第四阈值,则基于上述当前语音频帧的频谱对参数和上述当前语音频帧的前一帧语音频帧的频谱对参数,获得上述当前语音频帧的后处理的频谱对参数。

其中,上述基于上述当前语音频帧的频谱对参数和上述当前语音频帧的前一帧语音频帧的频谱对参数,获得上述当前语音频帧的后处理的频谱对参数的方式可以是多种多样的。

例如,在上述基于上述当前语音频帧的频谱对参数和上述当前语音频帧的前一帧语音频帧的频谱对参数,获得上述当前语音频帧的后处理的频谱对参数的方面,处理器402调用存储器403中存储的代码可具体用于:具体通过如下公式,基于上述当前语音频帧的频谱对参数和上述当前语音频帧的前一帧语音频帧的频谱对参数,获得上述当前语音频帧的后处理的频谱对参数:

lsp[k]=α*lsp_old[k]+β*lsp_mid[k]+δ*lsp_new[k]0≤k≤l;

其中,上述lsp[k]为上述当前语音频帧的后处理的频谱对参数,上述lsp_old[k]为上述当前语音频帧的前一帧语音频帧的频谱对参数,上述lsp_mid[k]为上述当前语音频帧的频谱对参数的中间值,上述lsp_new[k]为上述当前语音频帧的频谱对参数,上述l为频谱对参数的阶数,其中,上述α为上述当前语音频帧的前一帧语音频帧的频谱对参数的权重,上述β为上述当前语音频帧的频谱对参数的中间值的权重,上述δ为上述当前语音频帧的频谱对参数的权重,α≥0,β≥0,δ≥0,且α+β+δ=1,

其中,若上述当前语音频帧为正常解码帧,并且上述当前语音频帧的前一帧语音频帧为冗余解码帧,则上述α等于0或上述α小于或等于第五阈值;或者,若上述当前语音频帧为冗余解码帧,则上述β等于0或上述β小于或等于第六阈值;或者,若上述当前语音频帧为冗余解码帧,上述δ等于0或上述δ小于或等于第七阈值;或者若上述当前语音频帧为冗余解码帧,则上述β等于0或者上述β小于或等于第六阈值,并且上述δ等于0或上述δ小于或者等于第七阈值。

又例如,在上述基于上述当前语音频帧的频谱对参数和上述当前语音频帧的前一帧语音频帧的频谱对参数,获得上述当前语音频帧的后处理的频谱对参数的方面,处理器402调用存储器403中存储的代码可具体用于:具体通过如下公式,基于上述当前语音频帧的频谱对参数和上述当前语音频帧的前一帧语音频帧的频谱对参数,获得上述当前语音频帧的后处理的频谱对参数:

lsp[k]=α*lsp_old[k]+δ*lsp_new[k]0≤k≤l;

其中,上述lsp[k]为上述当前语音频帧的后处理的频谱对参数,上述lsp_old[k]为上述当前语音频帧的前一帧语音频帧的频谱对参数,上述lsp_new[k]为上述当前语音频帧的频谱对参数,上述l为频谱对参数的阶数,上述α为上述当前语音频帧的前一帧语音频帧的频谱对参数的权重,上述δ为上述当前语音频帧的频谱对参数的权重,α≥0,δ≥0,且α+δ=1,

其中,若上述当前语音频帧为正常解码帧并且上述当前语音频帧的前一帧语音频帧为冗余解码帧,则上述α等于0或者上述α小于或等于第五阈值;或者,若上述当前语音频帧为冗余解码帧,则上述δ等于0或上述δ小于或等于第七阈值。

其中,对于第五阈值、第六阈值和第七阈值,可以根据应用的环境或场景的不同而设置不同的值。例如,第五阈值的取值可接近于0,例如第五阈值可等于0.001、0.002、0.01或0.1或其它接近于0的值。其中,第六阈值的取值可接近于0,如第六阈值可等于0.001、0.002、0.01或0.1或其它接近于0的值。第七阈值的取值可接近于0,例如第七阈值可等于0.001、0.002、0.01或0.1或其它接近于0的值。

其中,对于第一阈值、第二阈值、第三阈值和第四阈值,可以根据应用的环境或场景的不同而设置不同的值。

例如第一阈值可以设置为0.9,0.8,0.85,0.7,0.89或0.91等。

例如第二阈值可以设置为0.16,0.15,0.165,0.1,0.161或0.159等。

例如第三阈值可以设置为0.9,0.8,0.85,0.7,0.89或0.91等。

例如第四阈值可以设置为0.16,0.15,0.165,0.1,0.161或0.159等。

其中,第一阈值可等于或不等于第三阈值。第二阈值可等于或不等于第四阈值。

在本发明另一些实施例中,上述当前语音频帧的语音频解码参数包括上述当前语音频帧的自适应码书增益;其中,在上述根据x帧语音频帧的语音频参数对上述当前语音频帧的语音频解码参数进行后处理,以得到上述当前语音频帧的后处理的语音频解码参数的方面,处理器402调用存储器403中存储的代码可具体用于:根据x帧语音频帧的信号类型、代数码书增益和自适应码书增益中的至少一种,对上述当前语音频帧的自适应码书增益进行后处理,以得到上述当前语音频帧的后处理的自适应码书增益。

举例来说,在上述根据x帧语音频帧的信号类型、代数码书增益和自适应码书增益中的至少一种,对上述当前语音频帧的自适应码书增益进行后处理的方面,处理器402调用存储器403中存储的代码可具体用于:

若上述当前语音频帧为冗余解码帧并且上述当前语音频帧的信号类型不为清音,并且上述当前语音频帧的后两帧语音频帧之中的至少一帧语音频帧的信号类型为清音,并且上述当前语音频帧中的当前子帧的代数码书增益大于或等于上述当前语音频帧的前一帧语音频帧的代数码书增益(例如,上述当前语音频帧中的当前子帧的代数码书增益为上述当前语音频帧的前一帧语音频帧的代数码书增益的1倍、1.5倍、2倍、2.5倍、3倍、3.4倍、4倍或其它大于或等于1的倍数),则衰减上述当前子帧的自适应码书增益;

或者,

若上述当前语音频帧为冗余解码帧,并且上述当前语音频帧的信号类型不为清音,并且上述当前语音频帧的后一帧语音频帧和后一帧语音频帧的后一帧语音频帧之中的至少一帧语音频帧的信号类型为清音,并且上述当前语音频帧中的当前子帧的代数码书增益大于或等于上述当前子帧的前一子帧的代数码书增益(例如上述当前语音频帧中的当前子帧的代数码书增益是上述当前子帧的前一子帧的代数码书增益的1倍、1.5倍、2倍、2.5倍、3倍、3.4倍、4倍或其它大于或等于1的倍数),则衰减上述当前子帧的自适应码书增益;

或者,

若上述当前语音频帧为冗余解码帧或上述当前语音频帧为正常解码帧且上述当前语音频帧的前一帧语音频帧为冗余解码帧,并且若上述当前语音频帧的信号类型为普通语音,并且上述当前语音频帧的后一帧语音频帧的信号类型为浊音,并且上述当前语音频帧中的某子帧的代数码书增益大于或等于上述某子帧的前一子帧的代数码书增益(例如,上述当前语音频帧中的某子帧的代数码书增益可为上述某子帧的前一子帧的代数码书增益的1倍、1.5倍、2倍、2.5倍、3倍、3.4倍、4倍或其它大于或等于1的倍数),则基于上述当前语音频帧的当前子帧和上述当前子帧的相邻子帧的代数码书增益的比值、上述当前语音频帧的当前子帧和上述当前子帧的相邻子帧的自适应码书增益的比值和上述当前语音频帧的当前子帧和上述当前语音频帧的前一帧语音频帧的代数码书增益的比值之中的至少一个,调整(如增大或衰减)上述当前语音频帧的当前子帧的自适应码书增益(例如若上述当前语音频帧的当前子帧和上述当前子帧的相邻子帧的代数码书增益的比值大于或等于第十一阈值(第十一阈值例如可等于2、2.1、.2.5、3或其它值),上述当前语音频帧的当前子帧和上述当前子帧的相邻子帧的自适应码书增益的比值大于或等于第十二阈值(第十二阈值例如可等于1、1.1、1.5、2、2.1或其它值),且上述当前语音频帧的当前子帧和上述当前语音频帧的前一帧语音频帧的代数码书增益的比值小于或等于第十三阈值(第十三阈值例如可等于1、1.1、1.5、2或其它值),则可增大上述当前语音频帧的当前子帧的自适应码书增益);

或者,

若上述当前语音频帧为冗余解码帧或者上述当前语音频帧为正常解码帧且上述当前语音频帧的前一帧语音频帧为冗余解码帧,并且若上述当前语音频帧的信号类型为普通语音,并且上述当前语音频帧的后一帧语音频帧的信号类型为浊音,并且上述当前语音频帧中的某子帧的代数码书增益大于或者等于上述当前语音频帧的前一帧语音频帧的代数码书增益(上述当前语音频帧中的某子帧的代数码书增益为上述当前语音频帧的前一帧语音频帧的代数码书增益的1倍、1.5倍、2倍、2.5倍、3倍、3.4倍、4倍或其它大于或等于1的倍数),则基于上述当前语音频帧的当前子帧和上述当前子帧的相邻子帧的代数码书增益的比值、上述当前语音频帧的当前子帧和上述当前子帧的相邻子帧的自适应码书增益的比值和上述当前语音频帧的当前子帧和上述当前语音频帧的前一帧语音频帧的代数码书增益的比值之中的至少一个,调整(衰减或增大)上述当前语音频帧的当前子帧的自适应码书增益(例如,若上述当前语音频帧的当前子帧和上述当前子帧的相邻子帧的代数码书增益的比值大于或等于第十一阈值(第十一阈值例如可等于2、2.1、.2.5、3或其它值),上述当前语音频帧的当前子帧和上述当前子帧的相邻子帧的自适应码书增益的比值大于或等于第十二阈值(第十二阈值例如可等于1、1.1、1.5、2、2.1或其它值),且上述当前语音频帧的当前子帧和上述当前语音频帧的前一帧语音频帧的代数码书增益的比值小于或等于第十三阈值(第十三阈值例如可等于1、1.1、1.5、2或其它值),则可增大上述当前语音频帧的当前子帧的自适应码书增益);

或者,

若上述当前语音频帧为冗余解码帧或上述当前语音频帧为正常解码帧且上述当前语音频帧的前一帧语音频帧为冗余解码帧,且若上述当前语音频帧为浊音,并且上述当前语音频帧的前一帧语音频帧的信号类型为普通语音,并且上述当前语音频帧中的某子帧的代数码书增益大于或等于上述某子帧的前一子帧的代数码书增益(例如上述当前语音频帧中的某子帧的代数码书增益可为上述某子帧的前一子帧的代数码书增益的1倍、1.5倍、2倍、2.5倍、3倍、3.4倍、4倍或其它大于或等于1的倍数),则基于上述当前语音频帧的当前子帧和上述当前子帧的相邻子帧的代数码书增益的比值、上述当前语音频帧的当前子帧和上述当前子帧的相邻子帧的自适应码书增益的比值和上述当前语音频帧的当前子帧和上述当前语音频帧的前一帧语音频帧的代数码书增益的比值中的至少一个,调整(衰减或增大)上述当前语音频帧的当前子帧的自适应码书增益(例如若上述当前语音频帧的当前子帧和上述当前子帧的相邻子帧的代数码书增益的比值大于或等于第十一阈值(第十一阈值例如等于2、2.1、.2.5、3或其它值),上述当前语音频帧的当前子帧和上述当前子帧的相邻子帧的自适应码书增益的比值大于或等于第十二阈值(第十二阈值例如等于1、1.1、1.5或2、2.1或其它值),且上述当前语音频帧的当前子帧和上述当前语音频帧的前一帧语音频帧的代数码书增益的比值小于或等于第十三阈值(第十三阈值例如可等于1、1.1、1.5、2或其它值),则可增大上述当前语音频帧的当前子帧的自适应码书增益);

或者,

若上述当前语音频帧为冗余解码帧或者上述当前语音频帧为正常解码帧并且上述当前语音频帧的前一帧语音频帧为冗余解码帧,并且若上述当前语音频帧的信号类型为浊音,并且上述当前语音频帧的前一帧语音频帧的信号类型为普通语音,并且上述当前语音频帧中的某子帧的代数码书增益大于或等于上述当前语音频帧的前一帧语音频帧的代数码书增益(例如,上述当前语音频帧中的某子帧的代数码书增益为上述当前语音频帧的前一帧语音频帧的代数码书增益的1倍、1.5倍、2倍、2.5倍、3倍、3.4倍、4倍或其它大于或等于1的倍数),则基于上述当前语音频帧的当前子帧和上述当前子帧的相邻子帧的代数码书增益的比值、上述当前语音频帧的当前子帧和上述当前子帧的相邻子帧的自适应码书增益的比值和上述当前语音频帧的当前子帧和上述当前语音频帧的前一帧语音频帧的代数码书增益的比值之中的至少一个,调整(衰减或增大)上述当前语音频帧的当前子帧的自适应码书增益(例如若上述当前语音频帧的当前子帧和上述当前子帧的相邻子帧的代数码书增益的比值大于或等于第十一阈值(第十一阈值例如可等于2、2.1、.2.5、3或其它值),上述当前语音频帧的当前子帧和上述当前子帧的相邻子帧的自适应码书增益的比值大于或等于第十二阈值(第十二阈值例如可等于1、1.1、1.5、2、2.1或其它值),且上述当前语音频帧的当前子帧和上述当前语音频帧的前一帧语音频帧的代数码书增益的比值小于或等于第十三阈值(第十三阈值例如可等于1、1.1、1.5、2或其它值),则可增大上述当前语音频帧的当前子帧的自适应码书增益)。

在本发明的另一些实施例中,上述当前语音频帧的语音频解码参数包括上述当前语音频帧的代数码书,在上述根据x帧语音频帧的语音频参数对上述当前语音频帧的语音频解码参数进行后处理,以得到上述当前语音频帧的后处理的语音频解码参数的方面,处理器402调用存储器403中存储的代码可具体用于:根据x帧语音频帧的信号类型、代数码书和谱倾斜因子的至少一种,对上述当前语音频帧的代数码书进行后处理,以得到上述当前语音频帧的后处理的代数码书。

举例来说,在上述根据x帧语音频帧的信号类型、代数码书和谱倾斜因子的至少一种,对上述当前语音频帧的代数码书进行后处理的方面,处理器402调用存储器403中存储的代码可具体用于:

若上述当前语音频帧为冗余解码帧,并且上述当前语音频帧的后一帧语音频帧的信号类型为清音,并且上述当前语音频帧的前一帧语音频帧的谱倾斜因子小于或等于第八阈值,并且上述当前语音频帧的其中一个子帧的代数码书为零或小于或等于第九阈值,则将上述当前语音频帧的前一子帧的代数码书或随机噪声作为上述当前子帧的代数码书。

其中,对于第八阈值和第九阈值,可以根据应用的环境或场景的不同而设置不同的值。

例如第八阈值可以设置为0.16,0.15,0.165,0.1,0.161或0.159等。

例如第九阈值可以设置为0.1,0.09,0.11,0.07,0.101或0.099或其它接近于0的值等。

其中,第八阈值可等于或不等于第二阈值。

在本发明的另一些实施例中,上述当前语音频帧的语音频解码参数包括上述当前语音频帧的频带扩展包络,其中,在上述根据x帧语音频帧的语音频参数对上述当前语音频帧的语音频解码参数进行后处理,以得到上述当前语音频帧的后处理的语音频解码参数的方面,处理器402调用存储器403中存储的代码可具体用于:根据x帧语音频帧的信号类型、频带扩展包络和谱倾斜因子中的至少一种,对上述当前语音频帧的频带扩展包络进行后处理,以得到上述当前语音频帧的后处理的频带扩展包络。

举例来说,在上述根据x帧语音频帧的信号类型、频带扩展包络和谱倾斜因子中的至少一种,对上述当前语音频帧的频带扩展包络进行后处理,以得到上述当前语音频帧的后处理的频带扩展包络的方面,处理器402调用存储器403中存储的代码可具体用于:

若上述当前语音频帧的前一帧语音频帧为正常解码帧,且上述当前语音频帧的前一帧语音频帧和当前语音频帧的后一帧语音频帧的信号类型相同,则基于上述当前语音频帧的前一帧语音频帧的频带扩展包络和上述当前语音频帧的频带扩展包络,得到上述当前语音频帧的后处理的频带扩展包络;

或者,

若上述当前语音频帧为冗余解码的预测模式,则基于上述当前语音频帧的前一帧语音频帧的频带扩展包络和上述当前语音频帧的频带扩展包络,得到上述当前语音频帧的后处理的频带扩展包络;

或者,

若上述当前语音频帧的信号类型不是清音,且上述当前语音频帧的后一帧语音频帧的信号类型为清音,且上述当前语音频帧的前一帧语音频帧的谱倾斜因子小于或等于第十阈值,则根据上述当前语音频帧的前一帧语音频帧的频带扩展包络或者谱倾斜因子,修正上述当前语音频帧的频带扩展包络,以得到上述当前语音频帧的后处理的频带扩展包络。

可根据应用的环境或场景的不同而设置第十阈值的不同的取值。例如第十阈值可以设置为0.16,0.15,0.165,0.1,0.161或0.159等。

例如,在基于上述当前语音频帧的前一帧语音频帧的频带扩展包络和上述当前语音频帧的频带扩展包络,得到上述当前语音频帧的后处理的频带扩展包络的方面,处理器402调用存储器403中存储的代码可具体用于:具体通过如下公式,基于上述当前语音频帧的前一帧语音频帧的频带扩展包络和上述当前语音频帧的频带扩展包络,得到上述当前语音频帧的后处理的频带扩展包络:

gainframe=fac1*gainframe_old+fac2*gainframe_new。

其中,上述gainframe为上述当前语音频帧的后处理的频带扩展包络,上述gainframe_old为上述当前语音频帧的前一帧语音频帧的频带扩展包络,上述gainframe_new为上述当前语音频帧的频带扩展包络,上述fac1为上述当前语音频帧的前一帧语音频帧的频带扩展包络的权重,上述fac2为上述当前语音频帧的频带扩展包络的权重,fac1≥0,fac2≥0,且fac1+fac2=1。

又例如,上述修正上述当前语音频帧的频带扩展包络的修正因子与上述当前语音频帧的前一帧语音频帧的谱倾斜因子成反比,与上述当前语音频帧的前一帧语音频帧的频带扩展包络与上述当前语音频帧的频带扩展包络的比值成正比。

在本发明的另一些实施例中,上述当前语音频帧的语音频解码参数包括上述当前语音频帧的基因周期,在上述根据x帧语音频帧的语音频参数对上述当前语音频帧的语音频解码参数进行后处理,以得到上述当前语音频帧的后处理的语音频解码参数的方面,处理器402调用存储器403中存储的代码可具体用于:根据x帧语音频帧的信号类型和/或基因周期,对上述当前语音频帧的基因周期进行后处理(例如,可以根据x帧语音频帧的信号类型和/或基因周期,对上述当前语音频帧的基因周期进行增大或者衰减等后处理),以得到上述当前语音频帧的后处理的基因周期。

可以理解的是,本实施例的解码器400的各功能模块的功能可根据上述方法实施例中的方法具体实现,其具体实现过程可以参照上述方法实施例的相关描述,此处不再赘述。其中,解码器400可为任何需要输出语音的装置,如笔记本电脑,平板电脑、个人电脑、手机等设备。

从上可知,本实施例中,对于当前语音频帧为冗余解码帧或者上述当前语音频帧的前一帧语音频帧为冗余解码帧的场景,解码端获得当前语音频帧的解码参数后,根据x帧语音频帧的语音频参数对当前语音频帧的语音频解码参数进行后处理,以得到上述当前语音频帧的后处理的语音频解码参数,上述x帧语音频帧包括上述当前语音频帧的前m帧语音频帧和/或上述当前语音频帧的后n帧语音频帧,并使用当前语音频帧的后处理的音频解码参数恢复当前语音频帧的语音频信号,这样有利于解码信号在冗余解码帧和正常解码帧之间或在冗余解码帧和fec恢复帧之间过渡时得到稳定质量,从而提高输出的语音频信号的质量。

从上可知,本发明的一些实施例中,在清音语音频帧和非清音语音频帧之间过渡(例如,当前语音频帧的信号类型为清音并且为冗余解码帧时,而当前语音频帧的前一帧语音频帧或后一帧语音频帧的信号类型为非清音并且为正常解码帧,或者当前语音频帧的信号类型为非清音且为正常解码帧,当前语音频帧的前一帧语音频帧或后一帧语音频帧的信号类型为清音并且为冗余解码帧)时,对当前语音频帧的语音频解码参数进行后处理,从而有利于去掉清音语音频帧和非清音语音频帧的帧间过渡时的咔咔声(click)现象,从而提高输出的语音频信号的质量。

本发明的另一些实施例中,在普通语音频帧与浊音语音频帧之间过渡(当前帧为普通语音帧并且为冗余解码帧时,而当前语音频帧的前一帧语音频帧或后一帧语音频帧的信号类型为浊音并且为正常解码帧,或当前语音频帧的信号类型为浊音且为正常解码帧,当前语音频帧的前一帧语音频帧或后一帧语音频帧的信号类型为普通语音并且为冗余解码帧)时,对当前语音频帧的语音频解码参数进行后处理,从而有利于纠正普通语音帧和浊音帧之间过渡时的能量不稳定现象,从而提高输出的语音频信号的质量。

本发明的又一些实施例中,在当前语音频帧为冗余解码帧,并且当前语音频帧的信号类型不是清音,且当前语音频帧的后一帧语音频帧的信号类型是清音时,对当前帧的频带扩展包络进行调整,从而修正时域频带扩展的能量不稳定现象,提高输出的语音频信号的质量。

参见图5,图5是本发明的另一实施例提供的解码器500的结构框图。其中,解码器500可以包括:至少1个处理器501,至少1个网络接口504或其他用户接口503,存储器505,至少1个通信总线502。通信总线502用于实现这些组件之间的连接通信。其中,该解码器500可选的可以包含用户接口503,包括显示器(例如,触摸屏、lcd、crt、全息成像(holographic)或者投影(projector)等)、点击设备(例如鼠标、轨迹球(trackball)触感板或触摸屏等)、摄像头和/或拾音装置等。

其中,存储器502可以包括只读存储器和随机存取存储器,并向处理器501提供指令和数据。存储器502中的一部分还可以包括非易失性随机存取存储器(nvram)。

在一些实施方式中,存储器505存储了如下的元素,可执行模块或者数据结构,或者他们的子集,或者他们的扩展集:

操作系统5051,包含各种系统程序,用于实现各种基础业务以及处理基于硬件的任务。

应用程序模块5052,包含各种应用程序,用于实现各种应用业务。

应用程序模块5052中包括但不限于参数获取单元310、后处理单元320和恢复单元330等。

在本发明的实施例中,通过调用存储器505存储的程序或指令,处理器501可用于获取当前语音频帧的语音频解码参数,其中,上述当前语音频帧为冗余解码帧或者上述当前语音频帧的前一帧语音频帧为冗余解码帧;根据x帧语音频帧的语音频参数对上述当前语音频帧的语音频解码参数进行后处理,以得到上述当前语音频帧的后处理的语音频解码参数,上述x帧语音频帧包括上述当前语音频帧的前m帧语音频帧和/或上述当前语音频帧的后n帧语音频帧,上述m和n为正整数;使用上述当前语音频帧的后处理的语音频解码参数恢复上述当前语音频帧的语音频信号。

其中,语音频解码参数可包括如下参数的至少一种:

频带扩展包络、自适应码书增益(gain_pit)、代数码书、基因周期、谱倾斜因子和频谱对参数等。

其中,语音频参数可包括语音频解码参数和信号类型等。

其中,语音频帧的信号类型可以是清音(unvoiced)、浊音(voiced)或普通语音(generic)、过渡语音(transition)或静默音(inactive)等等。

其中,频谱对参数例如可以是线谱对(lsp)参数和导抗频谱对(isp)参数中的至少一个。

其中,当前语音频帧的前m帧语音频帧是指,时域上在当前语音频帧之前且与当前语音频帧紧邻的m帧语音频帧。

例如,m可等于1、2或3其它值,其中,当m=1时,当前语音频帧的前m帧语音频帧即为当前语音频帧的前一帧语音频帧,而当前语音频帧的前一帧语音频帧与当前语音频帧是紧邻的两个语音频帧,当m=2时,当前语音频帧的前m帧语音频帧即为当前语音频帧的前一帧语音频帧以及当前语音频帧的前一帧语音频帧的前一帧语音频帧,而当前语音频帧的前一帧语音频帧以及当前语音频帧的前一帧语音频帧的前一帧语音频帧与当前语音频帧是紧邻的三帧语音频帧,以此类推。

其中,当前语音频帧的后n帧语音频帧是指,时域上在当前语音频帧之后且与当前语音频帧紧邻的n帧语音频帧。

例如,n可等于1、2、3或4其它值,其中,当n=1时,当前语音频帧的后n帧语音频帧即为当前语音频帧的后一帧语音频帧,而当前语音频帧的后一帧语音频帧与当前语音频帧是紧邻的两个语音频帧,当n=2时,当前语音频帧的后n帧语音频帧即为当前语音频帧的后一帧语音频帧以及当前语音频帧的后一帧语音频帧的后一帧语音频帧,而当前语音频帧的后一帧语音频帧以及当前语音频帧的后一帧语音频帧的后一帧语音频帧与当前语音频帧是紧邻的三个语音频帧,以此类推。

可以理解,本实施例中,通过调用存储器505存储的程序或指令,处理器501可对当前语音频帧的频带扩展包络、自适应码书增益、代数码书、基因周期和频谱对参数之中的至少1个语音频解码参数进行后处理,具体选择几个参数,选择哪几个参数进行后处理可以根据应用的场景和环境进行选择,本发明实施例并不做限定。

对于不同的语音频解码参数可能进行不同的后处理,例如,对当前语音频帧的频谱对参数进行的后处理,可以是使用当前语音频帧的频谱对参数和当前语音频帧的前一帧语音频帧的频谱对参数做自适应的加权,以获得当前语音频帧的后处理的频谱对参数。对当前语音频帧的自适应码书增益的后处理可以是对自适应码书增益进行调整,如衰减等。

本发明实施例不对具体的后处理方式进行限定,具体进行何种后处理可以根据需要或者根据应用的环境和场景进行设定。

在本发明的一些实施例中,上述当前语音频帧的语音频解码参数包括上述当前语音频帧的频谱对参数,其中,在上述根据x帧语音频帧的语音频参数对上述当前语音频帧的语音频解码参数进行后处理,以得到上述当前语音频帧的后处理的语音频解码参数的方面,通过调用存储器505存储的程序或指令,处理器501可具体用于:根据x帧语音频帧的信号类型、谱倾斜因子、自适应码书增益和频谱对参数中的至少一种,对上述当前语音频帧的频谱对参数进行后处理,以得到上述当前语音频帧的后处理的频谱对参数。

举例来说,在上述根据x帧语音频帧的信号类型、谱倾斜因子、自适应码书增益和频谱对参数中的至少一种,对上述当前语音频帧的频谱对参数进行后处理,以得到上述当前语音频帧的后处理的频谱对参数的方面,通过调用存储器505存储的程序或指令,处理器501可具体用于:

若上述当前语音频帧为正常解码帧且上述当前语音频帧的前一帧语音频帧为冗余解码帧,并且上述当前语音频帧的信号类型为清音,且上述当前语音频帧的前一帧语音频帧的信号类型不为清音,则将上述当前语音频帧的频谱对参数作为上述当前语音频帧的后处理的频谱对参数,或基于上述当前语音频帧的频谱对参数获得上述当前语音频帧的后处理的频谱对参数;

或者,

若上述当前语音频帧为正常解码帧并且上述当前语音频帧的前一帧语音频帧为冗余解码帧,并且上述当前语音频帧的信号类型为清音,并且上述当前语音频帧的前一帧语音频帧的信号类型不为清音,则基于当前语音频帧的频谱对参数和上述当前语音频帧的前一帧语音频帧的频谱对参数获得上述当前语音频帧的后处理的频谱对参数;

或者,

若上述当前语音频帧为冗余解码帧,且上述当前语音频帧的信号类型不为清音,并且上述当前语音频帧的后一帧语音频帧的信号类型为清音,则将上述当前语音频帧的前一帧语音频帧的频谱对参数作为上述当前语音频帧的后处理的频谱对参数,或基于上述当前语音频帧的前一帧语音频帧的频谱对参数获得上述当前语音频帧的后处理的频谱对参数;

或者,

若上述当前语音频帧为冗余解码帧,且上述当前语音频帧的信号类型不为清音,并且上述当前语音频帧的后一帧语音频帧的信号类型为清音,则基于上述当前语音频帧的频谱对参数和上述当前语音频帧的前一帧语音频帧的频谱对参数,获得上述当前语音频帧的后处理的频谱对参数;

或者,

若上述当前语音频帧为冗余解码帧且上述当前语音频帧的信号类型不为清音,并且上述当前语音频帧的后一帧语音频帧中的子帧的自适应码书增益的最大值小于或等于第一阈值,并且上述当前语音频帧的前一帧语音频帧的谱倾斜因子小于或等于第二阈值,则将上述当前语音频帧的前一帧语音频帧的频谱对参数作为上述当前语音频帧的后处理的频谱对参数,或基于上述当前语音频帧的前一帧语音频帧的频谱对参数获得上述当前语音频帧的后处理的频谱对参数;

或者,若上述当前语音频帧为冗余解码帧且上述当前语音频帧的信号类型不为清音,并且上述当前语音频帧的后一帧语音频帧中的子帧的自适应码书增益的最大值小于或等于第一阈值,并且上述当前语音频帧的前一帧语音频帧的谱倾斜因子小于或等于第二阈值,则基于当前语音频帧的频谱对参数和上述当前语音频帧的前一帧语音频帧的频谱对参数,获得上述当前语音频帧的后处理的频谱对参数;

或者,若上述当前语音频帧为冗余解码帧,并且上述当前语音频帧的信号类型不为清音,并且上述当前语音频帧的后一帧语音频帧为清音,并且上述当前语音频帧的后一帧语音频帧中的子帧的自适应码书增益的最大值小于或等于第三阈值,并且上述当前语音频帧的前一帧语音频帧的谱倾斜因子小于或等于第四阈值,则将上述当前语音频帧的前一帧语音频帧的频谱对参数作为上述当前语音频帧的后处理的频谱对参数,或基于上述当前语音频帧的前一帧语音频帧的频谱对参数获得上述当前语音频帧的后处理的频谱对参数;

或者,

若上述当前语音频帧为冗余解码帧,并且上述当前语音频帧的信号类型不为清音,并且上述当前语音频帧的后一帧语音频帧的信号类型为清音,并且上述当前语音频帧的后一帧语音频帧中的子帧的自适应码书增益的最大值小于或者等于第三阈值,并且上述当前语音频帧的前一帧语音频帧的谱倾斜因子小于或者等于第四阈值,则基于上述当前语音频帧的频谱对参数和上述当前语音频帧的前一帧语音频帧的频谱对参数,获得上述当前语音频帧的后处理的频谱对参数。

其中,上述基于上述当前语音频帧的频谱对参数和上述当前语音频帧的前一帧语音频帧的频谱对参数,获得上述当前语音频帧的后处理的频谱对参数的方式可以是多种多样的。

例如,在上述基于上述当前语音频帧的频谱对参数和上述当前语音频帧的前一帧语音频帧的频谱对参数,获得上述当前语音频帧的后处理的频谱对参数的方面,通过调用存储器505存储的程序或指令,处理器501可具体用于:具体通过如下公式,基于上述当前语音频帧的频谱对参数和上述当前语音频帧的前一帧语音频帧的频谱对参数,获得上述当前语音频帧的后处理的频谱对参数:

lsp[k]=α*lsp_old[k]+β*lsp_mid[k]+δ*lsp_new[k]0≤k≤l;

其中,上述lsp[k]为上述当前语音频帧的后处理的频谱对参数,上述lsp_old[k]为上述当前语音频帧的前一帧语音频帧的频谱对参数,上述lsp_mid[k]为上述当前语音频帧的频谱对参数的中间值,上述lsp_new[k]为上述当前语音频帧的频谱对参数,上述l为频谱对参数的阶数,其中,上述α为上述当前语音频帧的前一帧语音频帧的频谱对参数的权重,上述β为上述当前语音频帧的频谱对参数的中间值的权重,上述δ为上述当前语音频帧的频谱对参数的权重,α≥0,β≥0,δ≥0,且α+β+δ=1,

其中,若上述当前语音频帧为正常解码帧,并且上述当前语音频帧的前一帧语音频帧为冗余解码帧,则上述α等于0或上述α小于或等于第五阈值;或者,若上述当前语音频帧为冗余解码帧,则上述β等于0或上述β小于或等于第六阈值;或者,若上述当前语音频帧为冗余解码帧,上述δ等于0或上述δ小于或等于第七阈值;或者若上述当前语音频帧为冗余解码帧,则上述β等于0或者上述β小于或等于第六阈值,并且上述δ等于0或上述δ小于或者等于第七阈值。

又例如,在上述基于上述当前语音频帧的频谱对参数和上述当前语音频帧的前一帧语音频帧的频谱对参数,获得上述当前语音频帧的后处理的频谱对参数的方面,通过调用存储器505存储的程序或指令,处理器501可具体用于:具体通过如下公式,基于上述当前语音频帧的频谱对参数和上述当前语音频帧的前一帧语音频帧的频谱对参数,获得上述当前语音频帧的后处理的频谱对参数:

lsp[k]=α*lsp_old[k]+δ*lsp_new[k]0≤k≤l;

其中,上述lsp[k]为上述当前语音频帧的后处理的频谱对参数,上述lsp_old[k]为上述当前语音频帧的前一帧语音频帧的频谱对参数,上述lsp_new[k]为上述当前语音频帧的频谱对参数,上述l为频谱对参数的阶数,上述α为上述当前语音频帧的前一帧语音频帧的频谱对参数的权重,上述δ为上述当前语音频帧的频谱对参数的权重,α≥0,δ≥0,且α+δ=1,

其中,若上述当前语音频帧为正常解码帧并且上述当前语音频帧的前一帧语音频帧为冗余解码帧,则上述α等于0或者上述α小于或等于第五阈值;或者,若上述当前语音频帧为冗余解码帧,则上述δ等于0或上述δ小于或等于第七阈值。

其中,对于第五阈值、第六阈值和第七阈值,可以根据应用的环境或场景的不同而设置不同的值。例如,第五阈值的取值可接近于0,例如第五阈值可等于0.001、0.002、0.01或0.1或其它接近于0的值。其中,第六阈值的取值可接近于0,如第六阈值可等于0.001、0.002、0.01或0.1或其它接近于0的值。第七阈值的取值可接近于0,例如第七阈值可等于0.001、0.002、0.01或0.1或其它接近于0的值。

其中,对于第一阈值、第二阈值、第三阈值和第四阈值,可以根据应用的环境或场景的不同而设置不同的值。

例如第一阈值可以设置为0.9,0.8,0.85,0.7,0.89或0.91等。

例如第二阈值可以设置为0.16,0.15,0.165,0.1,0.161或0.159等。

例如第三阈值可以设置为0.9,0.8,0.85,0.7,0.89或0.91等。

例如第四阈值可以设置为0.16,0.15,0.165,0.1,0.161或0.159等。

其中,第一阈值可等于或不等于第三阈值。第二阈值可等于或不等于第四阈值。

在本发明另一些实施例中,上述当前语音频帧的语音频解码参数包括上述当前语音频帧的自适应码书增益;其中,在上述根据x帧语音频帧的语音频参数对上述当前语音频帧的语音频解码参数进行后处理,以得到上述当前语音频帧的后处理的语音频解码参数的方面,通过调用存储器505存储的程序或指令,处理器501可具体用于:根据x帧语音频帧的信号类型、代数码书增益和自适应码书增益中的至少一种,对上述当前语音频帧的自适应码书增益进行后处理,以得到上述当前语音频帧的后处理的自适应码书增益。

举例来说,在上述根据x帧语音频帧的信号类型、代数码书增益和自适应码书增益中的至少一种,对上述当前语音频帧的自适应码书增益进行后处理的方面,通过调用存储器505存储的程序或指令,处理器501可具体用于:

若上述当前语音频帧为冗余解码帧并且上述当前语音频帧的信号类型不为清音,并且上述当前语音频帧的后两帧语音频帧之中的至少一帧语音频帧的信号类型为清音,并且上述当前语音频帧中的当前子帧的代数码书增益大于或等于上述当前语音频帧的前一帧语音频帧的代数码书增益(例如,上述当前语音频帧中的当前子帧的代数码书增益为上述当前语音频帧的前一帧语音频帧的代数码书增益的1倍、1.5倍、2倍、2.5倍、3倍、3.4倍、4倍或其它大于或等于1的倍数),则衰减上述当前子帧的自适应码书增益;

或者,

若上述当前语音频帧为冗余解码帧,并且上述当前语音频帧的信号类型不为清音,并且上述当前语音频帧的后一帧语音频帧和后一帧语音频帧的后一帧语音频帧之中的至少一帧语音频帧的信号类型为清音,并且上述当前语音频帧中的当前子帧的代数码书增益大于或等于上述当前子帧的前一子帧的代数码书增益(例如上述当前语音频帧中的当前子帧的代数码书增益是上述当前子帧的前一子帧的代数码书增益的1倍、1.5倍、2倍、2.5倍、3倍、3.4倍、4倍或其它大于或等于1的倍数),则衰减上述当前子帧的自适应码书增益;

或者,

若上述当前语音频帧为冗余解码帧或上述当前语音频帧为正常解码帧且上述当前语音频帧的前一帧语音频帧为冗余解码帧,并且若上述当前语音频帧的信号类型为普通语音,并且上述当前语音频帧的后一帧语音频帧的信号类型为浊音,并且上述当前语音频帧中的某子帧的代数码书增益大于或等于上述某子帧的前一子帧的代数码书增益(例如,上述当前语音频帧中的某子帧的代数码书增益可为上述某子帧的前一子帧的代数码书增益的1倍、1.5倍、2倍、2.5倍、3倍、3.4倍、4倍或其它大于或等于1的倍数),则基于上述当前语音频帧的当前子帧和上述当前子帧的相邻子帧的代数码书增益的比值、上述当前语音频帧的当前子帧和上述当前子帧的相邻子帧的自适应码书增益的比值和上述当前语音频帧的当前子帧和上述当前语音频帧的前一帧语音频帧的代数码书增益的比值之中的至少一个,调整(如增大或衰减)上述当前语音频帧的当前子帧的自适应码书增益(例如若上述当前语音频帧的当前子帧和上述当前子帧的相邻子帧的代数码书增益的比值大于或等于第十一阈值(第十一阈值例如可等于2、2.1、.2.5、3或其它值),上述当前语音频帧的当前子帧和上述当前子帧的相邻子帧的自适应码书增益的比值大于或等于第十二阈值(第十二阈值例如可等于1、1.1、1.5、2、2.1或其它值),且上述当前语音频帧的当前子帧和上述当前语音频帧的前一帧语音频帧的代数码书增益的比值小于或等于第十三阈值(第十三阈值例如可等于1、1.1、1.5、2或其它值),则可增大上述当前语音频帧的当前子帧的自适应码书增益);

或者,

若上述当前语音频帧为冗余解码帧或者上述当前语音频帧为正常解码帧且上述当前语音频帧的前一帧语音频帧为冗余解码帧,并且若上述当前语音频帧的信号类型为普通语音,并且上述当前语音频帧的后一帧语音频帧的信号类型为浊音,并且上述当前语音频帧中的某子帧的代数码书增益大于或者等于上述当前语音频帧的前一帧语音频帧的代数码书增益(上述当前语音频帧中的某子帧的代数码书增益为上述当前语音频帧的前一帧语音频帧的代数码书增益的1倍、1.5倍、2倍、2.5倍、3倍、3.4倍、4倍或其它大于或等于1的倍数),则基于上述当前语音频帧的当前子帧和上述当前子帧的相邻子帧的代数码书增益的比值、上述当前语音频帧的当前子帧和上述当前子帧的相邻子帧的自适应码书增益的比值和上述当前语音频帧的当前子帧和上述当前语音频帧的前一帧语音频帧的代数码书增益的比值之中的至少一个,调整(衰减或增大)上述当前语音频帧的当前子帧的自适应码书增益(例如,若上述当前语音频帧的当前子帧和上述当前子帧的相邻子帧的代数码书增益的比值大于或等于第十一阈值(第十一阈值例如可等于2、2.1、.2.5、3或其它值),上述当前语音频帧的当前子帧和上述当前子帧的相邻子帧的自适应码书增益的比值大于或等于第十二阈值(第十二阈值例如可等于1、1.1、1.5、2、2.1或其它值),且上述当前语音频帧的当前子帧和上述当前语音频帧的前一帧语音频帧的代数码书增益的比值小于或等于第十三阈值(第十三阈值例如可等于1、1.1、1.5、2或其它值),则可增大上述当前语音频帧的当前子帧的自适应码书增益);

或者,

若上述当前语音频帧为冗余解码帧或上述当前语音频帧为正常解码帧且上述当前语音频帧的前一帧语音频帧为冗余解码帧,且若上述当前语音频帧为浊音,并且上述当前语音频帧的前一帧语音频帧的信号类型为普通语音,并且上述当前语音频帧中的某子帧的代数码书增益大于或等于上述某子帧的前一子帧的代数码书增益(例如上述当前语音频帧中的某子帧的代数码书增益可为上述某子帧的前一子帧的代数码书增益的1倍、1.5倍、2倍、2.5倍、3倍、3.4倍、4倍或其它大于或等于1的倍数),则基于上述当前语音频帧的当前子帧和上述当前子帧的相邻子帧的代数码书增益的比值、上述当前语音频帧的当前子帧和上述当前子帧的相邻子帧的自适应码书增益的比值和上述当前语音频帧的当前子帧和上述当前语音频帧的前一帧语音频帧的代数码书增益的比值中的至少一个,调整(衰减或增大)上述当前语音频帧的当前子帧的自适应码书增益(例如若上述当前语音频帧的当前子帧和上述当前子帧的相邻子帧的代数码书增益的比值大于或等于第十一阈值(第十一阈值例如等于2、2.1、.2.5、3或其它值),上述当前语音频帧的当前子帧和上述当前子帧的相邻子帧的自适应码书增益的比值大于或等于第十二阈值(第十二阈值例如等于1、1.1、1.5或2、2.1或其它值),且上述当前语音频帧的当前子帧和上述当前语音频帧的前一帧语音频帧的代数码书增益的比值小于或等于第十三阈值(第十三阈值例如可等于1、1.1、1.5、2或其它值),则可增大上述当前语音频帧的当前子帧的自适应码书增益);

或者,

若上述当前语音频帧为冗余解码帧或者上述当前语音频帧为正常解码帧并且上述当前语音频帧的前一帧语音频帧为冗余解码帧,并且若上述当前语音频帧的信号类型为浊音,并且上述当前语音频帧的前一帧语音频帧的信号类型为普通语音,并且上述当前语音频帧中的某子帧的代数码书增益大于或等于上述当前语音频帧的前一帧语音频帧的代数码书增益(例如,上述当前语音频帧中的某子帧的代数码书增益为上述当前语音频帧的前一帧语音频帧的代数码书增益的1倍、1.5倍、2倍、2.5倍、3倍、3.4倍、4倍或其它大于或等于1的倍数),则基于上述当前语音频帧的当前子帧和上述当前子帧的相邻子帧的代数码书增益的比值、上述当前语音频帧的当前子帧和上述当前子帧的相邻子帧的自适应码书增益的比值和上述当前语音频帧的当前子帧和上述当前语音频帧的前一帧语音频帧的代数码书增益的比值之中的至少一个,调整(衰减或增大)上述当前语音频帧的当前子帧的自适应码书增益(例如若上述当前语音频帧的当前子帧和上述当前子帧的相邻子帧的代数码书增益的比值大于或等于第十一阈值(第十一阈值例如可等于2、2.1、.2.5、3或其它值),上述当前语音频帧的当前子帧和上述当前子帧的相邻子帧的自适应码书增益的比值大于或等于第十二阈值(第十二阈值例如可等于1、1.1、1.5、2、2.1或其它值),且上述当前语音频帧的当前子帧和上述当前语音频帧的前一帧语音频帧的代数码书增益的比值小于或等于第十三阈值(第十三阈值例如可等于1、1.1、1.5、2或其它值),则可增大上述当前语音频帧的当前子帧的自适应码书增益)。

在本发明的另一些实施例中,上述当前语音频帧的语音频解码参数包括上述当前语音频帧的代数码书,在上述根据x帧语音频帧的语音频参数对上述当前语音频帧的语音频解码参数进行后处理,以得到上述当前语音频帧的后处理的语音频解码参数的方面,通过调用存储器505存储的程序或指令,处理器501可具体用于:根据x帧语音频帧的信号类型、代数码书和谱倾斜因子的至少一种,对上述当前语音频帧的代数码书进行后处理,以得到上述当前语音频帧的后处理的代数码书。

举例来说,在上述根据x帧语音频帧的信号类型、代数码书和谱倾斜因子的至少一种,对上述当前语音频帧的代数码书进行后处理的方面,通过调用存储器505存储的程序或指令,处理器501可具体用于:

若上述当前语音频帧为冗余解码帧,并且上述当前语音频帧的后一帧语音频帧的信号类型为清音,并且上述当前语音频帧的前一帧语音频帧的谱倾斜因子小于或等于第八阈值,并且上述当前语音频帧的其中一个子帧的代数码书为零或小于或等于第九阈值,则将上述当前语音频帧的前一子帧的代数码书或随机噪声作为上述当前子帧的代数码书。

其中,对于第八阈值和第九阈值,可以根据应用的环境或场景的不同而设置不同的值。

例如第八阈值可以设置为0.16,0.15,0.165,0.1,0.161或0.159等。

例如第九阈值可以设置为0.1,0.09,0.11,0.07,0.101或0.099或其它接近于0的值等。

其中,第八阈值可等于或不等于第二阈值。

在本发明的另一些实施例中,上述当前语音频帧的语音频解码参数包括上述当前语音频帧的频带扩展包络,其中,在上述根据x帧语音频帧的语音频参数对上述当前语音频帧的语音频解码参数进行后处理,以得到上述当前语音频帧的后处理的语音频解码参数的方面,通过调用存储器505存储的程序或指令,处理器501可具体用于:根据x帧语音频帧的信号类型、频带扩展包络和谱倾斜因子中的至少一种,对上述当前语音频帧的频带扩展包络进行后处理,以得到上述当前语音频帧的后处理的频带扩展包络。

举例来说,在上述根据x帧语音频帧的信号类型、频带扩展包络和谱倾斜因子中的至少一种,对上述当前语音频帧的频带扩展包络进行后处理,以得到上述当前语音频帧的后处理的频带扩展包络的方面,通过调用存储器505存储的程序或指令,处理器501可具体用于:

若上述当前语音频帧的前一帧语音频帧为正常解码帧,且上述当前语音频帧的前一帧语音频帧和当前语音频帧的后一帧语音频帧的信号类型相同,则基于上述当前语音频帧的前一帧语音频帧的频带扩展包络和上述当前语音频帧的频带扩展包络,得到上述当前语音频帧的后处理的频带扩展包络;

或者,

若上述当前语音频帧为冗余解码的预测模式,则基于上述当前语音频帧的前一帧语音频帧的频带扩展包络和上述当前语音频帧的频带扩展包络,得到上述当前语音频帧的后处理的频带扩展包络;

或者,若上述当前语音频帧的信号类型不是清音,且上述当前语音频帧的后一帧语音频帧的信号类型为清音,且上述当前语音频帧的前一帧语音频帧的谱倾斜因子小于或等于第十阈值,则根据上述当前语音频帧的前一帧语音频帧的频带扩展包络或者谱倾斜因子,修正上述当前语音频帧的频带扩展包络,以得到上述当前语音频帧的后处理的频带扩展包络。

可根据应用的环境或场景的不同而设置第十阈值的不同的取值。例如第十阈值可以设置为0.16,0.15,0.165,0.1,0.161或0.159等。

例如,在基于上述当前语音频帧的前一帧语音频帧的频带扩展包络和上述当前语音频帧的频带扩展包络,得到上述当前语音频帧的后处理的频带扩展包络的方面,通过调用存储器505存储的程序或指令,处理器501可具体用于:具体通过如下公式,基于上述当前语音频帧的前一帧语音频帧的频带扩展包络和上述当前语音频帧的频带扩展包络,得到上述当前语音频帧的后处理的频带扩展包络:

gainframe=fac1*gainframe_old+fac2*gainframe_new。

其中,上述gainframe为上述当前语音频帧的后处理的频带扩展包络,上述gainframe_old为上述当前语音频帧的前一帧语音频帧的频带扩展包络,上述gainframe_new为上述当前语音频帧的频带扩展包络,上述fac1为上述当前语音频帧的前一帧语音频帧的频带扩展包络的权重,上述fac2为上述当前语音频帧的频带扩展包络的权重,fac1≥0,fac2≥0,且fac1+fac2=1。

又例如,上述修正上述当前语音频帧的频带扩展包络的修正因子与上述当前语音频帧的前一帧语音频帧的谱倾斜因子成反比,与上述当前语音频帧的前一帧语音频帧的频带扩展包络与上述当前语音频帧的频带扩展包络的比值成正比。

在本发明的另一些实施例中,上述当前语音频帧的语音频解码参数包括上述当前语音频帧的基因周期,在上述根据x帧语音频帧的语音频参数对上述当前语音频帧的语音频解码参数进行后处理,以得到上述当前语音频帧的后处理的语音频解码参数的方面,通过调用存储器505存储的程序或指令,处理器501可具体用于:根据x帧语音频帧的信号类型和/或基因周期,对上述当前语音频帧的基因周期进行后处理(例如,可以根据x帧语音频帧的信号类型和/或基因周期,对上述当前语音频帧的基因周期进行增大或者衰减等后处理),以得到上述当前语音频帧的后处理的基因周期。

可以理解的是,本实施例的解码器500的各功能模块的功能可根据上述方法实施例中的方法具体实现,其具体实现过程可以参照上述方法实施例的相关描述,此处不再赘述。其中,解码器500可为任何需要输出语音的装置,如笔记本电脑,平板电脑、个人电脑、手机等设备。

从上可知,本实施例中,对于当前语音频帧为冗余解码帧或者上述当前语音频帧的前一帧语音频帧为冗余解码帧的场景,解码端获得当前语音频帧的解码参数后,根据x帧语音频帧的语音频参数对当前语音频帧的语音频解码参数进行后处理,以得到上述当前语音频帧的后处理的语音频解码参数,上述x帧语音频帧包括上述当前语音频帧的前m帧语音频帧和/或上述当前语音频帧的后n帧语音频帧,并使用当前语音频帧的后处理的音频解码参数恢复当前语音频帧的语音频信号,这样有利于解码信号在冗余解码帧和正常解码帧之间或在冗余解码帧和fec恢复帧之间过渡时得到稳定质量,从而提高输出的语音频信号的质量。

从上可知,本发明的一些实施例中,在清音语音频帧和非清音语音频帧之间过渡(例如,当前语音频帧的信号类型为清音并且为冗余解码帧时,而当前语音频帧的前一帧语音频帧或后一帧语音频帧的信号类型为非清音并且为正常解码帧,或者当前语音频帧的信号类型为非清音且为正常解码帧,当前语音频帧的前一帧语音频帧或后一帧语音频帧的信号类型为清音并且为冗余解码帧)时,对当前语音频帧的语音频解码参数进行后处理,从而有利于去掉清音语音频帧和非清音语音频帧的帧间过渡时的咔咔声(click)现象,从而提高输出的语音频信号的质量。

本发明的另一些实施例中,在普通语音频帧与浊音语音频帧之间过渡(当前帧为普通语音帧并且为冗余解码帧时,而当前语音频帧的前一帧语音频帧或后一帧语音频帧的信号类型为浊音并且为正常解码帧,或当前语音频帧的信号类型为浊音且为正常解码帧,当前语音频帧的前一帧语音频帧或后一帧语音频帧的信号类型为普通语音并且为冗余解码帧)时,对当前语音频帧的语音频解码参数进行后处理,从而有利于纠正普通语音帧和浊音帧之间过渡时的能量不稳定现象,从而提高输出的语音频信号的质量。

本发明的又一些实施例中,在当前语音频帧为冗余解码帧,并且当前语音频帧的信号类型不是清音,且当前语音频帧的后一帧语音频帧的信号类型是清音时,对当前帧的频带扩展包络进行调整,从而修正时域频带扩展的能量不稳定现象,提高输出的语音频信号的质量。

本发明实施例还提供一种计算机存储介质,其中,该计算机存储介质可存储有程序,该程序执行时包括上述方法实施例中记载的任意一种语音频码流的解码方法的部分或全部步骤。

需要说明的是,对于前述的各方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本发明并不受所描述的动作顺序的限制,因为依据本发明,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作和模块并不一定是本发明所必须的。

在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其他实施例的相关描述。

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

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

另外,在本发明各实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。

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

以上所述,以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。以上所述,以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。

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