语音译码器和语音译码方法

文档序号:7585039阅读:264来源:国知局
专利名称:语音译码器和语音译码方法
技术领域
本发明涉及在语音编译码器中使用的语音译码器和语音译码方法。
背景技术
CELP(代码激励线性预测)作为一种语音编码方法已受到一定的注意。
CELP是一种根据过去的译码结果预测当前语音信号的样值、以及对等于语音信号样值的预测值和实际样值间的差值的预测误差进行编码和传送的预测编码方式。在这种CELP中,然后对含有噪声序列的预测误差进行矢量量化并传送量化结果。
在用于接收利用例如CELP这样的预测编码方法获得的编码语音信号和译码所接收的信号的译码器中,根据编码语音信号和译码器在每一标准帧周期中的内部状态来产生激励信号。根据这些激励信号来译码语音信号,并可利用这些激励信号来更新内部状态。一旦从编码语音信号各帧中检测到代码误差,就执行衰减激励信号的隐蔽(concealment)处理。在R.Salam等人发表于IEEE“语音和音频处理”会刊(1998年3月,6卷,2期)上的论文“CS-ACELP的设计和说明长途质量8kb/s语音编码器”中描述了这种隐蔽处理。
这种隐蔽处理防止了源于帧误差造成的令人不愉快的失真。
但是,当在接收帧中出现的编码误差持续了多个连续帧和重复进行这种隐蔽处理时,译码器的内部状态将变成约等于零。因此,随后即使连续帧误差结束,也需要较长的时间才能使正确接收的编码语音信号以正确的功率被译码。
发明的内容鉴于以上情况提出本发明,其目的是提供这样的一种语音译码器和语音译码方法,即甚至在编码语音信号具有连续误差的情况下,也能够在编码语音信号再次被正常输入后的较早期间内返回以原定的功率执行译码的状态。
为了实现这一目的,本发明提供了这样一种语音译码器,它接收预测编码语音信号帧,根据所述编码语音信号和内部状态产生激励信号,在更新该内部状态的同时根据这些激励信号产生译码语音信号,以及在从这些帧中检测到代码误差时执行衰减这些激励信号的隐蔽处理;该语音译码器包括放大控制装置和放大装置,在出现超过预定标准帧误差数目的连续帧误差时,该放大控制装置就在这些连续帧误差已消失后的预定时间内输出放大指示信号,而该放大装置在这些放大指示信号被输出的时候放大激励信号。
根据本发明,当出现连续帧误差和这些帧误差随后消失时,译码器的内部状态可迅速返回到这些帧误差之前的状态,使得能够以原定功率执行译码,这样就能够减轻从帧误差中恢复之后主观语音质量的降低。
附图概述

图1是表示本发明一实施例的语音译码器的结构的方框图。
图2是表示同一实施例应用于CELP译码器的一实例的方框图。
图3是表示同一CELP译码器的激励信号再现部分的详细结构的方框图。
实施本发明的最佳方式将参看附图描述本发明的一优选实施例。
A.实施例结构图1是表示本发明一实施例的语音译码器10的结构的方框图。
该语音译码器10包括译码处理部分11和放大处理控制部分12。
此处的译码处理部分11是一个用于译码接收的编码语音信号(比特流)BS并输出译码语音信号的装置。另外,编码语音信号BS包含码簿参数PC、增益参数PG和合成参数PSY。
放大控制部分12是这样的装置,它监视产生编码语音信号BS的帧误差的状态,一旦出现超过预定标准帧误差数目的连续帧误差,就在这些连续帧误差消失后输出预定数目帧的开关控制信号CSW(放大指示信号)。以下将说明输出该开关控制信号CSW的目的和按照该开关控制信号CSW而执行的处理。
以下描述译码处理部分11和放大处理控制部分12的结构。
首先,译码处理部分11包括码簿数据产生部分15、放大器16、合成滤波器17和开关SW。
此处的码簿数据产生部分15包括码簿译码器18和前置放大器19。
当然,码簿译码器18具有可重写的存储器。该存储器把预定数目的新近产生的码簿数据DCB(以下将描述)作为原始码簿数据DCB0进行存储。在译码处理中用该原始码簿数据DCB0作为表示译码器内部状态的信息。向码簿译码器18提供被包含在编码语音信号BS内的码簿参数PC。码簿译码器18把码簿参数PC作为索引,输出存储在上述存储器中对应于该索引的存储器内的原始码簿数据DCB0。
前置放大器19以对应于增益参数PG的增益来放大该原始码簿数据DCB0,并把其结果作为码簿数据DCB输出。
开关SW是用来切换从前置放大器输出的码簿数据DCB的传送目的地的开关,在上述开关控制信号CSW没有被输出时,它把码簿数据DCB提供给合成滤波器17,而当该开关控制信号CSW已被输出时,它就把码簿数据DCB输出给放大器。
当从前置放大器19通过开关SW向放大器16提供了码簿数据DCB时,该放大器16就以预定放大倍数放大该码簿数据DCB,并把其结果作为放大的码簿数据DACB输出。
合成滤波器17根据码簿数据DCB或放大的码簿数据DACB(激励信号)和合成参数PSY来合成译码语音信号SP。另外,在码簿数据DB和和放大的码簿数据DACB当中,输入给合成滤波器17的数据(激励信号)被提供给上述码簿译码器18作为新的原始码簿数据DCB0。然后,消除码簿译码器18的存储器中的最老的原始码簿数据DCB0,把新的原始码簿数据DCB0写入该存储器。
其次,放大处理控制部分12包括误差检测部分21A、计数器部分22A和开关控制部分23A。
误差检测部分21A检测编码语音信号BS的帧误差,并输出误差检测信号SER。
计数器部分22A根据误差检测信号SER对连续帧误差进行计数,并输出计数信号SCN。具体来说,一旦在每一帧周期中有误差检测信号SER被输出,该计数器部分22A就把计数值增大“1”,如果没有误差检测信号SER被输出,就把计数值设定为“0”。然后,它输出计数值作为每一帧周期的计数信号CN。
开关控制部分23A监视计数信号SCN,一旦由计数信号SCN表示的连续帧误差的数目超过预定标准帧误差数目,它随后就输出开关控制信号CSW,以便在这些帧误差消失后的预定数目的帧所持续的时间内把开关切换到放大器16一侧。在不再有误差检测信号SER被输出的时候,开关控制部分23A就认为那时连续的帧误差已结束。
B.实施例的操作以下说明语音译码器10的操作。
在以下的说明中,标准连续帧误差的数目将是“4”。另外,开关控制部分23A将输出开关控制信号CSW,以便在连续帧误差数目超过“4”的时刻起至从这些帧误差消失开始过了1帧(=预定数目的帧)为止的时间内把开关SW切换到放大器16一侧。
当连续帧误差数目是“4”或小于“4”时。
在每一帧周期中,对应于被包含在编码语音信号BS内的码簿参数PC的原始码簿数据DCB0会从码簿数据产生输出部分15内的码簿译码器18中被输出。该原始码簿数据DCB0被前置放大器19以对应于增益参数PG的增益进行放大,并被作为码簿数据DCB输出。
此时连续帧误差数目不超过标准连续帧误差数目“4”,所以合成滤波器17被开关SW选作码簿数据DCB的传送目的地。
于是,前置放大器19输出的码簿数据DCB通过开关SW传送给合成滤波器17。合成滤波器17根据码簿数据DCB和合成参数PSY来合成译码语音信号SP。另外,传送给合成滤波器17的码簿数据DCB还被写入码簿译码器18作为新的原始码簿数据DCB0。
当出现连续帧误差时。
一旦出现帧误差,就在该语音译码器10中执行迅速衰减译码结果的隐蔽处理。当这种隐蔽处理连续超过多个帧周期时,在码簿译码器18的存储器内的原始码簿数据DCB0就逐渐地趋于“0”。在例如R.Salam等人发表于IEEE“语音和音频处理”会刊(1998年3月,6卷,2期)上的论文“CS-ACELP的设计和说明长途质量8kb/s语音编码器”中描述了这种隐蔽处理。
当连续帧误差数目超过“4”和这些帧误差随后消失时。
当连续帧误差数目超过“4”和这些帧误差随后消失时,开关控制部分23A输出开关控制信号CSW,放大器16被开关SW选作一个帧周期的码簿数据DCB的传送目的地。
由于存储在码簿译码器18的存储器内的原始码簿数据DCB0基本上是“0”,所以从前置放大器19得到的码簿数据DCB的数据量很小。
但是,码簿数据DCB通过开关SW传送给放大器16,被放大预定的放大倍数,被提供给合成滤波器部分17作为放大码簿数据DACB,还被写入到码簿译码器18的存储器之中作为新的原始码簿数据DCB0。
这样一来,即使语音译码器10的过去内部状态(即在码簿译码器18的存储器内的原始码簿数据DCB0)因连续帧误差而变成基本上为零,但一旦这些帧误差随后消失,也能够获得作为标准时间周期的激励信号的符合放大器16的放大倍数的放大码簿数据DACB。
C.具体应用实例以下参看图2描述把本实施例应用于采用CS-ACELP(共扼结构代数码激励线性预测)类型编译码器格式(一种预测编码格式)的编译码器中的语音译码器的一具体实例。R.Salam等人发表于IEEE“语音和音频处理”会刊(1998年3月,6卷,2期)上的论文“CS-ACELP的设计和说明长途质量8kb/s语音编码器”中描述了这种CS-ACELP格式的语音编码器和语音译码器。
(1)语音译码器的结构在图2中,语音译码器20具有参数译码器21。该参数译码器21是用来从接收的编码语音信号(比特流)BS译码音调延迟参数组GP、码簿增益参数组GG、码簿索引参数组GC和LSP(线谱对)索引参数组GL的装置。
在此,码簿索引参数组GC包含多个码簿索引参数和多个码簿代码参数。
此外,语音译码器20还包括自适应代码矢量译码器22、固定代码矢量译码器23和自适应预处理滤波器25。
在此,自适应代码矢量译码器22是用来输出对应于音调延迟参数组GP的自适应代码矢量ACV的装置。具体来说,该自适应代码矢量译码器22具有可重写存储器,该存储器包含过去已输入的预定数目的自适应代码矢量ACV。自适应代码矢量译码器22把音调延迟参数组GP作为索引,从存储器中读出对应于该索引的自适应代码矢量ACV,并输出其结果。此外,当利用下述激励信号再现部分27再现激励信号SEXC时,该激励信号SEXC被写入自适应代码矢量译码器22的存储器作为新的自适应代码矢量ACV,消除存储器中最老的自适应代码矢量ACV。
固定代码矢量译码器23是用来输出对应于码簿索引参数组GC的原始固定代码矢量FCV0的装置。
自适应代码矢量译码器22和固定代码矢量译码器23对应于图1的码簿译码器18。
自适应预处理滤波器25是一个起加重处理装置作用的装置,用来对被译码的原始固定代码矢量FCV0的谐波分量进行加重,并把结果作为固定代码矢量FCV输出。
此外,语音译码器20还包括增益译码器24和LSP再现部分26。
增益译码器24是一个用于根据固定代码矢量FCV(或原始固定代码矢量FCV0)和码簿增益参数组GL来输出自适应码簿增益ACG和固定码簿增益FCG的装置。
LSP再现部分26是一个用于根据LSP索引参数组GL来再现LSP系数CLSP的装置。
此外,语音译码器20还包括激励信号再现部分27、LP合成滤波器28、后处理滤波器29和旁通滤波器/上定标(upscaling)部分30。
激励信号再现部分27是一个用于根据自适应代码矢量ACV、自适应码簿增益ACG、固定码簿增益FCG和固定代码矢量FCV(或原始固定代码矢量FCV0)来再现激励信号SEXC的装置。该激励信号SEXC被写入自适应代码矢量译码器22的存储器中作为新的自适应代码矢量ACV,并且消除该存储器中最老的自适应代码矢量ACV。
LP合成滤波器28是用于根据激励信号SEXC和LSP系数CLSP来执行LP合成以便再现语音信号SSPC的装置。
后处理滤波器29是用于对语音信号SPC执行后处理滤波的装置。该后处理滤波器29由三个滤波器构成,即长期后处理滤波器、短期后处理滤波器和斜率补偿滤波器。这三个滤波器沿输入至输出的方向按照长期后处理滤波器到短期后处理滤波器再到斜率补偿滤波器的顺序串联连接。
旁通滤波器/上定标部分30是用来对后处理滤波器29的输出信号执行旁通滤波处理和上定标处理的装置。
此外,语音译码器20包括误差检测部分31、计数器部分32和开关控制部分33。
误差检测部分31是用于检测接收的编码语音信号BS的帧误差并输出误差检测信号SER的装置。
此外,计数器部分32是用于根据误差检测信号SER对连续帧误差数目进行计数并输出计数信号SCN的装置。
还有,开关控制部分33是这样的装置,即它在计数信号SCN表示的连续帧误差数目已超过预定基准帧误差数目时输出开关控制信号SSW,以便把下述开关SW1切换至下述第三放大器44(见图3)一侧,直到从这些帧误差消失后起出现了预定数目的帧为止。
误差检测部分31、计数器部分32和开关控制部分33对应于图1的误差检测部分21A、计数器部分22A和开关控制部分23A。
图3是表示激励信号再现部分27的结构的一实例的方框图。
如图3所示,激励信号再现部分27包括第一放大器41、第二放大器42、再现部分43、开关SW1和第三放大器44。
第一放大器41把被放大了相应于自适应码簿增益ACG的增益的自适应代码矢量ACV作为放大了的自适应代码矢量ACV1进行输出。
此外,第二放大器42把被放大了相应于固定码簿增益FCG的增益的固定代码矢量FCV作为放大固定代码矢量FCV1进行输出。
再现部分43根据放大自适应代码矢量ACV1和放大固定代码矢量FCV1来再现原始激励信号SEXC0。
当开关控制信号SSW没有被输出时,开关SW1把原始激励信号SEXC0输出给LP合成滤波器28,而当开关控制信号SSW正在被输出时,就把原始激励信号SEXC0输出给第三放大器44。
第三放大器44放大原始激励信号SEXC0,将其结果作为激励信号SEXC输出给LP合成滤波器28。
(2)语音译码器的操作以下说明语音译码器的操作。
在以下的说明中,标准连续帧误差的数目将是“4”。另外,开关控制部分33输出开关控制信号SSW,以便在连续帧误差数目已超过“4”之后,在这些帧误差随后已消失之后1帧的时间内把开关SW1切换到第三放大器44一侧。
当连续帧误差数目是“4”或小于“4”时。
在图2中,参数译码器从接收的编码语音信号(比特流)BS中译码音调延迟参数组GP、码簿增益参数组GG、码簿索引参数组GC和LSP(线谱对)索引参数组GL。
然后,参数译码器21把通过译码获得的音调延迟参数组GP输出给自适应代码矢量译码器22,把码簿增益参数组GG输出给增益译码器24,把码簿索引参数组GC输出给固定代码矢量译码器23和把LSP(线谱对)索引参数组GL输出给LSP再现部分26。
LSP再现部分26根据LSP索引参数组GL来再现LSP系数CLSP,把其结果输出给LP合成滤波器28和后处理滤波器29。
自适应代码矢量译码器22根据音调延迟参数组GP来译码自适应代码矢量ACV,把其结果输出给激励信号再现部分27。
固定代码矢量译码器23根据码簿索引参数组GC来译码原始固定代码矢量FCV0,把其结果输出给自适应预处理滤波器25。
自适应预处理滤波器25执行对被译码的原始固定代码矢量FCV0的谐波分量进行加重的加重处理,并把其结果作为固定代码矢量FCV而输出给增益译码器24和激励信号再现部分27。
增益译码器24根据固定代码矢量FCV(或原始固定代码矢量FCV0)和码簿增益参数组GL来输出自适应码簿增益ACG和固定码簿增益FCG给激励信号再现部分27。
在激励信号再现部分27中,第一放大器41以相应于自适应码簿增益ACG的增益来放大自适应代码矢量ACV,并把其结果作为放大的自适应代码矢量ACV1而输出给再现部分43。
此外,第二放大器42以相应于固定码簿增益FCG的增益来放大固定代码矢量FCV,并把其结果作为放大固定代码矢量FCV1而输出给再现部分43。
再现部分43根据放大的自适应代码矢量ACV1和放大的固定代码矢量FCV1来再现原始激励信号SEXC0,并把其结果输出给开关SW1。
当编码语音信号BS的连续帧误差数目小于预定基准帧误差数目“4”时,就把开关SW1设定到LP合成滤波器28一侧。
于是,原始激励信号SEXC0被输出给LP合成滤波器28作为激励信号SEXC。此外,该激励信号SEXC还被写入自适应代码矢量译码器22的存储器之中作为新的自适应代码矢量ACV,并且消除该存储器中最老的自适应代码矢量ACV。
LP合成滤波器28根据激励信号SEXC和LSP系数CLSP来执行LP合成以便再现语音信号SSPC,然后把结果输出给后处理滤波器29。
后处理滤波器29对语音信号SPC执行后处理滤波,然后把其结果输出给旁通滤波器/上定标部分30。
旁通滤波器/上定标部分30对输入的语音信号SSPC执行旁通滤波处理和上定标处理,并把其结果作为译码语音信号SP进行输出。
这样一来,在连续帧误差数目小于“4”时,即在编码语音信号BS的接收状态良好时,具有恰当电平的激励信号SEXC被写入到了自适应代码矢量译码器22的存储器之中,由此可利用写入该存储器的过去的激励信号SEXC来执行译码,所以可输出具有最佳功率的译码语音信号SP。
当出现连续帧误差时。
一旦出现帧误差,就执行迅速衰减译码结果的隐蔽处理。当这种隐蔽处理连续超过多个帧周期时,在自适应代码矢量译码器22的存储器内的自适应代码矢量ACV就逐渐地趋于“0”。在例如R.Salam等人发表于IEEE“语音和音频处理”会刊(1998年3月,6卷,2期)上的论文“CS-ACELP的设计和说明长途质量8kb/s语音编码器”中描述了这种隐蔽处理。
当连续帧误差数目超过“4”和这些帧误差随后消失时。
在这种情况下,开关控制部分33输出开关控制信号SSW,以便在从这些帧误差消失起一帧的时间内把开关SW切换至第三放大器44一侧。
这样,激励信号再现部分27就通过开关SW1把再现部分43输出的原始激励信号SEXC0传送给第三放大器44。
由于原始激励信号SEXC0是紧跟在随后被执行的隐蔽处理之后的信号,所以电平较低。但是,激励信号SEXC0被第三放大器44进行了放大,被输出给LP合成滤波器28作为激励信号SEXC,并被写入到自适应代码矢量译码器22作为新的自适应代码矢量ACV。
因此,语音译码器20的过去内部状态(即自适应代码矢量译码器22的存储器中的自适应代码矢量)迅速恢复为正常状态,输出具有与正常情况的功率基本上一样的功率的译码语音信号SP。
所以,与没有执行放大处理的情况相比,译码语音信号S0的主观音质得到提高。
D.实施例的改进虽然以上针对语音信号处理装置的具体例子描述了CS-ACELP类型的语音译码器,但本发明可应用于其它格式的语音信号处理装置,例如采用APC(自适应预测编码)、LPC(线性预测编码)、RELP(余数激励LPC)或CELP(代码激励LPC)的语音译码器,只要它们是执行预测编码的语音信号处理装置即可。
权利要求
1.语音译码器,它接收预测编码语音信号帧,根据所述编码语音信号和内部状态产生激励信号,根据这些激励信号产生译码语音信号以及更新所述内部状态,并且,如果存在帧代码误差,就执行隐蔽处理来衰减所述激励信号,所述语音译码器包括放大控制装置,它在出现超过预定基准帧误差数目的连续帧误差时,就在这些连续帧误差已消失后的预定时间内输出放大指示信号,以及放大装置,它在所述放大指示信号正在被输出的时候放大所述激励信号。
2.权利要求1的语音译码器,其中所述放大控制装置包括误差检测装置,它检测所述帧误差并输出误差检测信号;计数装置,它根据所述误差检测信号对具有帧误差的连续帧数目进行计数,并输出连续帧误差数目;放大指示信号输出装置,它当从所述计数装置输出的连续帧误差数目超过所述基准帧误差数目时,在这些帧误差消失之后起的预定时间内输出所述放大指示信号。
3.权利要求1的语音译码器,所述译码器译码由CELP类型语音编码器编码的信号。
4.一种语音译码方法,用于接收预测编码语音信号帧,根据所述编码语音信号和内部状态产生激励信号,根据这些激励信号产生译码语音信号以及更新所述内部状态,并且,如果存在帧代码误差,就执行隐蔽处理来衰减所述激励信号,所述语音译码方法还包括以下步骤在出现超过预定基准帧误差数目的连续帧误差时,就在这些连续帧误差已消失后出现预定数目帧的时间内放大所述激励信号。
全文摘要
一种语音译码器(10),包括译码处理部分(11)和放大处理控制部分(12)。译码处理部分(11)是译码接收的编码语音信号(比特流)BS并输出译码语音信号SP的装置。此外,放大处理控制部分(12)监视编码语音信号BS中的帧误差的出现,一旦连续帧误差的数目超过预定基准帧误差数目,就在这些连续帧误差消失后出现预定数目帧的时间内输出放大指示。于是,代替在译码处理部分(11)的译码处理过程中获得的码簿数据DCB,把通过放大码簿数据DCB而产生的放大的码簿数据DACB提供给合成滤波器部分(17),并将其写入到译码处理部分(11)的码簿译码器(18)之中作为新的原始码簿数据DCB0。因此,在连续帧误差之后,能够以接近原来预定的功率的功率来译码编码语音信号BS,这样就能够提高译码语音SP的主观音质。
文档编号H04B14/04GK1272199SQ99800841
公开日2000年11月1日 申请日期1999年5月27日 优先权日1998年5月27日
发明者仲信彦 申请人:Ntt移动通信网株式会社
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1