在基于代数码激励线性预测/变换编码激励的音频压缩期间低频加重的方法和设备的制作方法

文档序号:2829004阅读:454来源:国知局
专利名称:在基于代数码激励线性预测/变换编码激励的音频压缩期间低频加重的方法和设备的制作方法
技术领域
本发明涉及在例如数字发送和存储系统中的声音信号的编码和解码。具体上,但是不排他地,本发明涉及混合变换和码激励线性预测(CELP)的编码和解码。
背景技术
信息的数字表示提供了许多优点。在声音信号的情况下,使用例如PCM(脉冲编码调制)格式来数字化诸如语音或音乐信号之类的信息。因此以例如每个采样16或20比特来采样和量化所述信号。虽然简单,但是所述PCM格式需要高的比特率(每秒的比特数量或比特/秒)。这个限制是设计有效的源编码技术的主要动机,有效的源编码技术能够降低源比特率,并且在音频质量、编码延迟和复杂性上满足许多应用的特定限制。
数字音频编码器的功能是用于将声音信号转换为比特流,所述比特流例如通过通信信道被发送或被存储在存储介质中。在此,考虑有损源编码、即信号压缩。更具体而言,数字音频编码器的角色是表示采样,诸如在保持良好的主观(subjective)音频质量的同时通过较小数量比特的PCM采样。解码器或合成器响应于所述被发送或存储的比特流而将其转换回声音信号。参见[Jayant,1984]和[Gersho,1992]来获得对于信号压缩方法的介绍,参见[Kleijn,1995]的总体章节来获得对于现代语音和音频编码技术的深入观察。
在高质量的音频编码中,可以区分两类的算法码激励线性预测(CELP)编码,它被设计来主要编码语音信号;以及感知(perceptual)变换(或子带)编码,它被良好地适配来表示音乐信号。这些技术可以获得在主观质量和比特率之间的良好折中。已经在诸如电话或会议之类的低延迟双向应用的环境中开发了CELP编码,其中,通常以例如8或16kHz来采样音频信号。感知变换编码已经大部分被应用到以例如32、44.1或48kHz采样的宽带高保真的音乐信号,以用于流或存储应用。
CELP编码[Atal,1985]是最现代的语音编码标准的核心框架。按照这种编码模式,以被称为帧的N个采样的连续块来处理语音信号,其中,N是通常对应于例如10-30ms的采样的预定数量。通过经由线性预测而去除在连续语音采样之间的时间相关性并且使用有效的矢量量化(VQ)来实现比特率的降低。每个帧计算和发送线性预测(LP)滤波。LP滤波的计算通常要求超前,诸如从随后的帧起的5-10ms的语音段(segment)。总体上,将N采样的帧划分为被称为子帧的更小的块,以便应用音节(pitch)预测。可以将所述子帧长度设置在例如范围4-10ms内。在每个子帧中,通常从两个分量获得激励信号,所述两个分量即过去激励部分和革新的或固定的代码本(codebook)激励。从过去激励的部分形成的分量经常被称为自适应代码本或音节激励。代表激励信号的特征的参数被编码和发送到解码器,其中,所述激励信号被重建和用作LP滤波器的输入。CELP编码的一个实例是ACELP(代数CELP)编码模型,其中,所述革新的代码本由交织的带符号脉冲构成。
已经在窄带语音编码的环境中开发了CELP模型,对于窄带语音编码而言,输入带宽是300-3400Hz。在被限定在50-7000Hz频带中的宽带语音信号的情况下,通常在分带方法中使用所述CELP模型,其中,通过波形匹配(CELP编码)来编码较低频带,并且参数编码较高的频带。这种带宽划分具有几个动机-帧的大部分比特可以被分配到较低频带的信号以最大化质量。
-与全带编码相比较,可以降低计算复杂性(滤波的,等)。
-而且,波形匹配对于高频分量不是很有效。
这种分带方法用于例如在ETSI AMR-WB宽带语音编码标准中。在[3GPP TS26.190]中指定并且在[Bessette,2002]中描述了这种编码标准。在[3GPP TS26.173]中给出了AMR-WB标准的实现。AMR-WB语音编码算法实质上包括将输入宽带信号划分为较低频带(0-6400Hz)和较高频带(6400-7000Hz);并且将ACELP算法仅仅应用到较低频带,并且通过带宽扩展(BWE)来编码较高的频带。
在感知变换(或子带)编码上建立了技术发展水平的音频编码技术,诸如MPEG-AAC或ITU-T G.722.1。在变换编码中,通过重叠适当长度的窗口来处理时域音频信号。通过特定变换的去相关和能量压缩性质以及仅仅编码感知相关联的变换系数,来实现比特率的降低。通常通过离散傅立叶变换(DFT)、离散余弦变换(DCT)或修改的离散余弦变换(MDCT)来分解(分析)窗口信号。通常需要诸如40-60ms的帧长度来实现良好的音频质量。但是,为了表示瞬态和避免在启动(attack)之前的编码噪声的时间扩展(前回声),例如5-10ms的较短帧也用于描述不稳定音频段。通过在量化之前使用比例(scale)因子来归一化变换系数而实现量化噪声整形。所述被归一化的系数通常通过随后的霍夫曼(Huffman)编码的标量(scalar)量化而被编码。并行地,计算感知屏蔽曲线以控制所述量化处理,并且优化主观质量;这个曲线用于编码最感知相关联的变换系数。
为了改善编码效率(具体上以低比特率),频带划分也可以用于变换编码。这种方法用于例如在也被称为aacPlus的新的高效MPEG-AAC标准中。在aacPlus中,所述信号被划分为两个子带,通过感知变换编码(AAC)来编码较低频带的信号,而通过作为一种带宽扩展(BWE)的所谓的光谱带复制(SBR)来描述较高频带的信号。
在诸如音频/视频会议、多媒体存储和因特网音频流之类的特定应用中,音频信号通常由语音、音乐和混合内容构成。因此,在这样的应用中,使用对于这种类型的输入信号具有鲁棒性的音频编码技术。换句话说,所述音频编码算法应当实现广泛种类音频信号的良好和一致的质量,所述广泛种类音频信号包括语音和音乐。尽管如此,CELP技术公知本质地被语音优化,但是可能当用于编码音乐信号时存在问题。另一方面,技术发展水平的感知变换编码对于音乐信号具有良好的性能,但是不适合于编码语音信号,特别是以低比特率。
已经考虑了几种方法来以良好和相当恒定的质量来编码总体音频信号,包括语音和音乐。在[Moreau,1992]、[Lefebvre,1994]、[Chen,1996]和[Chen,997]中描述的变换预测编码提供了将语音和音乐编码技术包含到单个框架中的良好基础。这种方法组合线性预测和变换编码。将在下面的说明中考虑[Lefebvre,1994]的技术,所述技术被称为TCX(变换编码激励)编码,它等同于[Moreau,1992]、[Chen,1996]和[Chen,997]中的那些技术。
原来,对于[Lefebvre,1994]设计了TCX编码的两种变化形式一种用于使用短帧和音节预测的语音信号,另一种用于具有长帧和无音节预测的音乐信号。在两种情况下,可以以两个步骤来分解在TCX编码中涉及的处理
1)通过时间滤波来处理音频信号的当前帧以获得所谓的目标信号,然后2)在变换域中编码所述目标信号。
目标信号的变换编码使用具有矩形窗口的DFT。但是,为了降低在帧边界的块化假象(blocking artifact),已经在[Jbira,1998]中在DFT之前使用了具有小重叠的窗口。在[Ramprashad,2001]中,代之而使用具有窗口转换的MDCT;MDCT具有如下优点提供比DFT更好的频率分辨率,同时是最大抽选的(maximally-dicimated)滤波器组。但是,在[Ramprashad,2001]的情况下,编码器不以闭环运行,特别是对于音节分析。在这一点上,[Ramprashad,2001]的编码器不能有资格作为TCX的变体。
目标信号的表示不仅在TCX编码中扮演角色,而且控制一部分TCX音频质量,因为它消耗了在每个编码帧中的可使用比特的大部分。在此参见在DFT域中的变换编码。已经提出了几种方法来编码在这个域中的目标信号,参见例如[Lefebvre,1994]、[Xie,1996]、[Jbira,1998]、[Schnitzler,1999]和[Bessette,1999]。所有这些方法实现了增益形状量化的形式,这表示在实际编码之前通过因子或全局增益g来首先归一化目标信号的频谱。在[Lefebvre,1994]、[Xie,1996]、[Jbira,1998]中,这个因子g被设置为频谱的RMS(均方根)值。但是,总体上,可以通过测试因子g的不同值来在每个帧中优化它,如例如在[Schnitzler,1999]和[Bessette,1999]中所公开的那样。[Bessette,1999]未公开因子g的实际优化。为了改善TCX编码的质量,已经在[Schnitzler,1999]和[Bessette,1999]中使用了噪声填入(即插入舒适的(comfort)噪声来取代未量化的系数)。
如在[Lefebvre,1994]中所述,TCX编码可以是非常成功的代码宽带信号,诸如以16kHz采样的信号;对于以16千比特/秒的采样率的语音和对于以24千比特/秒的采样率的音乐而言,音频质量良好。但是,TCX编码不如用于编码语音信号的ACELP有效。为此,已经在[Bessette,l999]中简短地提出了转换的ACELP/TCX编码测略。ACELP/TCX编码的概念例如类似于[Combescure,1999]的ATCELP(自适应变换和CELP)技术。显然,可以通过在不同模式之间转换来最大化音频质量,所述不同模式实际上专用于编码特定类型的信号。例如,CELP编码专用于语音,变换编码更适合于音乐,因此将这两个技术组合到多模式框架中是自然的,在所述多模式框架中,使用最适当的编码工具来自适应地编码每个音频帧。在ATCELP编码中,在CELP和变换编码之间的转换不是无缝的;它要求过渡模式。而且,应用开环模式确定,即,在基于可用音频信号的编码之前,进行模式确定。相反,ACELP/TCX提供了使用两个同类线性预测模式(ACELP和TCX编码)的优点,这使得转换更容易;而且,模式确定是闭环的,这表示测试了所有的编码模式,并且可以选择最佳的合成。
虽然[Bessette,1999]简短地提供了转换的ACELP/TCX编码策略,但是[Bessette,1999]未公开ACELP/TCX模式确定和在ACELP/TCX编码中的TCX目标信号的量化的细节。基础的量化方法仅仅公知基于可自定标(self-scalable)的多速率点阵(lattice)矢量量化,如由[Xie,1996]所介绍的那样。
参见[Gibson,1988]和[Gersho,1992]来获得对于点阵矢量量化的介绍。N维点阵是在N维(欧几里得)空间中的点的规则阵列。例如,[Xie,1996]使用8维点阵,被称为Gosset(戈赛特)点阵,它被定义为RE8=2D8∪{2D8+(1,...,1)} (1)其中D8{(x1,...,x8)∈Z8|x1+...+x8是奇数} (2)并且D8+(1,...,1)={(x1+1,...,x8+1)∈Z8|(x1,...,x8)∈D8}(3)这个数学结构使得能够量化八(8)个实数的块。RE8也可以被更直观地定义为用于验证下述属性的点的集(x1,...,x8)i.分量xi是带符号的整数(对于i=1,...,8);ii.和x1+...+x8是4的倍数;并且iii.分量xi具有相同的奇偶性(对于i=1,...,8),即它们或者全部是偶数,或全部是奇数。
可以然后通过选择RE8的有限子集来获得8维的量化代码本。通常,均方误差是代码本搜索标准。在[Xie,1996]的技术中,根据所述RE8点阵来定义六(6)个不同的代码本,它们被称为Q0、Q1、...、Q5。每个代码本Qn包括24n个点,其中n=0、1、...、5,对应于每个8维子矢量4n个比特或每个采样n/2个比特的速率。通过比例因子g而归一化的TCX目标信号的频谱然后通过将其划分为8维的子矢量(或子频带)而量化。这些子矢量的每个被编码为代码本Q0、Q1、...、Q5之一。因此,在通过因子g的归一化后的TCX目标信号的量化对于每个8维子矢量产生代码本编号n,用于指示已经使用了哪个代码本Qn;以及指标i,用于识别在代码本Qn中的特定代码矢量。这个量化处理被称为多速率点阵矢量量化,用于具有不同速率的代码本Qn。[Bessette,1999]的TCX模式遵循相同的原理,但是,不提供关于归一化因子g的计算或量化指标和代码本编号的复用的细节。
基于RE8的[Xie,1996]的点阵矢量量化技术已经在[Ragot,2002]中被扩展以改善效率和降低复杂性。但是,从未提出向TCX编码应用由[Ragot,2002]描述的概念。
在[Ragot,2002]的设备中,通过多速率量化器来编码8维矢量,所述多速率量化器包含被表示为{Q0、Q2、Q3、...、Q36}的一组RE8代码本。在所述组中未定义代码本Q1,以便改善编码效率。所有的代码本Qn被构造为同一8维RE8点阵的子集,QnRE8。被定义为每维比特的第n代码本的比特率是4n/8,即每个代码本Qn包含24n代码向量。所述多速率量化器的结构按照[Ragot,2002]的教导。对于给定的8维输入矢量,所述多速率量化器的编码器找到在RE8中的最近的邻居,并且输出在对应的代码本Qn中的代码本编号n和指标i。通过向量化指标、即代码本编号n和划分部分的指标i应用熵编码技术而改善编码效率。在[Ragot,2002]中,在复用到具有一元代码的比特流之前,编码代码本编号n,所述一元代码包括数量n-1个1和一个0停止比特。由所述一元代码表示的代码本编号被表示为nE。对于代码本指标i,不使用熵编码。在下面的表1中例示了nE和i的一元代码和比特分配。
表1对代码本编指标所需要的比特数量

如在表1中所示,当n=0时需要一个比特来用于编码输入矢量,否则,需要5n个比特。
而且,在音频编码中的一个实际问题是格式化比特流和处理坏帧,也称为帧消除隐藏(frame-erasure concealment)。通常在编码侧将比特流格式化为比特的连续帧(或块)。由于信道损坏(例如CRC(循环冗余查看)破坏、包(packet)丢失或延迟等),因此可能在解码侧未正确地接收到一些帧。在这种情况下,解码器通常接收声明帧消除的标志,并且根据解码器的过去历史来通过外推(extrapolate)而“解码”坏帧。用于在CELP解码中处理坏帧的通常规程包括重新使用过去的LP合成滤波器,并且外推先前的激励。
为了改善对于帧丢失的鲁棒性,可以使用参数重复,也称为前向纠错或FEC编码。
在现有技术中仍未处理TCX或转换的ACELP/TCX编码的帧消除隐藏的问题。

发明内容
按照本发明,提供了(1)一种用于低频加重在频域中被变换并且包括以多个块编组的变换系数的声音信号的频谱的方法,包括计算具有位置指标的一个块的最大能量;对于具有小于具有最大能量的块的位置指标的位置指标的每个块计算因子,对于每个块,因子的计算包括-计算所述块的能量;以及-从计算的最大能量和所计算的所述块的能量来计算所述因子;以及对于每个块,从所述因子确定被应用到所述块的变换系数的增益。
(2)一种用于低频加重在频域中被变换并且包括以多个块编组的变换系数的声音信号的频谱的设备,包括装置,用于计算具有位置指标的一个块的最大能量;装置,用于对于具有小于具有最大能量的块的位置指标的位置指标的每个块计算因子,对于每个块,所述因子计算装置包括-装置,用于计算所述块的能量;以及-装置,用于从计算的最大能量和所计算的所述块的能量来计算所述因子;以及装置,用于对于每个块、从所述因子确定被应用到所述块的变换系数的增益。
(3)一种用于低频加重在频域中被变换并且包括以多个块编组的变换系数的声音信号的频谱的设备,包括具有位置指标的一个块的最大能量的计算器;具有小于具有最大能量的块的位置指标的位置指标的每个块的因子的计算器,其中对于每个块,所述因子计算器-计算所述块的能量;以及-从计算的最大能量和所计算的所述块的能量来计算所述因子;以及对于每个块和响应于所述因子的增益的计算器,所述增益被应用到所述块的变换系数。
(4)一种用于处理所接收的、编码的声音信号的方法,包括从所接收的、被编码的声音信号提取编码参数,所提取的编码参数包括所述声音信号的频率变换的变换系数,其中,使用如上所述定义的方法来低频加重所述变换系数;处理所提取的编码参数,以合成所述声音信号,处理所提取的编码参数,包括低频去加重所述低频加重的变换系数。
(5)一种用于处理所接收的、编码的声音信号的解码器,包括输入解码器部分,它被提供所接收的、被编码的声音信号,并且用于实现从所接收的、被编码的声音信号对于编码参数的提取器,所提取的编码参数包括所述声音信号的频率变换的变换系数,其中,使用如上所述定义的设备来低频加重所述变换系数;所提取的编码参数的处理器,用于合成所述声音信号,所述处理器包括低频去加重模块,它被提供低频加重的变换系数。
(6)一种用于通过带宽扩展方案编码通过将全带宽声音信号分离为HF信号和LF信号而获得的HF信号的HF编码方法,包括对于所述LF和HF信号执行LPC分析以产生对于所述LF和HF信号的频谱包络建模的LPC系数;从所述LCP系数计算HF匹配差的估计;计算所述HF信号的能量;处理所述LF信号以产生所述HF信号的合成版本;
计算所述HF信号的合成版本的能量;计算在所计算的HF信号的能量和所计算的HF信号的合成版本的能量之间的比率,并且将所计算的比率表达为HF补偿增益;以及计算在HF匹配增益的估计和HF补偿增益之间的差以获得增益校正;其中,所述编码的HF信号包括LPC参数和增益校正。
(7)一种HF编码设备,用于通过带宽扩展方案来编码通过将全带宽声音信号分离为HF信号和LF信号而获得的HF信号,包括用于对于所述LF和HF信号执行LPC分析以产生对于所述LF和HF信号的频谱包络建模的LPC系数的装置;用于从所述LPC系数计算HF匹配差的估计的装置;用于计算所述HF信号的能量的装置;用于处理所述LF信号以产生所述HF信号的合成版本的装置;用于计算所述HF信号的合成版本的能量的装置;用于计算在所计算的HF信号的能量和所计算的HF信号的合成版本的能量之间的比率的装置,和用于将所计算的比率表达为HF补偿增益的装置;以及用于计算在HF匹配增益的估计和HF补偿增益之间的差以获得增益校正的装置;其中,所述编码的HF信号包括LPC参数和增益校正。
(8)一种HF编码设备,用于通过带宽扩展方案来编码通过将全带宽声音信号分离为HF信号和LF信号而获得的HF信号,包括LPC分析装置,它被提供LF和HF信号,并且响应于所述HF信号而产生对于所述LF和HF信号的频谱包络建模的LPC系数;响应于所述LPC系数的匹配HF增益的估计的计算器;HF信号的能量的计算器;滤波器,它被提供所述LF信号,并且响应于所述LF信号而产生所述HF信号的合成版本;所述HF信号的合成版本的能量的计算器;在所计算的HF信号的能量和所计算的HF信号的合成版本的能量之间的比率的计算器;转换器,它被提供所计算的比率,并且将所述计算的比率表达为HF补偿增益;以及用于在HF匹配增益的估计和HF补偿增益之间的差以获得增益校正的计算器;其中,所述编码的HF信号包括LPC参数和增益校正。
(9)一种用于解码通过带宽扩展方案而编码的HF信号的方法,包括接收编码的HF信号;从编码的HF信号提取LPC系数和增益校正;从所提取的LPC系数计算HF增益的估计;将所述增益校正加到所计算的HF增益的估计以获得HF增益;通过所述HF增益来放大LF激励信号以产生HF激励信号;以及通过HF合成滤波器来处理所述HF激励信号以产生HF信号的合成版本。
(10)一种用于解码通过带宽扩展方案而编码的HF信号的解码器,包括用于接收编码的HF信号的装置;用于从编码的HF信号提取LPC系数和增益校正的装置;用于从所提取的LPC系数计算HF增益的估计的装置;用于将所述增益校正加到所计算的HF增益的估计以获得HF增益的装置;用于通过所述HF增益来放大LF激励信号以产生HF激励信号的装置;以及用于通过HF合成滤波器来处理所述HF激励信号以处理HF信号的合成版本的装置。
(11)一种用于解码通过带宽扩展方案而编码的HF信号的解码器,包括输入器,用于接收编码的HF信号;解码器,它被提供所述编码的HF信号,并且从编码的HF信号提取LPC系数;解码器,它被提供编码的HF信号,并且从编码的HF信号提取增益校正;计算器,用于从所提取的LPC系数计算HF增益的估计;加法器,用于将所述增益校正加到所计算的HF增益的估计以获得HF增益;放大器,用于通过所述HF增益来放大LF激励信号以产生HF激励信号;以及HF合成滤波器,它被提供HF激励信号,并且响应于所述HF激励信号而产生HF信号的合成版本。
(12)一种用于在按照第一编码模式编码的先前帧和按照第二编码模式编码的当前帧之间的结合处从所述第一声音信号编码模式向所述第二声音信号编码模式转换的方法,其中,通过加权滤波器来滤波所述声音信号以在当前帧中产生加权的信号,所述方法包括计算所述加权滤波器的零输入响应;为零输入响应建立窗口以便所述零输入响应具有在预定的时段后单调地降低到零的幅度;以及在当前帧中,从加权的信号去除被建立窗口的零输入响应。
(13)一种用于在按照第一编码模式编码的先前帧和按照第二编码模式编码的当前帧之间的结合处从所述第一声音信号编码模式向所述第二声音信号编码模式转换的设备,其中,通过加权滤波器来滤波所述声音信号以在当前帧中产生加权的信号,所述设备包括用于计算所述加权滤波器的零输入响应的装置;用于为零输入响应建立窗口以便所述零输入响应具有在预定的时段后单调地降低到零的幅度的装置;以及用于在当前帧中从加权的信号去除被建立窗口的零输入响应的装置。
(14)一种用于在按照第一编码模式编码的先前帧和按照第二编码模式编码的当前帧之间的结合处从所述第一声音信号编码模式向所述第二声音信号编码模式转换的设备,其中,通过加权滤波器来滤波所述声音信号以在当前帧中产生加权的信号,所述设备包括计算器,用于计算所述加权滤波器的零输入响应;窗口产生器,用于为零输入响应建立窗口,以便所述零输入响应具有在预定的时段后单调地降低到零的幅度;以及加法器,用于在当前帧中从加权的信号去除被建立窗口的零输入响应。
(15)一种用于在按照第一编码模式而编码的当前帧中从解码的目标信号产生重叠相加的目标信号的方法,包括在给定的窗口中建立当前帧的解码目标信号的窗口;跳过所述窗口的余下(left)部分;
计算按照第二编码方案而编码的先前帧的加权滤波器的零输入响应,并且为零输入响应建立窗口,以便所述零输入响应具有在预定的时段后单调地降低到零的幅度;以及将所计算的零输入响应加到被解码的目标信号以重建所述重叠相加的目标信号。
(16)一种用于在按照第一编码模式而编码的当前帧中从解码的目标信号产生重叠相加的目标信号的设备,包括用于在给定的窗口中建立当前帧的解码目标信号的窗口的装置;用于跳过所述窗口的余下部分的装置;用于计算按照第二编码方案而编码的先前帧的加权滤波器的零输入响应的装置,和用于为零输入响应建立窗口以便所述零输入响应具有在预定的时段后单调地降低到零的幅度的装置;以及用于将所计算的零输入响应加到被解码的目标信号以重建所述重叠相加的目标信号的装置。
(17)一种用于在按照第一编码模式而编码的当前帧中从解码的目标信号产生重叠相加的目标信号的设备,包括第一窗口产生器,用于在给定的窗口中建立当前帧的解码目标信号的窗口;用于跳过所述窗口的余下部分的装置;计算器,用于计算按照第二编码方案而编码的先前帧的加权滤波器的零输入响应,和第二窗口产生器,用于为零输入响应建立窗口以便所述零输入响应具有在预定的时段后单调地降低到零的幅度;以及加法器,用于将所计算的零输入响应加到被解码的目标信号以重建所述重叠相加的目标信号。
通过参见附图阅读仅作为例子给出的对于本发明的说明性实施例的下面的非限定性说明,本发明的上述和其他目的、优点和特征将变得更清楚。


在附图中图1是按照本发明的编码器的一个实施例的高层示意方框图;图2是在超帧(super-frame)中的帧类型的时序图的非限定示例;
图3示出为线性预测分析建立的窗口的非限定性示例、以及用于5毫秒子帧和依赖于20毫秒ACELP、20毫秒TCX、40毫秒TCX或80毫秒TCX帧模式的内插因子;图4a-4c图解依赖于当前帧模式和长度以及过去帧模式的、在ACELP/TCX编码器中的帧窗口建立的非限定性示例;图5a是图解用于TCX帧的、由按照本发明的编码器实现的结构和方法的一个实施例的高层方框图;图5b图解在由图5a的编码器执行的频谱预整形前后的幅度频谱(amplitude spectrum)的非限定性示例;图5c图解用于确定在频谱预整形期间被应用到谱的增益的加权函数的非限定性示例;图6是示出如何根据前述的使用RE8点阵的可自定标的多速率点阵矢量量化器而使用代数编码来量化诸如频率系数之类的一组系数的示意方框图;图7是用于描述在TCX编码器的登录域中的迭代全局增益估计规程的非限定性示例的流程图,这个全局估计规程是使用点阵量化器在TCX编码中实现的步骤,用于在保持在给定帧的比特预算内的同时降低复杂性;图8是图解在TCX帧中的全局增益估计和噪声水平估计(逆注水(reversewaterfilling))的非限定性示例的图;图9是示出当计算所述划分部分的点阵点指标时处理在TCX编码中的比特预算溢出的示例的流程图;图10a是示出基于带宽扩展的高频(HF)编码器的非限定性示例的示意方框图;图10b是示出在由图10a的编码器计算的低频包络和高频包络之间的、由图10a的编码器执行的增益匹配规程的非限定性示例的示意方框图和图形;图11是按照本发明的解码器的一个实施例的高层方框图,示出了使用混合ACELP/TCX编码的低频信号和使用带宽扩展而编码的HF信号的重新组合;图12是图解LF信号的ACELP/TCX解码器的非限定性示例的示意方框图;图13是示出在处理形成80毫秒帧的四(4)个包时在ACELP/TCX解码后的逻辑的非限定性示例的流程图;
图14包括图14a和图14b,是图解在图12的ACELP/TCX解码器中使用的ACELP解码器的非限定性示例的示意方框图;图15包括图15a和图15b,是示出在图12的ACELP/TCX解码器中使用的TCX解码器的非限定性示例的示意方框图;图16是根据带宽扩展方法而运行的HF解码器的非限定性示例的示意方框图;图17是在解码器侧的后处理和合成滤波器组的非限定性示例的示意方框图;图18是LF编码器的非限定性示例的示意方框图,用于示出如何使用段SNR(信噪比)标准来在竞争中试用ACELP和TCX编码器,以在80毫秒超帧中选择每个帧的适当的编码模式。
图19是示出对于每个80毫秒超帧在编码器侧应用的预处理和子带分解的非限定性示例的示意方框图;图20是用于描述图5a的编码器的频谱预整形模块的操作的示意流程图;以及图21是用于描述图15的解码器的自适应低频去加重(de-emphasis)模块的操作的示意流程图。
具体实施例方式
将结合使用ACELP/TCX编码模型和可自定标多速率点阵矢量量化模型的音频编码/解码设备来公开本发明的非限定性说明性实施例。但是,应当记住,本发明可以等同地被应用到其他类型的编码和量化模型。
编码器的概述编码器的高层说明在图1中图解了按照本发明的编码器的一个实施例的高层示意方框图。
参见图1,输入信号以16kHz或更高的频率来采样,并且在诸如T毫秒(ms)的1.004的超帧中编码,例如T=80毫秒。每个超帧1.004以类似于在AMR-WB中的预处理的方式被预处理和划分为例如两个子带。诸如1.005之类的低频(LF)信号被定义在0-6400Hz的频带内,而诸如1.006之类的高频(HF)信号被定义在6400-FmaxHz频带内,其中,Fmax是奈奎斯特(Nyquist)频率。所述奈奎斯特频率是理论上允许无失真地重建原始信号的最小采样频率对于其频谱标称从0频率到最大频率延伸的信号,所述奈奎斯特频率等于这个最大频率的两倍。
仍然参见图1,在所图解的示例中,通过在AMR-WB核心上建立的多模式ACELP/TCX编码(参见模块1.002)来编码所述LF信号1.005。AMR-WB运行在80毫秒超帧内的20毫秒帧上。ACELP模式基于AMR-WB编码算法,因此运行在20毫秒帧上。TCX模式可以运行在80毫秒超帧内的20、40或80毫秒帧上。在这个说明性示例中,使用分别具有2.5、5和10毫秒的重叠的20、40和80毫秒的三(3)个TCX帧长度。需要所述重叠来降低在TCX模式中的成帧的效果(如同在变换编码中)。
图2提供了LF信号的ACELP/TCX编码的帧类型的时序图的一个示例。如在图2中所示,可以在80毫秒超帧2.005内的第一2.001、第二2.002、第三2.003和第四2.004 20毫秒的ACELP帧的任何一个中选择ACELP模式。类似地,可以在80毫秒超帧2.005内的第一2.006、第二2.007、第三2.008和第四2.009 20毫秒的TCx帧的任何一个中使用TCX模式。另外,前两个和最后两个20毫秒帧可以被编组在一起以形成40毫秒的TCX帧2.011和2.012以便以TCX模式被编码。最后,可以在一个单个80毫秒TCX帧2.010中编码整个80毫秒超帧2.005。因此,可以获得ACELP和TCX帧的总共26个不同的组合来编码诸如2.005之类的80毫秒的超帧。在闭环中确定所述帧的类型ACELP或TCX和它们在80毫秒超帧中的长度,如下所述。
向回参见图1,使用带宽扩展方法来编码HF信号1.006(参见HF编码模块1.003)。在带宽扩展中,使用激励滤波器参数模型,其中,使用很少的比特来编码所述滤波器,并且其中,从所接收的LF信号激励来在解码器重建所述激励。而且,在一个实施例中,针对低频带(ACELP/TCX)所选择的帧类型直接地控制用于在80毫秒超帧中的带宽扩展的帧长度。
超帧配置以(m1,m2,m3,m4)的形式在表2中列出了所有可能的超帧配置,其中,mk表示对于在80毫秒超帧内的20毫秒的第k个帧所选择的帧类型,以便mk=0,对于20毫秒的ACELP帧,mk=1,对于20毫秒的TCX帧,mk=2,对于40毫秒的TCX帧,mk=3,对于80毫秒的TCX帧。
例如,配置(1,0,2,2)指示通过下述方式来编码80毫秒超帧将第一20毫秒帧编码为20毫秒TCX帧(TCX20),随后将第二20毫秒帧编码为20毫秒ACELP帧,最后将最后两个20毫秒帧编码为单个40毫秒TCX帧(TCX40)。类似地,配置(3,3,3,3)指示80毫秒TCX帧(TCX80)定义了整个超帧2.005。
表2所有可能的26个超帧配置

模式选择可以通过开环或闭环确定来确定所述超帧配置。所述开环方法包括在超帧编码之前在某些分析之后选择超帧配置,使得降低整体复杂性。所述闭环方法包括尝试所有的超帧组合,并且选择最佳者。与开环确定相比较,闭环确定总体上提供较高的质量,而在复杂性上折中。在下面的表3中总结了闭环确定的非限定性示例。
在闭环确定的这个非限定性示例中,可以仅仅使用11次尝试来选择表2的所有26个可能的超帧配置。表3的左半部分(尝试)示出了在所述11次尝试的每个什么编码模式被应用到每个20毫秒帧。Fr1到Fr4指示在超帧中的帧1到帧4。每个尝试编号(1-11)指示在闭环确定处理中的步骤。仅仅在步骤11后知道最后的确定。应当注意在所述11次尝试的仅仅四(4)次中涉及每个20毫秒帧。当在一次尝试中涉及多于一(1)个帧时(参见例如尝试5、10和11),则应用对应长度的TCX编码(TCX40或TCX80)。为了明白闭环确定处理的中间步骤,表3的右半部分给出了闭环确定的示例,其中,在尝试11后的最后确定是TCX80。这对应于在该特定超帧的所有四(4)个20毫秒帧中的模式的值3。在表3的右部的示例中的粗体编号示出了在闭环确定处理的中间步骤中在什么点发生模式选择。
表3闭环模式选择的尝试和示例尝试(11)选择的示例(粗体=进行比较) 表3的闭环确定处理进行如下。首先,在尝试1和2中,在20毫秒帧Fr1上尝试ACELP(AMR-WB)和TCX20编码。然后,对于在这两个模式之间的帧Fr1进行选择。选择标准可以是在加权的信号和合成的加权信号之间的段信噪比(SNR)。使用例如5毫秒段来计算段SNR,并且所选择的编码模式是产生最佳段SNR的那个。在表3的示例中,假定如在表3的右侧以粗体所示那样,保留ACELP模式。
在尝试3和4中,对于在ACELP和TCX20之间的帧Fr2进行相同的比较。在表3的图解示例中,假定TCX20比ACELP好。再次,根据上述的段SNR方法来选择TCX20。在表3的右侧上的第4行中以粗体表示这个选择。
在尝试5中,将帧Fr1和Fr2编组在一起以形成使用TCX40而编码的40毫秒帧。与在第一帧Fr1中的ACELP和在第二帧Fr2中的TCX20相比较,现在所述算法需要在前两个帧Fr1和Fr2的TCX40之间进行选择。在表3的示例中,假定按照上述的段SNR标准来选择序列ACELP-TCX20,如在表3的右侧上的第5行中的粗体所示。
与尝试1-5相同的规程然后被应用到在尝试6-10中的第三Fr3和第四Fr4帧。在表3的示例中的尝试10之后,将四个20毫秒帧分类为用于帧Fr1的ACELP、用于帧Fr2的TCX20和用于被编组在一起的帧Fr3和Fr4的TCX40。
当使用TCX80来编码所有四个20毫秒帧、即整个80毫秒超帧时,执行最后的尝试11。再次,将段SNR标准用于5毫秒段以比较尝试10和11。在表3的示例中,假定最后的闭环确定是用于整个超帧的TCX80。四(4)个20毫秒帧的模式比特将是(3,3,3,3),如在表2中所述。
TCX模式的概述如上所述的闭环模式选择暗示需要在进行模式确定之前使用ACELP和TCX来编码在超帧中的采样。像在AMR-WB中那样执行ACELP编码。执行TCX编码,如在图5的方框图中所示。对于TCX帧20、40和80毫秒,TCX编码模式是类似的,一些差别主要涉及建立窗口和滤波器内插。在下面的编码器的说明中给出了TCX编码的细节。现在,将图5的TCX编码总结如下。
通过感知加权滤波器(与在AMR-WB中相同的感知加权滤波器)来滤波输入的音频信号,以获得加权的信号。以依赖于TCX帧长度的方式来内插所述加权滤波器系数。如果过去的帧是ACELP帧,则从所述加权信号去除感知加权滤波器的零输入响应(ZIR)。所述信号然后被建立窗口(所述窗口形状将在下面的说明中描述),并且向建立窗口的信号应用变换。在所述变换域中,首先预先整形所述信号,以最小化在低频中的编码噪声假象,然后使用在下面的说明中公开的特定点阵量化器来量化。在量化后,向所述频谱应用逆预先整形函数,所述频谱然后被逆变换以提供量化的时域信号。在增益重新定标后,再次向量化的信号应用窗口以最小化在变换域中的量化的块效应。如果先前帧也以TCX模式,则将重叠与相加(overlap-and-add)用于先前帧。最后,通过使用适当的滤波器存储器更新的逆滤波来求出所述激励信号。这个TCX激励在与ACELP(AMR-WB)激励相同的“域”中。
下面将说明在图5中所示的TCX编码的细节。
带宽扩展的概述(BWE)带宽扩展是用于在比特率和复杂性上以低成本来编码HF信号的方法。在这个非限定性示例中,使用激励滤波器模型来编码HF信号。不发送所述激励;而是,解码器从所接收的解码的LF激励外推HF信号激励。不需要比特来发送HF激励信号;与HF信号相关联的所有比特用于发送这个HF信号的频谱包络的逼近。在图1的向下采样的HF信号1.006上计算线性LPC模型(滤波器)。可以使用很少的比特来编码这些LPC系数,因为耳朵的分辨率在较高的频率降低,并且音频信号的频谱动态也在更高的频率趋向于更小。也对于每20毫秒的帧发送增益。需要这个增益来补偿在从LF激励信号外推的HF激励信号和与HF信号相关联的所发送的LPC滤波器之间的匹配的缺少。在导抗频谱频率(ISF)域中量化所述LPC滤波器。
在较低和较高频带中的编码是时间同步的,以便按照较低频带的模式选择来在超帧上对带宽扩展分段。将在下面的编码器的说明中公开所述带宽扩展模块。
编码参数所述编码参数可以被划分为如图1中所示的三(3)类;超帧配置信息(或模式信息)1.007、LF参数1.008和HF参数1.009。
可以使用不同的方法来编码超帧配置。例如,为了满足特定的系统要求,经常期望或要求发送大的包,诸如80毫秒超帧,作为较小包的序列,其中每个较小包对应于更少的比特并且可能具有更短的持续时间。在此,每个80毫秒超帧被划分为四个连续、较小的包。为了将一个超帧划分为四个包,通过要包括在对应的包中的两个比特来指示对于在一个超帧内的每个20毫秒帧选择的帧的类型。可以通过将整数mk∈{0,1,2,3}映射为其对应的二进制表示来容易地将此实现。应当记起,mk是用于描述对于在80毫秒超帧内的第k个20毫秒帧选择的编码模式的整数。
LF参数依赖于帧的类型。在ACELP帧中,除了用于改善在音乐信号中的启动时AMR-WB的性能的平均能量参数之外,LP参数还与AMR-WB的那些相同。具体上,当在ACELP模式(模式0)中编码20毫秒的帧时,对于在对应的包中的该特定帧发送的LF参数是□ISF参数(从AMR-WB重新使用的46个比特);□平均能量参数(与AMR-WB相比较的2个附加比特);□音节滞后(如同在AMR-WB中);□音节滤波器(如同在AMR-WB中);□固定代码本指标(从AMR-WB重新使用);以及
□代码本增益(如同在3GPP AMR-WB中)。
在TCX帧中,ISF参数与在ACELP模式(AMR-WB)中的相同,但是,对于每个TCX帧仅仅一次地发送它们。例如,如果80毫秒超帧由两个40毫秒的TCX帧组成,则对于整个80毫秒超帧仅仅发送两组ISF参数。类似地,当将所述80毫秒超帧编码为仅仅一个80毫秒TCX帧时,则对于那个超帧发送仅仅一组ISF参数。对于每个TCX帧,即TCX20、TCX40或TCX80的任何一个,发送下面的参数□一组ISF参数(从AMR-WB重新使用的46比特);□用于描述在多速率点阵VQ中的量化频谱系数的参数(参见图6);□用于噪声填充(3比特)的噪声因子;以及□全局增益(标量,7比特)。
将在下面的编码器的说明中公开这些参数和它们的编码。应当注意,在TCX帧中的比特预算的大部分专用于点阵VQ指标。
通过带宽扩展而提供的HF参数通常与频谱包络和能量相关联。下面的HF参数被发送□每个帧一组ISF参数(8、9比特级),其中,帧可以是20毫秒ACELP帧、TCX20帧、TCX40帧或TCX80帧;□HF增益(7比特),被量化为4维增益矢量,每个20、40或80毫秒的帧一个增益;以及□用于TCX40和TCX80帧的HF增益校正,用于修改在这些TCX模式中的更粗略量化的HF增益。
按照一个实施例的比特分配按照此实施例的ACELP/TCX编码解码器可以工作在5个比特率13.6、16.8、19.2、20.8和24.0千比特/秒(kbit/s)。这些比特率与一些AMR-WB速率相关联。用于以所述五(5)个上述的比特率来编码每个80毫秒超帧的比特的数量分别是1088、1344、1536、1664和1920比特。具体上,对于超帧配置分配总共8个比特(每20毫秒帧2个比特),并且对于在每个80毫秒超帧中的带宽扩展分配64个比特。根据期望编码HF增益和频谱包络的分辨率,可以使用更多或更少的比特来用于所述带宽扩展。剩余的比特预算、即大部分比特预算用于编码图1的LF信号1.005。在附表4、5a、5b和5c中给出了对于不同类型的帧的典型比特分配的非限定性示例。在表6中示出了用于带宽扩展的比特分配。这些表指示通常用于编码不同的参数的总的比特预算的百分比。应当注意,在分别对应于TCX40和TCX80帧的表5b和5c中,括号中的数示出了将比特划分为相同大小的2(表5b)或4(表5c)个包。例如,表5c指示,在TCX80模式中,超帧的46个ISF比特(用于整个超帧的一个LPC滤波器)被划分为在第一包中的16比特、在第二包中的6个比特、在第三包中的12个比特和在最后包中的最后12个比特。
类似地,将代数VQ比特(在TCX模式中的比特预算的大部分)划分为2个包(表5b)或4个包(表5c)。进行这种划分使得将量化频谱划分为2个(表5b)或4个(表5c)个交织的轨道(track),其中,每个轨道包含每两个(表5b)频谱块之一或每四个(表5c)频谱块之一。每个频谱块由四个连续的复频谱系数组成。这种交织确保如果包丢失,则它将仅仅引起在TCX40和TCX80帧的解码的频谱中的交织的“孔”。需要谨慎地进行这种将比特划分为用于TCX40和TCX80帧的较小的包,以管理当向给定的包中写入时的溢出。
所述编码器的非限定性说明性实施例的说明在所述编码器的这个实施例中,假定以16kHz或更高的PCM格式来采样音频信号,并且每个采样16比特的分辨率。所述编码器的角色是根据音频信号来计算和编码参数,并且向比特流中发送编码的参数以用于解码和合成。标志向编码器指示输入的采样率是什么。
在图1中示出了所述编码器的这个实施例的简化方框图。
输入信号被划分为80毫秒的连续块,它们在下面的说明中将被称为诸如1.004(图1)之类的超帧。每个80毫秒超帧1.004被预处理器和分析滤波器组1.001使用类似于AMR-WB语音编码的技术预处理,然后被划分为两个子带信号,即LP信号1.005和HF信号1.006。例如,分别在频带0-6400Hz和6400-11025Hz中定义了LF和HF信号1.005和1.006。
如在编码器概述中所公开的那样,通过经由LF(ACELP/TCX)编码模块1.002进行多模式ACELP/TCX编码来编码LF信号1.005,以产生模式信息1.007和量化的LF参数1.008,而通过HF(带宽扩展)编码模块1.003来编码HF信号以产生量化的HF参数1.009。如图1中所示,将在给定的80毫秒超帧内计算的编码参数——包括模式信息1.0078和量化的HF和LF参数1.008和1.009——通过复用器1.010复用为例如四(4)个相同大小的包1.011。
在下面的说明中,将更详细地说明图1的图的主要块,包括预处理器和分析滤波器组1.001、LF(ACELP/TCX)编码编码1.002和HF编码模块1.003。
预处理器和分析滤波器组1.001图19是图1的预处理器和分析滤波器组1.001的示意方框图。参见图19,输入的80毫秒超帧1.004在图1的预处理器和分析滤波器组1.001的输出被划分为两个子带信号,具体上是LF信号1.005和HF信号1.006。
仍然参见图19,使用类似于AMR-WB子带分解的方法,HF向下采样模块19.001使用输入的80毫秒超帧的适当的滤波(参见例如AMR-WB)来执行向下采样,以获得HF信号1.006(80毫秒帧),并且LF向下采样模块19.002使用输入的80毫秒超帧的适当的滤波(参见例如AMR-WB)来执行向下采样,以获得LF信号(80毫秒帧)。HF信号1.006形成在图1中的HF编码模块1.003的输入信号。来自LF向下采样模块19.002的LF信号在被提供至图1的LF编码模块1.002之前被两个滤波器进一步预处理。首先,来自模块19.002的LF信号通过具有截止频率50Hz的高通滤波器19.003而被处理以去除DC分量和很低的频率分量。然后,通过去加重滤波器19.004来处理来自高通滤波器19.003的滤波的LF信号以加重高频分量。这种去加重通常是在宽带语音编码器中,因此,不在本说明书中进一步论述。去加重滤波器19.004的输出构成了被提供至LF编码模块1.002的图1的LF信号1.005。
LF编码在图18中示出了LF编码器的非限定性示例的简化方框图。图18示出了两个编码模式,具体但不排他地是,ACELP和TCX模式在每80毫秒超帧内竞争。具体上,在ACELP编码器18.015和TCX编码器18.016的输出的选择器开关18.017使得能够以ACELP或TCX模式,即以TCX20、TCX40或TCX80模式,来编码在80毫秒超帧内的每个20毫秒帧。模式选择如在上文的编码器概述中所述的那样进行。
因此,LF编码使用两个编码模式被应用到20毫秒帧的ACELP模式和TCX。为了优化音频质量,在TCX模式中的帧的长度允许是变量。如上所述,TCX模式工作在20毫秒、40毫秒或80毫秒的帧上。在图2中图解了在编码器中使用的实际定时结构。
在图18中,首先对于输入LF信号s(n)执行LPC分析。在图3中示出了在LPC分析的窗口类型、位置和长度,其中,所述窗口相对于LF信号的80毫秒段、加上给定的预计(look-ahead)而定位。所述窗口每20毫秒定位。在建立窗口后,LPC系数每20毫秒计算,然后变换为导抗频谱对(ISP)表示,并且被量化以发送到解码器。量化的ISP系数每5毫秒被内插以平滑频谱包络的演变。
具体上,模块18.002响应于输入LP信号s(n)来每20毫秒执行窗口建立和自动相关联。模块18.002后随模块18.003,模块18.003执行滞后窗口建立和白噪声校正。被滞后建立窗口和白噪声校正的信号通过在模块18.004中实现的Levinson-Dubin(列文森-杜宾)算法而被处理。模块18.005然后执行LPC系数的ISP转换。来自模块18.005的ISP系数通过模块18.006而每5毫秒被内插在ISP域中。最后,模块18.007每5毫秒将所内插的ISP系数从模块18.006转换为内插的LPC滤波器系数A(z)。
来自模块18.005的ISP参数在ISF域(模块18.009)中的量化之前在模块18.008中被变换为ISF(导抗频谱频率)参数。来自模块18.009的所量化的ISF参数被提供到ACELP/TCX复用器18.021。
而且,来自模块18.009的量化的ISF参数在模块18.010中被转换为ISP参数。所获得的ISP参数被模块18.011每5毫秒内插在ISP域中,并且内插的ISP参数每5毫秒被转换为量化的LPC参数 图18的LF输入信号s(n)以在上述的说明中的所有可能的帧长度组合在ACELP模式中通过ACELP编码器18.015和在TCX模式中通过TCX编码器18.016而被编码。在ACELP模式中,在80毫秒超帧内仅仅考虑20毫秒帧,而在TCX模式,可以考虑20毫秒、40毫秒和80毫秒帧。表2的所有可能的ACELP/TCX编码组合由编码器18.015和18.016产生,然后通过将对应的合成信号与在加权域中的原始信号相比较而被测试。如表2中所示,最后的选择可以是在编码的80毫秒超帧内的ACELP和TCX帧的混合。
为此,LF信号s(n)通过感知加权滤波器18.013被处理以产生加权的LF信号。以相同的方式,依赖于转换选择器18.017的位置而对来自ACELP编码器18.015或TCX编码器18.016合成的信号通过感知加权滤波器18.018而被处理,以产生加权的合成信号。减法器18.019从所加权的LF信号减去所加权的合成信号以产生加权的误差信号。段SNR计算单元18.020响应于来自滤波器18.013的加权的LP信号和加权的误差信号而产生段的信噪比(SNR)。每个5毫秒子帧产生段SNR,段SNR的计算是本领域内的普通技术人员熟知的,因此将不在本说明书中进一步说明。最小化在80毫秒超帧上的段SNR的ACELP和/或TCX模式的组合被选择作为最佳的编码模式组合。再一次,参见表2,它定义了在80毫秒超帧中的ACELP和/或TCX模式的26个可能组合。
ACELP模式所使用的ACELP模式很类似于在AMR-WB语音编码标准中以12.8kHz运行的ACELP算法。与AMR-WB中ACELP算法相比较的主要改变是□LP分析使用不同的窗口建立,它被图解在图3中。
□每5毫秒子帧中进行代码本增益的量化,如在下面的说明书中所述。
所述ACELP模式工作在5毫秒子帧上,其中,针对每个子帧执行音节分析和代数代码本搜索。
在ACELP模式中的代码本增益量化在给定的5毫秒ACELP子帧中,根据AMR-WB的7比特增益量化来联合量化所述两个代码本增益,其中包括音节增益gp和固定代码本增益gc。但是,在AMR-WB中使用的固定代码本增益gc的移动平均(MA)预测被替换为明确地编码的绝对基准。因此,通过平均去除的量化的形式来量化所述代码本增益。这种无存储器(非预测)的量化较好地被证明,因为ACELP模式可以被应用到非语音信号,诸如在音乐信号中的暂态,它要求比AMR-WB的预测方法更总体的量化。
(在登录域中)绝对基准的计算和量化被表示为μener的参数在开环中被计算,并且使用2个比特而每个帧一次地被量化。LPC余项(residual)r=(r0、r1、...、rL)的当前20毫秒帧——其中L是在帧中的采样数——被划分为四(4)个5毫秒子帧,其中,ri=(ri(0),...,ri(Lsub-1)),其中i=0,1,...,3,并且Lsub是在子帧中的采样数。参数μener被简单定义为在LPC余项的当前帧上的子帧的能量的平均值(以dB为单位)μener(dB)=e0(dB)+e1(dB)+e2(dB)+e3(dB)4]]>其中ei=1+ri(0)2+...+ri(Lsub-1)2Lsub]]>是LPC余项的第i个子帧的能量,并且ei(dB)=10log10{ei}。向在上述方程中的实际子帧能量加上常数1,以避免对于对数值0的随后的计算。
参数μener的平均值然后被更新如下μener(dB)=μener(dB)-5*(ρ1+ρ2)其中,ρi(i=1或2)是作为第i开环音节分析的副产品而计算的归一化关联性。μener的这种修改改善了有声语音段的音频质量。
然后使用2个比特来标量量化平均μener(dB)。使用12dB到18、30、42和54dB的步长来设置量化级。并且可以将量化指标简单地计算为tmp=(μener-18)/12index=floor(tmp+0.5)if(如果)(index<0)index=0,if(index>3)index=3在此,floor表示获取浮点数的整数部分。例如,floor(1.2)=1,并且floor(7.9)=7。
重建的平均值(以dB为单位)因此是μ^ener(dB)=18+(index*12)]]>但是,该index(指标)和重建的平均值然后被更新以改善诸如启动之类的暂态信号的音频质量如下max=max(e1(dB),e2(dB),e3(dB),e4(dB))ifμ^ener(dB)<(max-27)]]>and(并且)index<3,index=index+1 andμ^ener(dB)=μ^ener(dB)+1]]>代码本增益的量化在AMR-WB中,以(gp,gc*gc0)的形式来联合量化音节和固定代码本增益gp、gc,其中,gc0组合gc的MA预测和相对于革新代码矢量的能量的归一化。
实际上如同在AMR-WB语音编码中以(gp,gc*gc0)的形式,以7个比特来联合量化在给定的子帧中的两个增益gp和gc。差别仅仅在于计算gc0。gc0的值仅仅基于量化的平均能量 并且计算如下gc0=10*((μ^ener(dB)-enerc(dB))/20)]]>其中,enerc(dB)=10*log10(0.01+(c(0)*2+...+c(Lsub-1)*2)/Lsub)其中,c(0)、...、c(Lsub-1)是在长度Lsub采样的子帧中的LP余项向量的采样。c(0)是第一采样,c(1)是第二采样,...,c(Lsub)是子帧中最后的LP余项采样。
TCX模式在TCX模式(TCX编码器18.016)中,定义与下一个帧的重叠以降低由于TCX目标信号的变换编码而导致的块化假象。窗口建立和信号重叠都依赖于当前的帧类型(ACELP或TCX)和大小,并且依赖于过去的帧类型和大小。将在下一个部分中公开窗口建立。
在图5a中图解了TCX编码器18.016的一个实施例。现在说明TCX编码规程,然后将说明关于用于量化频谱的点阵量化。
按照一个实施例的TCX编码进行如下。
首先,如在图5a中所示,通过感知加权滤波器5.001来滤波输入信号(TCX帧)以产生加权信号。在TCX模式中,所述感知加权滤波器5.001使用量化的LPC系数 来取代在ACELP模式中使用的非量化的LPC系数A(z)。这是因为,与使用通过合成而分析(analysis-by-synthesis)的ACELP相反,TCX解码器必须应用逆加权滤波器以恢复激励信号。如果先前编码的帧是ACELP帧,则通过加法器5.014来从加权信号去除感知加权滤波器的零输入响应(ZIR)。在一个实施例中,将ZIR删节到10毫秒并且将其建立窗口,以使得其幅度在10毫秒后单调地降低到0(计算器5.100)。可以将几个时域窗口用于此操作。在图5a中未示出ZIR的实际计算,因为这个在CELP类型编码器中也被称为“滤波器振铃(filter ringing)”的信号对于本领域内的普通技术人员是熟知的。一旦计算了加权的信号,则按照在图4a-4c中所描述的窗口选择,在自适应窗口产生器5.003中对于所述信号建立窗口。
在通过产生器5.003来建立窗口后,变换模块5.004使用快速傅立叶变换(FFT)将被建立窗口的信号变换到频域中。
在TCX模式中的窗口建立——自适应窗口建立模块5.003现在说明在ACELP帧和TCX帧之间的模式转换。为了最小化在从一个模式向另一个转换时的过渡假象,需要适当地关注连续帧的窗口建立和重叠。通过处理器6.003来执行自适应窗口建立。图4a-4c示出了依赖于TCX帧长度和先前帧的类型(TCX的ACELP)的窗口形状。
在图4a中,考虑当前帧是TCX20帧的情况。根据过去的帧,所应用的窗口可以是1)如果先前帧是20毫秒ACELP,则所述窗口是两个窗口段的连接,所述两个窗口段是20毫秒持续时间的平坦窗口,后随2.5毫秒持续时间的汉宁(Hanning)窗口的平方根的右半部分(或正弦窗口的右半部分)。所述编码器因此需要加权语音的2.5毫秒的预计。
2)如果先前帧是TCX20帧,则所述窗口是三个窗口段的连接首先是2.5毫秒持续时间的Hanning窗口的平方根的左半部分(或正弦窗口的左半部分),然后是17.5毫秒持续时间的平坦窗口,最后是2.5毫秒持续时间的Hanning窗口的平方根的右半部分(或正弦窗口的右半部分)。所述编码器再次需要加权语音的2.5毫秒的预计。
3)如果先前帧是TCX40帧,则所述窗口是三个窗口段的连接首先是5毫秒持续时间的Hanning窗口的平方根的左半部分(或正弦窗口的左半部分),然后是15毫秒持续时间的平坦窗口,最后是2.5毫秒持续时间的Hanning窗口的平方根的右半部分(或正弦窗口的右半部分)。所述编码器再次需要加权语音的2.5毫秒的预计。
4)如果先前帧是TCX80帧,则所述窗口是三个窗口段的连接首先是10毫秒持续时间的Hanning窗口的平方根的左半部分(或正弦窗口的左半部分),然后是10毫秒持续时间的平坦窗口,最后是2.5毫秒持续时间的Hanning窗口的平方根的右半部分(或正弦窗口的右半部分)。所述编码器再次需要加权语音的2.5毫秒的预计。
在图4b中,考虑当前帧是TCX40帧的情况。根据过去的帧,所应用的窗口可以是1)如果先前帧是20毫秒的ACELP帧,则所述窗口是两个窗口段的连接40毫秒持续时间的平坦窗口,后随5毫秒持续时间的Hanning窗口的平方根的右半部分(或正弦窗口的右半部分)。所述编码器因此需要加权语音的5毫秒的预计。
2)如果先前帧是TCX20帧,则所述窗口是三个窗口段的连接首先是2.5毫秒持续时间的Hanning窗口的平方根的左半部分(或正弦窗口的左半部分),然后是37.5毫秒持续时间的平坦窗口,最后是5毫秒持续时间的Hanning窗口的平方根的右半部分(或正弦窗口的右半部分)。所述编码器再次需要加权语音的5毫秒的预计。
3)如果先前帧是TCX40帧,则所述窗口是三个窗口段的连接首先是5毫秒持续时间的Hanning窗口的平方根的左半部分(或正弦窗口的左半部分),然后是35毫秒持续时间的平坦窗口,最后是5毫秒持续时间的Hanning窗口的平方根的右半部分(或正弦窗口的右半部分)。所述编码器再次需要加权语音的5毫秒的预计。
4)如果先前帧是TCX80帧,则所述窗口是三个窗口段的连接首先是10毫秒持续时间的Hanning窗口的平方根的左半部分(或正弦窗口的左半部分),然后是30毫秒持续时间的平坦窗口,最后是5毫秒持续时间的Hanning窗口的平方根的右半部分(或正弦窗口的右半部分)。所述编码器再次需要加权语音的5毫秒的预计。
最后,在图4c中,考虑当前帧是TCX80帧的情况。根据过去的帧,所应用的窗口可以是1)如果先前帧是20毫秒的ACELP帧,则所述窗口是两个窗口段的连接80毫秒持续时间的平坦窗口,后随5毫秒持续时间的Hanning窗口的平方根的右半部分(或正弦窗口的右半部分)。所述编码器因此需要加权语音的10毫秒的预计。
2)如果先前帧是TCX20帧,则所述窗口是三个窗口段的连接首先是2.5毫秒持续时间的Hanning窗口的平方根的左半部分(或正弦窗口的左半部分),然后是77.5毫秒持续时间的平坦窗口,最后是10毫秒持续时间的Hanning窗口的平方根的右半部分(或正弦窗口的右半部分)。所述编码器再次需要加权语音的10毫秒的预计。
3)如果先前帧是TCX40帧,则所述窗口是三个窗口段的连接首先是5毫秒持续时间的Hanning窗口的平方根的左半部分(或正弦窗口的左半部分),然后是75毫秒持续时间的平坦窗口,最后是10毫秒持续时间的Hanning窗口的平方根的右半部分(或正弦窗口的右半部分)。所述编码器再次需要加权语音的10毫秒的预计。
4)如果先前帧是TCX80帧,则所述窗口是三个窗口段的连接首先是10毫秒持续时间的Hanning窗口的平方根的左半部分(或正弦窗口的左半部分),然后是70毫秒持续时间的平坦窗口,最后是10毫秒持续时间的Hanning窗口的平方根的右半部分(或正弦窗口的右半部分)。所述编码器再次需要加权语音的10毫秒的预计。
注意,仅仅当当前帧是TCX帧时,所有这些窗口类型被应用到加权的信号。大致按照AMR-WB编码、即通过激励信号的通过合成而分析的编码来编码ACELP类型的帧,以便最小化在目标信号中的误差,其中,所述目标信号实质上是被去除了加权滤波器对于其的零输入响应的加权信号。也注意,在编码另一个TCX帧之后的TCX帧时,直接地在变换域中量化通过上述的窗口而建立窗口的信号。如下所述。然后,在量化和逆变换后,使用在帧开始处的重叠与相加来将合成的加权信号与先前帧的被存储的预计重新组合。
另一方面,当编码在ACELP帧后的TCX帧时,首先从被建立窗口的加权信号去除加权滤波器的零输入响应、实际上是零输入响应的被建立窗口和删节的版本。因为所述零输入响应是帧的第一采样的良好逼近,因此结果产生的效果是被建立窗口的信号将在帧的开始处(因为零输入响应相减)和帧的结尾处(因为被应用到如上所述和如在图4a-4c中所示的预计的半Hanning窗口)都趋向于0。当然,被建立窗口和删节的零输入响应在逆变换后被加回量化的加权信号。
因此,在TCX中使用的变换之前的最佳窗口(例如Hanning窗口)和当在ACELP模式中编码时需要被应用到目标信号的隐含矩形窗口之间实现了适当的折中。这保证了在ACELP和TCX帧之间的平滑转换,同时允许在两种模式中适当建立窗口。
时间频率映射——变换模块5.004在如上所述建立窗口后,向在变换模块5.004中的加权信号应用变换。在5a中的示例中,使用快速傅立叶变换(FFT)。
如在图4a-4c中所示,TCX模式使用在连续帧之间的重叠来降低块化假象。重叠的长度依赖于TCX模式的长度当TCX模式分别以帧长度20、40和80毫秒来工作时,所述TCX模式的长度分别被设置为2.5、5和10毫秒(即重叠的长度被设置为帧长度的1/8)。这种重叠的选择简化了在通过FFT的DFT的快速计算中的基数(radix)。结果,TCX20、TCX40和TCX80模式的有效时间支持分别是22.5、45和90毫秒,如在图2中所示。使用每秒12,800采样的采样频率(在由图1的预处理器和合成滤波器组1.001产生的LF信号中),并且使用帧+预计的22.5、45和90毫秒的持续时间,FFT的时间支持分别变为288、576和1152采样。这些长度可以被表达为9乘32、9乘64和9乘128。因此,可以然后使用专用的基数9的FFT来迅速地计算傅立叶频谱。
预整形(低频加重)-预整形模块5.005一旦计算了傅立叶频谱(FFT),则由频谱预整形模块5.005向信号频谱应用自适应低频加重,以最小化在低频中所感知的失真。将通过频谱去整形模块5.007在解码器以及在编码器应用逆低频加重,以产生用于编码随后的帧的激励信号。仅仅向所述频谱的第一四分之一应用所述自适应低频加重,如下所还。
首先,把在FFT变换模块5.004输出的变换信号称为X。在奈奎斯特频率的傅立叶系数被对称地设置为0。然后,如果N是在FFT中的采样的数量(因此N对应于窗口的长度),则以四(4)个连续系数的块来编组所述K=N/2个复数值的傅立叶系数,形成8维的实值块。仅仅需要指出,总体上可以使用与8不同的大小的块长度。在一个实施例中,选择8的块大小来与用于频谱量化的8维点阵量化器一致。参见图20,计算每个块的能量,直到频谱的第一四分之一,并且存储具有最大能量的块的能量Emax和位置指标i(计算器20.001)。然后对于具有小于i的位置指标m的每个8维块计算因子Rm(计算器20.002),如下□计算在位置指标m的8维块的能量Em(模块20.003);□计算比率Rm=Emax/Em(模块20.004);□如果Rm>0,则设置Rm=0(模块20.005);□而且,如果Rm>R(m-1),则Rm=R(m-1)(模块20.006);□计算值(Rm)1/4(模块20.007)。
最后的条件(如果Rm>R(m-1),则Rm=R(m-1))保证了比率函数Rm单调地降低。而且,将比率Rm限制为小于或等于10表示不将在低频加重函数中的任何频谱分量修改超过20dB。
在对于具有小于i的位置指标的所有块计算了比率(Rm)1/4=(Emax/Em)1/4后(并且使用如上所述的限制条件),这些比率被应用为每个对应块的变换系数的增益(计算器20.008)。这具有提高与具有最大能量Emax的块相比较具有相对低的能量的块的能量的效果。在量化之前应用这个规程具有对在低频带中的编码噪声整形的效果。
图5b示出了被应用上述公开的预整形的示例频谱。在0和1之间归一化频率轴,其中,1是奈奎斯特频率。以dB而示出了幅度频谱。在图5b中,粗线是在预整形之前的幅度频谱,并且非粗线部分是修改(预整形)的频谱。因此,仅仅在这个示例中修改对应于非粗线的频谱。在图5c中,示出了被所述预整形函数应用到每个频谱分量的实际增益。可以从图5c中看出,所述增益限于10,并且当它在大约0.18的归一化频率达到具有最高能量的频谱分量(在此是所述频谱的第三谐波)时,单调地降低到1。
划分多速率点阵矢量量化——模块5.006
在低频加重后,在一个实施例中,使用基于点阵代码的代数量化模块5.006来量化频谱系数。所使用的点阵是8维Gosset点阵,它解释了在8维块中的频谱系数的划分。所述量化指标实质上是全局增益和一系列指标,所述一系列指标用于描述用于量化在频谱中的每个8维子矢量的实际点阵点。所述点阵量化模块5.006以结构化方式来在来自模块5.005的定标的预整形频谱的每个8维矢量和在用于量化的点阵代码本中的点之间执行最近相邻搜索。比例因子(全局增益)实际上确定比特分配和平均失真。所述全局增益越大,则使用的比特越多,并且平均失真越小。对于频谱系数的每个8维矢量,点阵量化模块5.006输出指标,它指示在对应的点阵代码本中所使用的点阵代码本编号和所选择的实际点阵点。解码器然后能够使用所述全局增益指标以及用于描述每个8维矢量的指标来重建量化的频谱。将在下面公开这个规程的细节。
一旦量化了频谱,则可以通过复用器(未示出)向解码器发送来自增益计算和量化模块5.009的输出的全局增益和来自量化模块5.006的输出的点阵矢量指标。
全局增益的优化和噪声填充因子的计算在使用点阵矢量量化器中的一个非无足轻重的步骤是确定在预定比特预算内的适当的比特分配。与所存储的代码本相反,当代码本的指标基本是它在表格中的位置时,使用数学(代数)公式来计算点阵代码本的指标。因此,仅仅在量化输入矢量后才知道用于编码点阵矢量指标的比特的数量。原理上,为了保持于预定的比特预算内,执行尝试几个全局增益和使用每个不同的增益来量化归一化的频谱,以计算比特的总数。实现最接近预定的比特预算而不超过它的比特分配的全局增益将被选择为最佳的增益。在一个实施例中,代之而使用拭探式(heuristic)方法,以避免在获得最佳的量化和比特分配之前需要将频谱量化几次。
为了清楚,从表A-1收集与下面的说明相关联的关键符号。
从图5a起进行参照,通过变换T和预整形P来处理时域TCX加权信号x,这产生要量化的频谱X。变换T可以是FFT,预整形可以对应于上述的自适应低频加重。
参见作为预整形频谱的矢量X。假定这个矢量具有形式X=[X0X1...XN-1]T,其中,N是从变换T获得的变换系数的数量(预整形P不改变系数的这个数量)。
预整形频谱的量化规程的概述在一个实施例中,如在图6中所描述来量化预整形的频谱X。所述量化基于[Ragot,2002]的设备,假定用于编码X的可用比特预算Rx比特。如在图6中所示,以三个主要步骤来通过增益形状划分矢量量化而量化X。
○通过划分能量估计模块6.001和全局增益和噪声水平估计模块6.002来计算以下被称为全局增益的估计全局增益g,并且除法器6.003通过这个全局增益g将频谱X归一化以获得X’=X/g,其中,X’是归一化的预整形的频谱。
○通过划分的可自定标多速率RE8编码模块6.004来向形成频谱X’的系数的所有8维块应用[Ragot,2002]的多速率点阵矢量量化,并且复用结果产生的参数。为了能够应用这个量化方案,将频谱X’划分为相同大小的K个子矢量,以便X=[X’0TX’1T... X’K-1T]T,其中,通过下式来给出第k个子矢量(或划分部分)X’k=[x’8k... x’8k+K-1],k=0,1,...,K-1。
因为[Ragot,2002]的设备实际上实现了8维矢量量化的形式,因此K被简单地设置为8。假定N是K的倍数。
○在模块6.002中计算噪声填充增益fac,以随后在频谱X’的未量化的划分部分中注入舒适的噪声。所述未量化的划分部分是已经被量化器设置为0的系数的块。噪声的注入允许掩蔽在低比特率的假象,并且改善音频质量。使用单个增益fac,因为TCX编码假定编码噪声在目标域中是平坦的,并且通过逆感知滤波器W(z)-1整形。虽然在此使用预整形,但是所述量化和噪声注入依赖于同一原理。
结果,在图6中所示的频谱X的量化产生三种参数全局增益g、(划分的)代数VQ参数和噪声填充增益fac。所述比特分配或比特预算Rx被分解为Rx=Rg+R+Rfac,其中,Rg、R和Rfac分别是被分配到增益g的比特的数量(或比特预算)、代数VQ参数和增益fac。在这个说明性实施例中,Rfac=0。
的多速率点阵矢量量化是可自定标的,并且不允许直接地控制在每个划分部分中的比特分配和失真。这是为什么[Ragot,2002]的设备被应用到频谱X’的划分部分而不是X的原因。因此,全局增益g的优化控制TCX模式的质量。在一个实施例中,增益g的优化基于划分部分的登录能量(log-energy)。
在下面的说明中,逐个地描述图6的每个块。
划分的能量估计模块6.001划分的矢量的能量(即平方模)用于比特分配算法中,并且用于确定全局增益以及噪声水平。回忆N维的输入矢量X=[x0,x1...xN-1]T被划分为K个划分部分、8维子矢量,以便第k个划分部分变为xk=[x8kx8k+1... x8k+7]T,其中k=0,1,...,K-1。假定N是8的倍数。第k个划分向量的能量被计算为ek=xkTxk=x8k2+...+x8k+72,k=0,1,...K-1全局增益和噪声水平估计模块6.002全局增益g直接地控制划分部分的比特消耗,并且从R(g)≈R求解,其中R(g)是由g的给定值的所有的划分代数VQ所使用的比特的数量(或比特消耗)。如在上述的说明中所述,R是被分配到划分的代数VQ的比特预算。结果,优化全局增益g以便匹配代数VQ的比特消耗和比特预算。基础的原理在文献中被称为逆注水(reverse water-filling)。
为了降低量化复杂性,每个划分部分的实际比特消耗不被计算,而是仅仅从划分部分的能量来估计。这个能量信息与多速率RE8矢量量化的先验知识一起允许估计作为g的简单函数的R(g)。
通过在全局增益和噪声水平估计模块6.002中应用这个基本原理来确定全局增益g。划分部分Xk的比特消耗估计是全局增益g的函数,并且被表示为Rk(g)。使用均一(unity)增益g=1,拭探给出作为比特消耗估计的Rk(1)=5log2(ε+ek)/2,k=0,1,...,K-1。
常数ε>0防止计算log20,并且例如使用值ε=2。总体上,与划分部分ek的能量相比较,可以忽略常数ε。
Rk(1)的公式基于[Ragot,2002]的所述多速率量化器的先验知识和基础的RE8点阵的属性○对于代码本编号nK>1,可以从表1确认至多5nk比特的、用于编码第k个划分部分的比特预算要求。这当log2(ε+ek)/2作为代码本编号的估计时给出了在所述公式中的因子5。
○对数log2反映了当使用Qnk来取代Qnk+1时大致加倍代码矢量的平均平方模的属性。可以从表4观察所述属性。
○被应用到ε+ek的因子1/2校准了代码本Q2的代码本编号估计。知道在这个特定代码本中的点阵点的平均平方模在8.0附近(参见表4)。因为log2(ε+e2))/2≈log2(2+8.0))/2≈2,因此代码本编号估计对于Q2事实上是正确的。
表4关于在不同代码本中的点阵点的平方模的一些统计

当向划分部分应用全局增益g时,通过将ek除以g2而获得xk/g的能量。这表示可以通过从下面的量中减去5log2g2=10log2g而根据Rk(1)估计增益定标的划分部分的比特消耗Rk(g)=5log2(ε+ek)/2g2=5log2(ε+ek)/2+5log2g2=Rk(1)-glog(4)其中,glog=10log2g。估计Rk(g)下界为0,因此在实际中使用关系式Rk(g)=max{Rk(1)-glog,0}(5)用于编码所有的K个划分部分的比特消耗现在简单地是在各个划分部分上的和,R(g)=R0(g)+R1(g)+...+RK-1(g) (6)方程(6)的非线性防止在分析上求解获得匹配给定的比特预算R(g)=R的比特消耗的全局增益g。但是,可以使用简单的迭代算法来求出所述解,因为R(g)是g的单调函数。
在一个实施例中,通过从值glog=128开始向glog=10log2g应用平分(bisection)搜索来有效地搜索全局增益g。在每个迭代iter,使用方程(4)、(5)和(6)来评估R(g),并且分别地将glog调整为glog=glog±128/2iter。10个迭代给出了足够的精度。可以随后从glog求解全局增益为g=2glog/10.]]>图7的流程图描述了用于确定全局增益g的平分算法。所述算法还提供了作为副产品的噪声水平。所述算法开始于在操作7.001中将比特预算R调整为值0.95(R-K)。这种调整已经在试验上被确定以便避免最佳全局增益g的过高估计。假定均一的全局增益,所述平分算法需要Rk(1)的比特消耗估计来作为其初始值,其中k=0,1,...,K-1。在操作7.002中使用首先获得划分部分ek的平方模的方程(4)来计算这些估计。所述算法从在操作7.004中设置的初始值iter=0、glog=0和fac=128/2iter=128开始。
如果iter<10(操作7.004),这在所述平分算法中的每个迭代包括在操作7.005中的递增glog=glog+fac以及使用glog的新值来在操作7.006和7.007中评估比特消耗估计R(g)。如果估计R(g)在操作7.008中超过比特预算R,则在操作7.009中更新g1og。通过在操作7.010递增计数器iter和将步长fac减半,所述迭代结束,在10个迭代后,获得glog的足够的精度,并且可以在操作7.011中求解全局增益g=2glog/10.]]>通过下述方式来在操作7.012中估计噪声水平gns使用所确定的全局增益glog来平均可能剩下的未量化的那些划分部分的比特消耗估计。
图8示出了在确定噪声水平fac中涉及的操作。所述噪声水平被计算为可能剩下的未量化的划分部分的平均能量的平方根。对于给定的全局增益glog,如果划分部分的估计的比特消耗小于5比特,即如果Rk(1)-glog<5,则所述划分部分可能是未被量化的。通过在Rk(1)-glog<5的划分部分上计算Rk(1)-glog来获得所有这样的划分部分的总的比特消耗Rns(g)。可以然后从Rns(g)在登录域中计算这些划分部分的平均能量为Rns(g)/nb,其中nb是这些划分部分的数量。所述噪声水平是fac=2Rns(g)/nb-5]]>在这个方程中,在指数部分中的常数-5是调谐因子,它根据平均能量将噪声因子调整为低于实际估计3dB(在能量上)。
多速率点阵矢量量化模块5.004量化模块6.004是在[Ragot,2002]中公开和说明的多速率量化方法。使用多速率量化来编码归一化的频谱X’的8维划分部分,所述多速率量化使用被表示为{Q0,Q2,Q3,...}的一组RE8代码本。在所述组中未定义所述代码本Q1,以便改善编码效率。第n个代码本被表示为Qn,其中,n被称为代码本编号。所有的代码本Qn被构造为同一8维RE8点阵的子集,Qn∈RE8。被定义为每维度比特(bits per dimension)的第n代码本的比特率是4n/8,即每个代码本Qn包含24n个代码矢量。按照[Ragot,2002]的教导来构造所述多速率量化器。
对于第k个8维划分部分X’k,编码模块6.004找到在RE8点阵中的最近的邻居Yk,并且输出○最小的代码本编号nk,以便Yk∈nk;并且○在Qnk中的指标ik。
代码本编号nk是需要使解码器可以获得的辅助信息以及用于重建代码矢量Yk的指标ik。例如,指标ik的大小是4nk比特,其中nk>1。可以以4比特的块来表示这个指标。
对于nk=0,重建yk变为8维零矢量,并且不需要ik。
比特预算溢出的处理和为划分模块6.005加指标对于给定的全局增益g,实际比特消耗可以或者超过比特预算或者保持低于比特预算。不通过任何特定的方法来处理可能的比特预算下溢,但是可以获得的额外比特被使得为0,并且剩下不使用。当比特预算溢出发生时,通过使得代码本编号n0、n1、...、BK-1中的一些变为0而向在模块6.005内的比特预算Rx中容纳比特消耗。使得代码本编号nk>0变为0将总的比特消耗降低了至少5nk-1比特。在解码器通过噪声填充来重建在比特预算溢出的处理中变0的划分部分。
为了最小化当一些划分部分的代码本编号被强制为0时发生的编码失真,应当谨慎地选择这些划分部分。在一个实施例中,通过以能量ek=xkTxk——其中k=0、1、...、K-1——的降序来逐个地处理划分部分而累加比特消耗。这个规程是取决于信号的,并且与早期用于确定全局增益的方法一致。
通过查看在模块6.005中的溢出处理的细节,将总结用于表示多速率量化器的输出的代码的结构。nk>0的一元代码包括k-1个1,后随一个0停止比特。如在表1中所示,需要5nk-1个比特来编码指标ik和除了所述停止比特之外的代码本编号nk。所述代码本编号nk=0仅仅包括停止比特,用于指示0划分。当编码K个划分部分时,仅仅需要K-1个停止比特,因为最后一个通过比特预算R而被隐含地确定,因此是冗余的。更具体而言,当k个最后划分部分是0时,仅仅k-1个停止比特就足够,因为可以通过知道比特预算R来解码最后的0划分部分。
在图9的流程图中描述了图6的溢出比特预算处理模块6.005的操作。这个模块6.005通过下述方式而使用在操作9.001中确定的划分部分指标κ(0)、κ(1)、...、κ(K-1)来运行以降序分类划分部分的平方模以便eκ(0)≥eκ(1)≥...≥eκ(K-1)。因此,指标κ(k)指示具有第k个最大的平方模的划分部分xκ(k)。所述划分部分的平方模被提供到溢出处理来作为操作9.001的输出。
可以当hκ(k)=0时通过直接地通到下一个迭代而容易地跳过溢出处理的第k个迭代,因为0划分部分不能引起溢出。使用逻辑操作9.005来实现这个功能。如果k<K(操作9.003)并且假定第κ(k)个划分部分是非0划分部分,则首先在操作9.004中对于RE8点yκ(k)加指标。所述多速率加指标提供了代码本编号nκ(k)和代码矢量指标iκ(k)的精确值。可以计算直到并且包括当前的第κ(k)个划分部分的所有划分部分的比特消耗。
使用一元代码的属性,在操作块9.008中计数直到并且包括当前划分部分的比特消耗Rk作为两项的和除了停止比特之外的数据所需要的RD,k比特和RS,k停止比特Rk=RD,k+RS,k(7)其中,对于nκ(k)>0RD,k=RD,k-1+5nκ(k)-1, (8)RS,k=max{κ(k),RS,k-1} (9)所需要的初始值在操作9.002中被设置为0。考虑到仅仅直到最后的非0划分部分的划分部分到目前以停止比特来指示,来从方程(9)在操作9.007中计数停止比特,因为随后的划分部分通过代码的构造而知道是0。也可以将所述最后的非0划分部分的指标表达为max{κ(0),κ(k),...,κ(k)}。
因为溢出处理从在方程(8)和(9)中的RD,k和RS,k的0初始值开始,因此直到当前的划分部分的比特消耗总是符合比特预算,RS,k-i+RD,k-i<R。如果包括当前第κ(k)个划分部分的比特消耗Rk超过在逻辑操作9.008中验证的比特预算R,则在块9.009中将代码本编号nκ(k)和重建yκ(k)归0。因此在块9.010中将比特消耗计数器RD,k和RS,k更新复位到它们的先前的值。此后,通过在操作9.011中将k递增1并且返回到逻辑操作9.003,所述溢出处理可以进行到下一个迭代。
注意,操作9.004产生作为溢出处理例程的整数部分的划分部分的指标。所述指标可以被存储和进一步提供到图6的比特流复用器6.007。
量化的频谱去整形模块5.007一旦使用模块5.006的划分多速率点阵VQ来量化了频谱,则量化指标(代码本编号和点阵点指标)可以被计算和通过复用器(未示出)而发送到信道。向在[Ragot,2002]中那样执行在点阵中的最近相邻搜索和指标计算。TCX编码器然后在模块5.007中执行频谱去整形,以翻转(invert)模块5.005的预整形。
频谱去整形仅仅使用量化的频谱而运行。为了获得将模块5.005的操作翻转的处理,模块5.007应用下面的操作□计算在频谱的第一四分之一(低频)中的最高能量的8维块的位置i和能量Emax;□计算在位置指标m的8维块的能量Em;□计算比率Rm=Emax/Em;□如果Rm>10,则设置Rm=10;□而且,如果Rm>R(m-1),则Rm=R(m-1);□计算值(Rm)1/2。
在计算具有小于该i的位置指标的所有块的比率Rm=Emax/Em后,这个比率的乘法逆元素(multiplicative inverse)然后被应用为每个对应块的增益。与模块5.005的预整形的差别是(a)在模块5.007的去整形中,计算比率Rm的平方根(而不是功率),并且(b)这个比率被当作对应的8维块的除法器(而不是乘法器)。如果忽略在模块5.006中量化的效果(良好的量化),则可以示出模块5.007的输出与模块5.005的输入精确地相等。预整形处理因此是可逆的处理。
HF编码在图10a中图解了图1的HF编码模块1.003的操作。如参见图1在上述说明中所示,HF信号由高于6400Hz的输入信号的频率分量组成。这个HF信号的带宽依赖于输入信号采样率,为了以低速率来编码HF信号,在一个实施例中使用带宽扩展(BWE)方案。在BWE中,以频谱包络和帧能量的形式向解码器发送能量信息,但是在解码器从所接收的(解码的)来自LF信号的激励信号外推所述信号的精细结构,按照一个实施例所述LF信号在转换的ACELP/TCX编码模块1.002中被编码。
在图10a中将在预处理器和分析滤波器组1.001的输出的下采样HF信号称为sHF(n)。这个信号的频谱可以被看作在下采样之前的高频带的折叠(folded)版本。在模块10.020-10.022中对于信号sHF(n)执行参见图18如上所述的LPC分析,以获得对于这个信号的频谱包络建模的一组LPC系数。通常,比对于LF信号,需要更少的参数。在一个实施例中,使用阶8的滤波器。然后LPC系数A(z)在模块10.023中变换到ISP域,然后在模块10.004中从ISP域转换到ISF域中,并且通过复用器10.029在模块10.003中量化以发送。在80毫秒超帧中的LPC分析的数量依赖于在所述超帧中的帧长度。被量化的ISF系数在模块10.004中被转换回ISP系数,然后在被模块10.006转换为量化的LPC系数AHF(z)之前在模块10.005中被内插(我们能够简述所述内插方法)。
一组LPC滤波器系数可以被表达为在变量z中的多项式。而且,A(z)是LF信号的LPC滤波器,并且AHF(z)是HF信号的LPC滤波器。这两个滤波器的量化的版本分别是 和 从图10的LF信号s(n),首先通过经由由附图标号10.014识别的余项滤波器 滤波s(n)而获得余项信号。然后,通过被标识为附图标号10.015的量化的HF合成滤波器 来滤波这个余项信号。这产生HF信号的合成版本,直到增益因子,但是是以频谱折叠的版本。在已经应用了上采样后将恢复实际的HF合成信号。
因为从LF信号恢复激励,因此对于HF信号计算适当的增益。其进行是通过将基准HF信号sHF(n)的能量与合成的HF信号的能量相比较。每5毫秒子帧计算一次能量,并且在6400Hz子频带边界保证能量匹配。具体上,通过感知滤波器(模块10.011-10.012和10.024-10.025)来滤波所合成HF信号和基准HF信号。在图10的一个实施例中,这个感知滤波器从AHF(z)被导出,并且被称为“HF感知滤波器”。分别在模块10.013和10.026中每5毫秒计算这两个滤波信号的能量,并且由模块10.013和10.126计算的能量之间的比率由除法器10.027计算,并且在模块10.016中以dB表达。在20毫秒帧中存在4个这样的增益(每5毫秒子帧一个)。这个4增益矢量表示应当被应用到HF信号以适当地匹配HF信号能量的增益。
取代直接地发送这个增益,首先通过比较来自低频带的滤波器 和来自高频带的 的增益来计算估计的增益比率。这个增益比率估计在图10b中被详细说明,并且将在下面的说明中被解释。所述增益比率估计每5毫秒被内插,以dB表达,并且在模块10.010中从所测量的增益比率中被减去。在图10中被标注为g0到gnb-1的结果产生的增益差或增益校正,在模块10.009中被量化。所述增益校正可以被量化为4维矢量,即每20毫秒帧4个值,然后被提供到复用器10.029以发送。
在图10b中说明了来自滤波器 和 的在模块10.007中计算的增益估计。在解码器侧可以获得这两个滤波器。首先,通过经由一极滤波器10.017滤波单位冲击δ(n)而计算在每个采样π个弧度的奈奎斯特频率的衰减正弦的前64个采样。使用奈奎斯特频率,因为目标是匹配在大约6400Hz、即在LF和HF信号之间的结合频率的滤波器增益。在此,这个基准信号的64采样的长度是子帧长度(5毫秒)。所述衰减的正弦h(n)然后首先通过滤波器 10.018被滤波以获得低频余项,然后通过滤波器 10.019被滤波以获得来自HF合成滤波器的合成信号。如果滤波器 和 在每个采样π个弧度的归一化频率具有相同的增益,则滤波器10.019的输出x(n)的能量将等同于滤波器10.018的输入h(n)(所述衰减的正弦)的能量。如果所述增益不同,则考虑在滤波器10.019的输出的信号x(n)的能量中的这个增益差。所述校正增益应当当信号x(n)的能量降低时实际上提高。因此,在模块10.028中将增益校正计算为在对数域中(即以dB)的信号x(n)的能量的乘法逆元素。为了获得真实的能量比率,应当从模块10.028的输出去除以dB表示的所述衰减正弦h(n)的能量。但是,因为这个能量补偿是常数,因此它将仅仅在模块10.009中的增益校正编码器中被考虑。最后,来自模块10.007的增益在被模块10.010相减之前被内插,并且以dB表达。
在所述解码器,可以通过将在所述解码器已知的HF编码设备1.003的输出加到在模块11.009中编码的解码的增益校正而恢复HF信号的增益。
解码器的详细说明解码器的角色是从比特流读取编码的参数,并且合成重建的音频超帧。在图11中示出了所述解码器的高级方框图。
如在上述的说明中所示,每个80毫秒超帧被编码为相同大小的四(4)个连续二进制包。这四(4)个包形成解码器的输入。因为所有的包可能由于信道消除而不能获得,因此主去复用器11.001也接收作为输入的四(4)个坏帧指示器BFI=(bfi0,bfi1,bfi2,bfi3),所述坏帧指示器指示已经接收到所述四个包中的哪些。在此假定当接收到第k个包时bfik=0,并且当丢失第k个包时bfik=1。所述四(4)个包的大小通过指示由编码器使用的比特率的输入的bit_rate_flag而对于去复用器11.001指定。
主去复用去复用器11.001仅仅进行编码器的复用器的逆操作。当可以获得包k时、即当bfik=0时提取与在包k中的编码参数相关联的比特。
如在上面的说明中所示,将编码参数划分为三(3)类模式指示器、LF参数和HF参数。所述模式指示器指定在编码器使用哪个编码模式(ACELP、TCX20、TCX40或TCX80)。在主去复用器11.001已经恢复了这些参数后,它们分别被模式外推模块11.002、ACELP/TCX解码器11.003和HF解码器11.004解码。这些解码产生2个信号,即LF合成信号和HF合成信号,它们被组合以形成所述后处理和合成滤波器组11.005的音频输出。假定输入标志FS向解码器指示输出采样率是什么。在一个实施例中,所允许的采样率是16kHz及更高。
将在下面的说明中说明图11的模块。
LF信号ACELP/TCX解码器11.003LF信号的解码实质上涉及ACELP/TCX解码。在图12中描述了这个规程。ACELP/TCX去复用器12.001根据MODE(模式)的值来提取编码的LF参数。具体上,将LF参数划分为一方面是ISF参数、另一方面是ACELP或TCX特定的参数。
通过主ACELP/TCX解码控制单元12.002来控制LF参数的解码。具体上,这个主ACELP/TCX解码控制单元12.002向ISF解码模块12.003、ISP内插模块12.005以及ACELP和TCX解码器12.007和12.008发送控制信号。主ACELP/TCX解码控制单元12.002也通过下述方式来处理在ACELP解码器12.007和TCX解码器12.008之间的转换设置适当的输入到这两个解码器,并且激活转换选择器12.009。所述主ACELP/TCX解码控制单元12.002还控制LF信号的输出缓冲器12.010,以便ACELP或TCX解码的帧被写入所述80毫秒输出缓冲器的右时间段中。
主 ACELP/TCX解码控制单元12.002产生LF解码器内部的控制数据BFI_ISF,nb(ISP内插的子帧的数量)、bfi_acelp、LTCX(TCX帧长度)、BFI_TCX、switch_flag和frame_selector(用于在LF缓冲器12.010的输出上设置帧指针)。这些数据的特性在此被定义如下 BFI_ISF可以被扩展为2-D整数矢量BFI_ISF=(bfi1st_stage(第一级)bfi2nd_stage(第二级)),并且由用于ISF解码的坏帧指示器组成。值bfi1st_stage是二进制的,当可以获得ISF第一级时bfi1st_stage=0,当丢失时,bfi1st_stage=1。值0≤bfi2nd_stage≤31是5比特的标志,它向ISF第二级的5个划分部分的每个提供坏帧指示器bfi2nd_stage=bfi1st_split+2*bfi2nd_split+4*bfi3rd_split+8*bfi4th_split+16*bfi5th_split,其中,当可以获得划分部分k时,bfikth_split=0,否则,bfikth_split=1。使用上述的比特流格式,可以从BFI=(bfi0bfi1bfi2bfi3)计算bfi1st_stage和bfi2nd_stage的值如下对于在包k中的ACELP或TCX20,BFI_ISF=(bfik),对于在包k和k+1中的TCX40,BFI_ISF=(bfik(31*bfik+1)),对于在包k=0-3中的TCX80,BFI_ISF=(bfi0(bfi1+6*bfi2+20*bfi3))可以通过用于将ISF量化的比特打包的比特流格式、以及如何根据编码器类型(ACELP/TCX20、TCX40或TCX80)在一个或几个包中分布级和划分部分,来直接地解释BFI_ISF的这些值。
ISF内插的子帧的数量指的是在ACELP或TCX解码的帧中的5毫秒子帧的数量。因此,对于ACELP和TCX20而言,nb=4,对于TCX40而言nb=8,对应TCX80而言nb=16。
bfi_acelp是用于指示ACELP包丢失的二进制标志。对于在包k中的ACELP帧,它被简单地设置为bfi_acelp=bfik。
通过对于TCX20而言LTCX=256(20毫秒)、对于TCX40而言LTCX=512(40毫秒)和对于TCX80而言LTCX=1024(80毫秒)来给出TCX帧长度(以采样为单位)。这未考虑在TCX中使用以降低块化效应的重叠。
BFI_TCX是二进制矢量,用于向TCX解码器以信号通知包丢失对于在包k中的TCX20,BFI_TCX=(bfik),对于在包k和k+1中的TCX40,BFI_TCX=(bfik,bfik+1),对于TCX80,BFI_TCX=BFI。
由主ACELP/TCX解码控制单元12.002产生的其他数据确实是自明的。按照解码帧的类型(ACELP或TCX)来控制转换选择器12.009。frabme_selector数据允许向超帧的右20毫秒段中写入解码的帧(ACELP或TCX20、TCX40或TCX80)。在图12中,一些辅助数据也出现,诸如ACELP_ZIR和rmswsyn。在随后的段落中定义了这些数据。
除了坏帧的处理外,ISF解码模块12.003对应于在AMR-WB语音编码标准中定义的ISF解码器,具有相同的MA预测和量化表。与AMR-WB设备相比较的差别是取代单个二进制坏帧指示器而使用BFI_ISF=(bfi1st_stagebfi2nd_stage)。当ISF量化器的第一级丢失时(即bfi1st_stge=1),使用AMR-WB ISF解码器的帧消除隐藏来简单地解码ISF参数。当可以获得第一级时(即bfi1st_stage=0),这个第一级被解码。第二级划分矢量只有当可以获得时才被累加到解码的第一级。重建的ISF余项被加到MA预测和ISF平均矢量,以形成重建的ISF参数。
转换器12.004将ISF参数(在频域中定义)转换为ISP参数(在余弦域中)。这个操作来自AMR-WB语音编码。
ISP内插模块12.005实现了在先前解码帧(ACELP/TCX20、TCX40或TCX80)的ISP参数和解码的ISP参数之间的简单线性内插。所述内插在ISP域中进行,并且按照下述公式而产生用于每个5毫秒子帧的ISP参数ispsubframe(子帧)-i=i/nb*ispnew(新)+(1-i/nb)*ispold(旧)其中,nb是在当前的解码帧中的子帧的数量(对于ACELP和TCX20而言,nb=4,对于TCX40而言nb=8,对于TCX80而言nb=16),i=0,...,nb-1是子帧指标,ispold是从先前解码帧(ACELP,TCX20/40/80)的解码的ISF参数获得的ISP参数的组,ispnew是从在解码器12.003中解码的ISF参数获得的ISP参数的组。内插的ISP参数然后被转换为在转换器12.006中的每个子帧的线性预测系数。
将在整体ACELP/TCX解码说明的结尾独立地说明ACELP和TCX解码器12.007和12.008。
ACELP/TCX转换以方框图形式的图12的说明以图13的流程图完成,图13精确地定义了如何根据在MODE中的超帧模式指示器来处理在ACELP和TCX之间的转换。因此,图13解释了如何使用图12的模块12.003到12.006。
ACELP/TCX解码的关键方面之一是处理来自过去的解码帧的重叠,以使能在ACELP和TCX之间以及在TCX帧之间的无缝转换。图13详细提供用于解码侧的这个关键特征。
所述重叠的构成是单个10毫秒缓冲器OVLP_TCX。当过去的解码帧是ACELP帧时,OVLP_TCX=ACELP_ZIR记住在先前ACELP帧的加权域中的LP合成滤波器(1/A(z))的零冲击响应(ZIR)。当过去的解码帧是TCX帧时,仅仅在OVLP_TCX中使用用于TCX20的前2.5毫秒(32个采样)、用于TCX40的5毫秒(64个采样)和用于TCX80的10毫秒(128个采样)(其他的采样被设置为0)。
如图13中所示,ACELP/TCX解码依赖于在MODE中的模式指示器的顺序解释。包编号和解码的帧指标k从0到3递增。由操作13.002、13.003和13.021到13.023实现的循环允许依序处理80毫秒超帧的四(4)个包。操作13.005、13.006和13.009到13.011的说明被跳过,因为它们实现上述的ISF解码、ISF到ISP转换、ISP内插和ISP到A(z)的转换。
当解码ACELP时(即当如在操作13.012中检测到mk=0时),更新缓冲器ACELP_ZIR,并且将TCX重叠的长度ovp_len设置为0(操作13.013和16.017)。在处理ACELP解码的下一个段落中解释ACELP_ZIR的实际计算。
当解码TCX时,更新缓冲器OVLP_TCX(操作13.014到13.016),并且将TCX重叠的实际长度ovp_len设置为等同于分别用于TCX20、TCX40和TCX80的2.5、5和10毫秒的采样的数量(操作13.018到13.020)。在处理TCX解码的下一个段落中解释了OVLP_TCX的实际计算。
ACELP/TCX解码器也计算用于LF合成的随后音节后滤波的两个参数用于80毫秒超帧的每个5毫秒子帧的音节增益gp=(g0,g1,...,g15)和音节滞后T=(T0,T1,...,T15)。这些参数在处理器13.001中被初始化。对于每个新的超帧,将音节增益默认设置为gpk=0,其中k=0,...,15,而将音节滞后全部初始化为64(即5毫秒)。这些矢量仅仅被ACELP在操作13.013中修改如果ACELP被定义在包k中,则g4k、g4k+1、...、g4k+3对应于在每个解码的ACELP子帧中的音节增益,而T4k、T4k+1、...、T4k+3是音节滞后。
ACELP解码从AMR-WB语音编码算法[Bessette等,2002]导出在图14中所示的ACELP解码器。在图14中,与AMR-WB的ACELP解码器相比较为新的或修改的块被加亮(通过对于这些块加阴影)。
在第一步骤中,通过去复用器14.001来去复用ACELP特定参数。
仍然参见图14,ACELP解码包括将激励信号r(n)重建为线性组合gpp(n)+gcc(n),其中,gp和gc分别是音节增益和固定代码本增益,T是音节滞后,p(n)是通过音节滤波器14.006从自适应代码本14.005导出的音节贡献,c(n)是从由解码器14.008解码的ACELP革新代码本指标获得并且通过模块14.012和14.013处理的革新代码本14.009的后处理的代码矢量;p(n)在乘法器14.007中被乘以增益gp,c(n)在乘法器14.014中被乘以增益gc,并且在加法器模块14.015中相加所述乘积gpp(n)和gcc(n)。当音节滞后T为小数(fractional)时,p(n)涉及在自适应代码本14.005中的内插。因此,重建的激励通过合成滤波器 14.016以获得合成s(n)。在子帧基础上对于内插的LP系数执行这个处理,并且通过输出缓冲器14.017来处理所述合成。通过主ACELP解码单元14.002来控制整个ACELP解码处理。通过转换选择器14.011来处理包消除(通过bfi_acelp=1来以信号表示),所述转换选择器14.011从革新代码本14.009转换到随机的革新代码本14.010,在增益解码器14.003和14.004中从其过去的值来外推音节和增益参数,并且依赖于所外推的LP系数。
与AMR-WB的ACELP解码器相比较的改变涉及增益解码器14.003、在模块14.018到14.020中的加权域中的 的零冲击响应(ZIR)的计算、和在模块14.021和14.022中的加权合成(rmswsyn)的r.m.s值的更新。已经公开了当bfi_acelp=0或1时的增益解码。它基于平均能量参数,以便应用去除平均值的VQ。
在此,在加权域中计算 的ZIR以用于从ACELP帧到TCX帧的转换,同时避免块化效应。相关联的处理被拆分为三个步骤,其结果被存储在由ACELP_ZIR表示的10毫秒缓冲器中1)计算器计算 的10毫秒ZIR,其中,从最后的ACELP子帧获得LP系数(模块14.018);2)滤波器感知加权ZIR(模块14.019),
3)在模块14.020中向10毫秒的加权ZIR应用混合平三角形(flat-triangular)窗口建立(通过窗口产生器)后求出ACELP_ZIR。这个步骤使用下面定义的10毫秒窗口w(n)w(n)=1 如果n=0,...,63,w(n)=(128-n)/64 如果n=64,...,127应当注意,模块14.020总是将OVLP_TCX更新为OVLP_TCX=ACELP_ZIR。
在ACELP解码器中更新参数rmswsyn,因为它用于TCX解码器中来用于包消除隐藏。其在ACELP解码帧中的更新包括使用感知加权滤波器14.021来针对每个子帧计算加权的ACELP合成sw(n),并且在模块14.022中计算rmswsyn=1L(sw(0)2+sw(1)2+...+sw(L-1)2)]]>其中,L=256(20毫秒)是ACELP帧长度。
TCX解码在图15中示出了TCX解码器的一个实施例。使用转换选择器15.017来处理两个不同的解码情况情况1当TCX帧长度是20毫秒并且相关联的包丢失、即BFI_TCX=1时,通过模块15.013到15.016在TCX20中的包消除隐藏;以及情况2通过模块15.001到15.002的正常的TCX解码,可能有部分的包丢失。
在情况1中,不可获得任何信息来解码TCX20帧。通过经由大致等同于 的非线性滤波器(模块15.014到15.016)处理来自先前解码的TCX帧的过去激励而进行TCX合成,所述先前解码的TCX帧被存储在激励缓冲器15.013中并且被延迟T,其中,T=pitch_tcx是在先前解码的TCX帧中估计的音节滞后。使用非线性滤波器来取代滤波器 以避免在合成中的“卡搭”噪声(click)。这个滤波器被分解为三(3)个块滤波器15.014,它具有传递函数A^(z/γ)/A^(z)/(1-αz-1)]]>以将被延迟T的激励映射到TCX目标域中;限制器15.015,用于将幅度限制在+rmxwsyn;最后是滤波器15.016,它具有传递函数(1-αz-1)A^(z/γ),]]>用于求出所述合成。在这种情况下,缓冲器OVLP_TCX被设置为0。
在情况2中,TCX解码涉及通过去复用器15.001和VQ参数解码器15来解码代数VQ参数。在本说明的另一个部分中提供了这种解码操作。如在上面的说明中所述,将变换系数组Y=[Y0Y1... YN-1]划分为在点阵RE8中表示的维数8的K个子矢量(连续变换系数的块),其中,分别对于TCX20、TCX40和TCX80而言,N=288、576和1152。分别对于TCX20、TCX40和TCX80而言,子矢量的数量K是36、72和144。因此,可以将系数Y扩展为Y=[Y0Y1... YK-1],其中Yk=[Y8k... Y8k+7],并且k=0,...,K-1。
通过反转在编码器使用的3比特统一标量量化而在噪声填充水平解码器15.003中解码噪声填充水平σnoise(噪声)。对于指标0≤idx1≤7,通过下式来给出σnoiseσnoise=0.1*(8-idx1)。但是,可能发生不能获得指标idx1。这是当在TCX20中BFI_TCX=(1)、在TCX40中BFI_TCX=(1x)和在TCX80中BFI_TCX=(x1xx)的情况,其中,x表示任意的二进制值。在这种情况下,将σnoise设置为其最大值,即σnoise=0.8。
向被四舍五入为0并且对应于高于6400/6≈1067Hz的频率的子矢量Yk中注入舒适的噪声(模块15.004)。更精确地,Z被初始化为Z=Y,并且对于K/6≤k≤K(仅仅),如果Yk=(0,0,...,0),则将Zk替换为所述8维的矢量σnoise*[cos(θ1)sin(θ1)cos(θ2)sin(θ2)cos(θ3)sin(θ3)cos(θ4)sin(θ4)],其中,随机地选择相位θ1、θ2、θ3和θ4。
自适应低频去加重模块15.005通过随着k变化的因子fack(图21的模块21.004)来定标每个子矢量Zk的变换系数,其中k=0...K/4-1X’k=fack·Zk,k=0,...,K/4-1。
因子fack实际上是k的分段恒定单调增加的函数,并且对于给定的k=kmax<k/4在1饱和(即,对于k<kmax,fack<1,并且对于k≥kmax,fack=1)。kmax的值依赖于Z。为了获得fack,将每个子矢量Zk的能量εk计算如下(模块21.001)εk=ZkTZk+0.01其中,项0.01被任意地设置以避免0能量(以后计算εk的逆)。然后,搜索在第一k/4子矢量上的最大能量(模块21.002)εmax=max(ε0,...,εK/4-1)通过下面的公式来给出fack的实际计算(模块21.003)fac0=max((ε0/εmax)0.5,0.1)fack=max((εk/εmax)0.5,fack-1),其中k=1,...,k/4-1
通过估计器15.006来执行主要音节的估计,以便如果要解码的下一个帧对应于TCX20并且如果相关联的包丢失,则可以适当地外推要解码的下一个帧。这个估计基于如下假设在TCX目标的频谱中的最大幅度的峰值对应于主要音节。对于最大M的搜索限于低于400Hz的频率M=maxi=1..N/32(X’2i)2+(X’2i+1)2,并且,最小的指标1<imax≤N/32,以便也求出(X’2i)2+(X’2i+1)2=M。然后,在作为Test=N/imax(这个值可能不是整数)的采样数中估计主要音节。对于在TCX20中的包消除隐藏计算主要音节。为了避免缓冲问题(激励缓冲器15.013限于20毫秒),如果Test>256个采样(20毫秒),则pitch_tcx被设置为256;否则如果Test≤256,则通过将pitch_tcx如下设置来避免在20毫秒中的多个音节周期 其中, 表示在向-∞的方向上向最近整数的四舍五入。
所使用的变换在一个实施例中是DFT,并且被实现为FFT。由于在TCX编码器使用的排序,因此变换系数X’=(X’0,...,X’N-1)使得○X’0对应于DC系数;○X’1对应于奈奎斯特频率(即6400Hz,因为在12.8kHz采样时域目标信号);并且○X’2k和X’2k+1的系数,其中k=1...N/2-1,是频率k(/N/2)*6400Hz的傅立叶分量的实数和虚数部分。
FFT模块15.007总是强制X’1为0。在这个归0后,通过逆FFT在FFT模块15.007中求出时域TCX目标信号x’w。
通过将在TCX编码器中使用的7比特对数量化反转来在TCX全局增益解码器15.008中解码(全局)TCX增益gTCX。为了如此进行,解码器17.008计算TCX目标信号x’w的r.m.s.值为rms=sqrt(1/N(x’w02+x’w12+...+x’wL-12))从指标0≤idx2≤127,通过下式来给出TCX增益gTCX=10idx2/28/(4×rms)]]>(对数)量化步长是大约0.71dB。
这个增益用于乘法器15.009中来将x’w定标为xw。从在本说明性实施例中使用的模式外推和增益重复策略,乘法器15.009可以获得指标idx2。但是,在部分包丢失的情况下(对于TCX40而言1个丢失,对于TCX80而言多达2个丢失),可以在去复用器15.001中将最低有效比特idx2默认设置为0。
因为TCX编码器在目标信号的变换编码之前使用具有重叠并且去除了加权ZIR的窗口建立,因此通过在合成模块15.010中的重叠相加来精确求出重建的TCX目标信号x=(x0,x1,...,xN-1)。所述重叠相加依赖于先前解码帧的类型(ACELP或TCX)。第一窗口产生器将TCX目标信号乘以自适应窗口w=[w0w1... WN-1]xi=xi*wi,i=0,...,L-1其中,w被定义为wi=sin(π/ovlp_len*(i+1)/2) i=0,...,ovlp_len-1wi=1,i=ovlp_len,...,L-1wi=cos(π/(L-N)*(i+1-L)/2)i=L,...,N-1如果ovlp_len=0,即如果先前解码帧是ACELP帧,则通过适当的跳跃方法来跳过这个窗口的余下部分。然后,通过适当的加法器向建立窗口的信号x加上来自过去解码的帧(OVLP_TCX)的重叠[x0... x128]=[x0... x128]+OVLP_TCX如果ovlp_len=0,则OVLP_TCX是x的ACELP的10毫秒加权ZIR(128个采样)。否则, 其中,ovlp_len可以等于分别指示先前解码帧是TCX20、TCX40或TCX80的32、64或128(2.5、5或10毫秒)。
通过[x0...xL]来给出重建的TCX目标信号,并且在缓冲器OVLP_TCX中存储最后N-L个采样 通过逆感知滤波器W-1(z)=(1-αz-1)/A^(z/γ)]]>来在滤波器15.011中滤波重建的TCX目标,以求出合成。也在模块15.012中计算激励以更新ACELP自适应代码本,并使得可以在随后的帧中从TCX向ACELP转换。注意,通过TCX帧长度来给出TCX合成的长度(没有重叠)20、30或80毫秒。
高频(HF)信号的解码HF信号的解码实现了一种带宽扩展(BWE)机制,并且使用来自LF解码器的一些数据。它是在AMR-WB语音解码器中使用的BWE机制的演变。在图16中的方框图的形式下图示了HF解码器的结构。HF合成链由模块16.012到16.014构成。更精确而言,HF信号是以2个步骤被合成的计算HF激励信号,并且从HF激励信号计算HF信号。通过使用每5毫秒子帧的比例因子(或增益)在时域中整形(乘法器16.012)LF激励信号来获得HF激励。这个HF激励可在模块16.013中被后处理以减低输出的“蜂鸣(buzziness)”,然后被具有传递函数1/AHF(z)的HF线性预测合成滤波器06.014滤波。如在上述的说明中所示,用于编码和然后解码HF信号的LP阶是8。结果也在HF能量平滑模块16.015中被后处理为平滑的能量变化。
HF解码器合成80毫秒的HF超帧。按照MODE=(m0,m1,m2,m3)来分段这个超帧。更具体而言,在HF解码器中使用的解码帧与在LF解码器中使用的帧同步。因此,mk≤1、mk=2和mk=3分别指示20毫秒、40毫秒和80毫秒帧。这些帧分别被称为HF-20、HF-40和HF-80。
从如上所述的合成链,看起来仅仅HF解码所需要的参数是ISF和增益参数。ISF参数表示滤波器18.014(1/A^HF(z)),]]>而增益参数用于使用乘法器16.012来整形LF激励信号。这些参数根据MODE并通过获知比特流的格式来在去复用器16.001中被从比特流去复用。
HF参数的解码被主HF解码控制单元16.002控制。具体上,主HF解码控制单元16.002控制线性预测(LP)参数的解码(ISF解码器16.003)和内插(ISP内插模块16.005)。主HF解码控制单元16.002向所述ISF和增益解码器16.003和16.009设置适当的坏帧指示器。它也控制HF信号的输出缓冲器16.016,以便解码的帧被写入在80毫秒输出缓冲器的恰当的(right)时间段中。
主HF解码控制单元16.002产生HF解码器内部的控制数据bfi_isf_hf、BFI_GAIN、ISF内插的子帧的数量和用于在输出缓冲器16.016上设置帧指针的帧选择器。除了自明的帧选择器之外,这些数据的特性被更详细地定义如下 bfi_isf_hf是用于指示ISF参数的丢失的二进制标志。在下面从BFI=(bfi0,bfi1,bfi2,bfi3)给出它的定义对于在包k中的HF-20,bfi_isf_hf=bfik,对于在包k和k+1中的HF-40,bfi_isf_hf=bfik,对于HF-80(在包k=0-3中),bfi_isf_hf=bfi0,可以从比特流格式容易地明白这个定义。如在上面的说明中所述,HF信号的ISF参数总是在描述HF-20、HF-40或HF-80帧的第一包中。
BFI_GAIN是二进制矢量,用于向HF增益解码器以信号发送包丢失对于在包k中的HF-20,BFI_GAIN=(bfik),对于在包k和k+1中的HF-40,BFI_GAIN=(bfikbfik+1),对于HF-80,BFI_GAIN=BFI。
ISF内插的子帧的数量参照在解码帧中的5毫秒子帧的数量,这个数量对于HF-20是4,对于HF-40为8,对于HF-80为16。
在ISF解码器16.003中使用AR(1)预测VQ来解码ISF矢量isf_hf_q。如果bfi_isf_hf=0,则可以获得第一级的2比特指标i1和第二级的7比特指标i2,并且通过下式来给出isf_hf_qisf_hf_q=cb1(i1)+cb2(i2)+mean_isf_hf+μisf_hf*mem_isf_hf其中,cb1(i1)是第一级的第i1个代码矢量,cb2(i2)是第二级的第i2个代码矢量,mean_isf_hf是平均ISF矢量,μisf_hf=0.5是AR(1)预测系数,mem_isf_hf是ISF预测解码器的存储器。如果bfi_isf_hf=1,则解码的ISF矢量对应于向平均ISF矢量移位的先前ISF矢量isf_hf_q=αisf_hf*mem_isf_hf+mean_isf_hf其中,αisf_hf=0.9。在计算了isf_hf_q后,使用180Hz的ISF间隙向isf_hf_q应用在AMR-WB语音编码中定义的ISF重新排序。最后,对于下一个HF帧将存储器mem_isf_hf更新为mem_isf_hf=isf_hf_q-mean_isf_hfmem_isf_hf的初始值(在解码器的复位)是0。转换器16.004将ISF参数(在频域中)转换为ISP参数(在余弦域中)。
ISP内插模块16.005实现了在先前解码HF帧(HF-20,HF-40或HF-80)的ISP参数和新解码的ISP参数之间的简单线性内插。按照下述公式,所述内插在ISF域中进行,并且产生用于每个5毫秒子帧的ISF参数ispsubframe-i=i/nb*ispnew+(1-i/nb)*ispold,其中,nb是在当前的解码帧中的子帧的数量(nb对于HF-20为4,对于HF-40为8,对于HF-80为16),i=0,...,nb-1是子帧指标,ispold是从先前解码的HF帧的ISF参数获得的ISP参数的组,ispnew是从在处理器18.003中解码的ISF参数获得的ISP参数的组。转换器10.006然后将内插的ISP参数转换为用于每个子帧的量化的线性预测系数
在下面的段落中说明在模块16.007中以dB为单位的增益gmatch的计算。根据其先前值old_gmatch对于每个5毫秒子帧在模块16.008中内插这个增益为g~i=i/nb*gmatch+(1-i/nb)*old_gmatch,]]>其中,nb是在当前解码帧中的子帧的数量(nb对于HF-20为4,对于HF-40为8,并且对于HF-80为16),i=0,...,nb-1是子帧指标。这产生矢量 用于在6400Hz匹配幅度的增益估计计算(模块16.007)在图10b中描述了处理器16.007。因为这个处理仅仅使用LPC滤波器的量化版本,因此它与编码器在等同级所计算的相同。通过计算具有极z=-0.9的第一阶自回归滤波器1/(1+0.9z-1)(滤波器10.017)的冲击响应h(n)的前64个采样[h(0)h(1)...h(63)]而产生频率6400Hz的减幅正弦。通过16阶的(0状态)预测器 ——其系数从LF解码器(滤波器10.018)获得——处理这个5毫秒信号h(n),然后,通过8阶的(0状态)合成滤波器 ——其系数从HF解码器(滤波器10.018)获得——来处理结果,以获得信号x(n)。所述2组LP系数对应于当前解码的HF-20、HF-40或HF-80帧的最后子帧。然后以dB为单位来计算校正增益为gmatch=10log10[1/(x(0)2+x(1)2+...+x(63)2)],如在模块10.028中所示。
回想到LF和HF信号的采样频率都是12800Hz。而且,LF信号对应于低通音频信号,而HF信号在频谱上是高通音频信号的折叠版本。如果HF信号是在6400Hz的正弦,则它在合成滤波器组后变为在6400Hz而不是在12800Hz的正弦。结果,看起来gmatch被设计使得10^(gmatch/20)/AHF(z)的折叠频率响应的幅度匹配在大约6400Hz的1/A(z)的频率响应的幅度。
校正增益的解码和增益计算(增益解码器16.009)如在上面的说明中所述,在增益内插后,HF解码器从模块16.008获得用于当前解码帧的每个nb子帧的以dB为单位的估计增益(gest0,gest1,...,gestnb-1)。而且,在HF-20、HF-40和HF-80中nb分别等于4、8和16。增益解码器16.009的角色是解码以dB为单位的校正增益,所述校正增益将通过加法器16.010被加到每个子帧的估计增益以形成解码的增益 (g^0(dB),g^1(dB),...,g^nb-1(dB))=(g~0,g~1,...,g~nb-1)+(g‾0,g‾1,...,g‾nb-1)]]>其中,(go,g1,...,gnb-1)=(gc11,gc11,...,gc1nb-1)+(gc20,gc21,...,gc2nb-1)
因此,增益解码对应于预测双级VQ标量量化的解码,其中,通过内插的6400Hz结合匹配增益来给出预测。量化维数是变量,并且等于nb。
第一级的解码将第一级4维HF增益代码本的7比特指标0≤idx≤127解码为4个增益(G0,G1,G2,G3)。在HF-20、HF-40和HF-80中的坏帧指示器bfi=BFI_GAIN0允许处理包丢失。如果bfi=0,则这些增益被解码为(G0,G1,G2,G3)=cb_gain_hf(idx)+mean_gain_hf其中,cb_gain_hf(idx)是代码本cb_gain_hf的第idx个代码矢量。如果bfi=1,则存储器pas_gain_hf_q向-20dB移位pas_gain_hf_q=αgain_hf*(past_gain_hf_q+20)-20其中,αgain_hf=0.9,并且将4个增益(G0,G1,G2,G3)设置为相同的值Gk=past_gain_hf_q+mean_gain_hf,其中k=0,1,2和3因此,存储器past_gain_hf_q被更新为past_gain_hf_q=(G0+G1+G2+G3)/4-mean_gain_hf。
第一级重建的计算因此被给出为HF-20(gc10,gc11,gc12,gc13)=(G0,G1,G2,G3)HF-40(gc10,gc11,...,gc17)=(G0,G0,G1,G1,G2,G2,G3,G3)HF-80(gc10,gc11,...,gc115)=(G0,G0,G0,G0,G1,G1,G1,G1,G2,G2,G2,G2,G3,G3,G3,G3)。
第二级的解码在TCX20中,(gc20,gc21,gc22,gc23)被简单地设置为(0,0,0,0),并且无实际的第二级解码。在HF-40中,第i子帧的2比特指标0≤idxi≤3——其中i=0,...,7——被解码为如果bfi=0,gc2i=3*idxi-4.5,否则gc2i=0。
在TCX-80中,16个子帧,第i子帧的3比特指标0≤idxi≤7——其中i=0,...,15——被解码为如果bfi=0,gc2i=3*idx-10.5,否则gc2i=0。
在TCX-40中,第二标量精细化的幅度是达±4.5dB,并且在TCX-80中达±10.5dB。在两种情况下,量化步长是3dB。
HF增益重建然后,在模块16.011中将每个子帧的增益计算为
蜂鸣降低模块16.013和HF能量平滑模块16.015蜂鸣降低模块16.013的角色是衰减在时域HF激励信号rHF(n)的脉冲,该脉冲经常导致音频输出为声音“嗡嗡响”。通过查看是否绝对值|rHF(n)|>2*thres(n)来检测脉冲,其中,thres(n)是对应于rHF(n)的时域包络的自适应阈值。被检测为脉冲的采样rHF(n)限于±2*thres(n),其中,±是rHF(n)的符号。
HF激励的每个采样rHF(n)被第一阶低通滤波器0.02/(1-0.98z-1)滤波以更新thres(n)。thres(n)的初始值(在解码器的复位处)是0。脉冲衰减的幅度被给出为Δ=max(|rHF(n)|-2*thres(n),0.0)。
因此,如果当前的采样不被检测为脉冲,则将Δ设置为0,这将使得rHF(n)不变。然后,自适应阈值的当前值thres(n)被改变为thres(n)=thres(n)+0.5*Δ最后,每个采样rHF(n)修改为如果rHF(n)≥0,则r’HF(n)=rHF(n)-Δ,否则r’HF(n)=rHF(n)+Δ。
在模块16.015中平滑HF合成SHF(n)的短期能量变化。通过子帧来测量能量。根据自适应阈值将每个子帧的能量修改达±1.5dB。
对于给定的子帧[sHF(0)sHF(1)...sHF(63)],将子帧能量计算为ε2=0.0001+sHF(0)2+sHF(1)2+...+sHF(63)2阈值的值t被更新为t=min(ε2*1.414,t),如果ε2<tmax(ε2/1.414,t)其它情况。
然后通过√(t/ε2)来定标当前的子帧[s’HF(0)s’HF(1)...s’HF(63)]=√(t/ε2)*[sHF(0)sHF(1)...sHF(63)]后处理和合成滤波器组在图17中图解了LF和HF合成的后处理和将两个频带重新组合为原始的音频带宽。
首先通过变换函数1/(1-αpreemphz-1)的滤波器17.001来预先加重LF合成(它是ACELP/TCX解码器的输出),其中αpreemph=0.75。结果通过LF音节后滤波器17.002以降低仅仅在ACELP解码段中的音节谐波之间的编码噪声的水平。这个后滤波器将下列作为参数80毫秒超帧的每个5毫秒子帧的音节增益gp=(gp0,gp1,...,gp15)和音节滞后T=(T0,T1,...,T15)。从ACELP/TCX解码器获得这些矢量gp和T。滤波器17.003是在AMR-WB语音编码中使用的第二阶50Hz高通滤波器。
通过延迟模块17.005来进行HF合成的后处理,这实现了HF合成的简单时间对齐,以使得它与后处理的LF合成同步。HF合成因此被延迟76个采样,以便补偿由LF音节后滤波器17.002产生的延迟。
通过LP上采样模块17.004、HF上采样模块17.007和加法器17.008来实现合成滤波器组。输出采样率FS=16000或24000Hz被指定为参数。以与在AMR-WB语音编码中类似的方式来实现在模块17.004和17.007中从12800Hz到FS的上采样。当FS=16000时,LF和HF后滤波信号被5上采样,被第120阶FIR滤波器处理,然后被4下采样并且被5/4定标。在上采样模块17.004和17.007之间的差别涉及所述第120阶FIR滤波器的系数。类似地,当FS=24000时,LF和HF后滤波信号通过被15上采样,被第368阶FIR滤波器处理,然后通过被8下采样并且通过被15/8定标。加法器17.008最终将两个上采样的LF和HF信号组合以形成输出音频信号的80毫秒超帧。
虽然已经以上通过非限定性说明实施例而描述了本发明,但是应当记住,在不脱离本发明的范围、特性和精神的情况下,在所附的权利要求的范围内,可以任意地修改这些实施例。
表A-1按照本发明的说明性实施例的关键符号的列表(a)可自定标多速率RE8矢量量化

(b)划分的可自定标多速率RE8矢量量化



(c)基于划分的可自定标多速率RE8矢量量化的变换编码

参考文献





表4.20毫秒ACELP帧的比特分配

表5a.20毫秒TCX帧的比特分配

表5b.40毫秒TCX帧的比特分配


表5c.80毫秒TCX帧的比特分配

表6.带宽扩展的比特分配
权利要求
1.一种用于低频加重在频域中被变换并且包括以多个块编组的变换系数的声音信号的频谱的方法,包括计算具有位置指标的一个块的最大能量;对于具有小于具有最大能量的块的位置指标的位置指标的每个块,计算因子,对于每个块,所述因子的计算包括-计算所述块的能量;以及-从计算的最大能量和所计算的所述块的能量来计算所述因子;以及对于每个块,根据所述因子确定应用到所述块的变换系数的增益。
2.按照权利要求1的用于低频加重声音信号的频谱的方法,其中,所述变换系数是快速傅立叶变换系数。
3.按照权利要求1的用于低频加重声音信号的频谱的方法,包括向声音信号的频谱施加自适应低频加重,以最小化在频谱的低频中所感知的失真。
4.按照权利要求1的用于低频加重声音信号的频谱的方法,包括将变换系数编组为预定数量的连续变换系数的块。
5.按照权利要求1的用于低频加重声音信号的频谱的方法,其中-计算一个块的最大能量包括计算每个块的能量直到在频谱中的给定位置;存储具有最大能量的块的能量;以及-确定位置指标包括存储具有最大能量的块的位置指标。
6.按照权利要求5的用于低频加重声音信号的频谱的方法,其中,计算每个块的能量直到在频谱中的给定位置包括计算每个块的能量直到在频谱中的第一四分之一。
7.按照权利要求1的用于低频加重声音信号的频谱的方法,其中,计算每个块的因子包括使用下述关系式来计算具有小于具有最大能量的块的位置指标的位置指标m的每个块的比率RmRm=Emax/Em其中,Emax是所计算的最大能量,Em是对应于位置指标m的块的所计算的能量。
8.按照权利要求7的用于低频加重声音信号的频谱的方法,包括当Rm大于预定值时,将比率Rm设置为所述预定值。
9.按照权利要求7的用于低频加重声音信号的频谱的方法,包括当Rm>R(m-1)时,设置比率Rm=R(m-1)。
10.按照权利要求1的用于低频加重声音信号的频谱的方法,其中,计算所述因子包括当所述因子大于预定值时,将所述因子设置为所述预定值。
11.按照权利要求1的用于低频加重声音信号的频谱的方法,其中,计算所述因子包括当一个块的因子大于先前块的因子时,将所述一个块的因子设置为所述先前块的因子。
12.按照权利要求7的用于低频加重声音信号的频谱的方法,其中,计算所述因子还包括计算值(Rm)1/4,并且应用值(Rm)1/4来作为对应的块的变换系数的增益。
13.一种用于低频加重在频域中被变换并且包括以多个块编组的变换系数的声音信号的频谱的设备,包括装置,用于计算具有位置指标的一个块的最大能量;装置,用于对于具有小于具有最大能量的块的位置指标的位置指标的每个块,计算因子,对于每个块,该因子计算装置包括-装置,用于计算所述块的能量;以及-装置,用于根据计算的最大能量和所计算的所述块的能量来计算所述因子;以及装置,用于对于每个块、根据所述因子来确定应用到所述块的变换系数的增益。
14.一种用于低频加重在频域中被变换并且包括以多个块编组的变换系数的声音信号的频谱的设备,包括计算器,用于计算具有位置指标的一个块的最大能量;计算器,用于对于具有小于具有最大能量的块的位置指标的位置指标的每个块,计算因子,对于每个块,该因子计算器-计算所述块的能量;以及-根据计算的最大能量和所计算的所述块的能量,来计算所述因子;以及计算器,对于每个块并响应于所述因子,计算增益,所述增益应用到所述块的变换系数。
15.按照权利要求14的用于低频加重声音信号的频谱的设备,其中,所述变换系数是快速傅立叶变换系数。
16.按照权利要求14的用于低频加重声音信号的频谱的设备,其中,变换系数编组为预定数量的连续变换系数的块。
17.按照权利要求14的用于低频加重声音信号的频谱的设备,其中,所述最大能量计算器计算每个块的能量直到在频谱中的预定位置;以及包括最大能量的存储器;以及包括具有最大能量的块的位置指标的存储器。
18.按照权利要求17的用于低频加重声音信号的频谱的设备,其中,所述最大能量计算器计算每个块的能量直到在频谱中的第一四分之一。
19.按照权利要求14的用于低频加重声音信号的频谱的设备,其中,所述因子计算器使用下述关系式来计算具有小于具有最大能量的块的位置指标的位置指标m的每个块的比率RmRm=Emax/Em其中,Emax是所计算的最大能量,Em是对应于位置指标m的块的所计算的能量。
20.按照权利要求19的用于低频加重声音信号的频谱的设备,其中,所述因子计算器当Rm大于预定值时,将比率Rm设置为所述预定值。
21.按照权利要求19的用于低频加重声音信号的频谱的设备,其中所述因子计算器当Rm>R(m-1)时,设置比率Rm=R(m-1)。
22.按照权利要求14的用于低频加重声音信号的频谱的设备,其中,所述因子计算器当所述因子大于预定值时,将所述因子设置为所述预定值。
23.按照权利要求14的用于低频加重声音信号的频谱的设备,其中,所述因子计算器当一个块的因子大于先前块的因子时将所述一个块的因子设置为所述先前块的因子。
24.按照权利要求19的用于低频加重声音信号的频谱的设备,其中所述因子计算器计算值(Rm)1/4;以及所述增益计算器应用值(Rm)1/4来作为对应的块的变换系数的增益。
25.一种用于处理所接收的、编码的声音信号的方法,包括从所接收的、编码的声音信号提取编码参数,所提取的编码参数包括所述声音信号的频率变换的变换系数,其中,使用如权利要求1至12中任意一个所限定的方法来低频加重所述变换系数;处理所提取的编码参数,以合成所述声音信号,处理所提取的编码参数,包括低频去加重所述低频加重的变换系数。
26.按照权利要求25的用于处理所接收的、编码的声音信号的方法,其中提取编码参数包括将低频加重的变换系数划分为K数量个变换系数的块;以及低频去加重低频加重的变换系数包括定标所述K个块的至少一部分的变换系数,以消除所述变换系数的低频加重。
27.按照权利要求26的用于处理所接收的、编码的声音信号的方法,其中低频去加重低频加重的变换系数包括定标所述K个块的变换系数的前K/s个块的变换系数,s是整数。
28.按照权利要求27的用于处理所接收的、编码的声音信号的方法,其中,定标所述变换系数包括计算变换系数的K个块的每个的能量εk;计算在前K/s个块中的一个块的最大能量εmax;对于所述前K/s个块中的每个,计算因子fack;以及使用对应的块的因子fack来定标所述前K/s个块的每个的变换系数。
29.按照权利要求28的用于处理所接收的、编码的声音信号的方法,其中,对于前K/s个块的每个,计算因子fack,直到具有最大能量的块的位置指标,包括使用下面的表达式fac0=max((ε0/εmax)0.5,0.1)fack=max((εk/εmax)0.5,fack-1),其中k=1,...,K/s-1,其中,εk是具有指标k的块的能量。
30.一种用于处理所接收的、编码的声音信号的解码器,包括输入解码器部分,被提供所接收的、编码的声音信号,并且实现用于从所接收的、编码的声音信号提取编码参数的提取器,所提取的编码参数包括所述声音信号的频率变换的变换系数,其中,使用如权利要求13至24中任意一个所限定的设备来低频加重所述变换系数;处理器,用于处理所提取的编码参数,以合成所述声音信号,所述处理器包括被提供低频加重的变换系数的低频去加重模块。
31.按照权利要求30的解码器,其中所述提取器将低频加重的变换系数划分为K数量个变换系数的块;以及所述低频去加重模块定标所述K个块的至少一部分的变换系数,以消除所述变换系数的低频加重。
32.按照权利要求31的解码器,其中低频去加重模块定标所述K个块的变换系数的前K/s个块的变换系数,s是整数。
33.按照权利要求32的解码器,其中,所述低频去加重模块计算变换系数的K/s个块的每个的能量εk;计算在前K/s个块中的一个块的最大能量εmax;对于所述前K/s个块中的每个,计算因子fack;以及使用对应的块的因子fack来定标所述前K/s个块的每个的变换系数。
34.按照权利要求33的解码器,其中,所述低频去加重模块使用下面的表达式计算因子fackfac0=max((ε0/εmax)0.5,0.1)fack=max((ε0/εmax)0.5,fack-1),其中k=1,...,K/s-1,其中,εk是具有指标k的块的能量。
35.一种用于通过带宽扩展方案编码通过将全带宽声音信号分离为HF信号和LF信号而获得的HF信号的HF编码方法,包括对于所述LF和HF信号执行LPC分析,以产生对所述LF和HF信号的频谱包络建模的LPC系数;从所述LCP系数计算HF匹配增益的估计;计算所述HF信号的能量;处理所述LF信号以产生所述HF信号的合成版本;计算所述HF信号的合成版本的能量;计算在所计算的HF信号的能量和所计算的HF信号的合成版本的能量之间的比率,并且将所计算的比率表达为HF补偿增益;以及计算在HF匹配增益的估计和HF补偿增益之间的差,以获得增益校正;其中,所述编码的HF信号包括LPC参数和增益校正。
36.按照权利要求35的HF编码方法,其中,所述HF信号由高于6400Hz的频率分量构成。
37.按照权利要求35的HF编码方法,还包括将LPC系数转换为ISF系数;以及量化所述ISF系数以传输。
38.按照权利要求37的HF编码方法,还包括将量化的ISF系数转换为量化的ISP系数;以及将量化的ISP系数转换为量化的LPC系数。
39.按照权利要求35的HF编码方法,其中,处理LF信号以产生HF信号的合成版本包括通过对HF信号的频谱包络建模的LPC滤波器的量化版本,来滤波LF信号,以产生余项信号;以及通过量化的HF合成滤波器来滤波所述余项信号,以产生HF信号的合成版本。
40.按照权利要求35的HF编码方法,其中-计算HF信号的能量包括通过HF感知滤波器来滤波HF信号;以及计算感知滤波的HF信号的能量;以及-计算HF信号的合成版本的能量包括通过HF感知滤波器来滤波HF信号的合成版本;以及计算HF信号的感知滤波的合成版本的能量。
41.按照权利要求35的HF编码方法,其中,将所计算的比率表达为HF增益包括以dB来表达在HF信号的所计算的能量和HF信号的合成版本的所计算的能量之间的所计算的比率。41a.按照权利要求35的HF编码方法,其中,计算HF匹配增益包括计算在奈奎斯特频率在LF LPC滤波器和HF LPC滤波器的频率响应之间的比率。
42.按照权利要求35的HF编码方法,其中-执行LPC分析包括计算HF量化的LPC系数`AHF(z);以及-计算HF匹配增益的估计包括通过经由1/(1+0.9z-1)形式的一极滤波器滤波单位冲击δ(n)而计算每个采样在奈奎斯特频率的衰减正弦h(n)的64个采样;通过LF LPC滤波器`A(z)来滤波所述衰减正弦h(n),以获得低频余项,其中,`A(z)表示来自LF编码器的LF量化LPC系数;通过HF LPC合成滤波器1/`AHF(z)来滤波所滤波的衰减正弦h(n),以获得合成信号x(n);以及计算所述合成信号x(n)的能量的乘法逆元素,并且在对数域中表达它,以产生增益gmatch;以及内插所述增益gmatch以产生HF匹配增益的估计。
43.按照权利要求35的HF编码方法,包括量化增益校正以获得量化的增益校正。
44.一种HF编码设备,用于通过带宽扩展方案来编码通过将全带宽声音信号分离为HF信号和LF信号而获得的HF信号,包括装置,用于对于所述LF和HF信号执行LPC分析,以产生对所述LF和HF信号的频谱包络建模的LPC系数;装置,用于从所述LPC系数计算HF匹配增益的估计;装置,用于计算所述HF信号的能量;装置,用于处理所述LF信号,以产生所述HF信号的合成版本;装置,用于计算所述HF信号的合成版本的能量;装置,用于计算在所计算的HF信号的能量和所计算的HF信号的合成版本的能量之间的比率,以及装置,用于将所计算的比率表达为HF补偿增益;以及装置,用于计算在HF匹配增益的估计和HF补偿增益之间的差,以获得增益校正;其中,所编码的HF信号包括LPC参数和增益校正。
45.一种HF编码设备,用于通过带宽扩展方案来编码通过将全带宽声音信号分离为HF信号和LF信号而获得的HF信号,包括LPC分析装置,被提供LF和HF信号,并且响应于所述HF信号而产生对所述LF和HF信号的频谱包络建模的LPC系数;计算器,响应于所述LPC系数,计算匹配HF增益的估计;计算器,计算所述HF信号的能量;滤波器,被提供所述LF信号,并且响应于所述LF信号而产生所述HF信号的合成版本;计算器,计算所述HF信号的合成版本的能量;计算器,计算在所计算的HF信号的能量和所计算的HF信号的合成版本的能量之间的比率;转换器,被提供所计算的比率,并且将所述计算的比率表达为HF补偿增益;以及计算器,计算在HF匹配增益的估计和HF补偿增益之间的差,以获得增益校正;其中,所编码的HF信号包括LPC参数和增益校正。
46.按照权利要求45的HF编码设备,其中,所述HF信号由高于6400Hz的频率分量构成。
47.按照权利要求45的HF编码设备,还包括转换器,用于将LPC系数转换为ISF系数;以及量化器,用于量化ISF系数。
48.按照权利要求47的HF编码设备,还包括转换器,用于将量化的ISF系数转换为量化的ISP系数;以及转换器,用于将量化的ISP系数转换为量化的LPC系数。
49.按照权利要求45的HF编码设备,其中,所述滤波器被提供LF信号,并且响应于所述LF信号而产生HF信号的合成版本,包括量化的LPC滤波器,被提供LF信号,并且响应于所述LF信号而产生余项信号;以及量化的HF合成滤波器,被提供所述余项信号,并且响应于所述余项信号而产生HF信号的合成版本。
50.按照权利要求45的HF编码设备,其中-计算HF信号的能量的计算器包括HF感知滤波器,被提供HF信号;以及计算器,计算感知滤波的HF信号的能量;以及-HF信号的合成版本的能量的计算器包括HF感知滤波器,被提供HF信号的合成版本;以及计算器,计算HF信号的感知滤波的合成版本的能量。
51.按照权利要求45的HF编码设备,其中,用于将所计算的比率表达为HF增益的转换器包括装置,用于以dB来表达在HF信号的所计算的能量和HF信号的合成版本的所计算的能量之间的所计算的比率。51a.按照权利要求55的HF编码设备,其中,HF匹配增益的计算器计算在奈奎斯特频率LF LPC滤波器和HF LPC滤波器的频率响应之间的比率。
52.按照权利要求45的HF编码设备,其中-LPC分析器包括HF量化的LPC系数`AHF(z)的计算器;以及-HF匹配增益的估计的计算器包括计算器,用于通过经由1/(1+0.9z-1)形式的一极滤波器滤波单位冲击δ(n)而计算在每个采样π个弧度的奈奎斯特频率衰减正弦h(n)的64个采样;LF LPC滤波器`A(z),用于滤波所述衰减正弦h(n),以获得低频余项,其中,`A(z)表示来自LF编码器的LF量化的LPC系数;HF LPC合成滤波器1/`AHF(z),用于滤波所滤波的衰减正弦h(n),以获得合成信号x(n);以及计算器,用于计算所述合成信号x(n)的能量的乘法逆元素,并且在对数域中表达它,以产生增益gmatch;以及内插器,用于内插所述增益gmatch以产生HF匹配增益的估计。
53.按照权利要求45的HF编码设备,包括量化器,用于量化增益校正以获得量化的增益校正。
54.一种用于解码通过带宽扩展方案而编码的HF信号的方法,包括接收编码的HF信号;从编码的HF信号提取LPC系数和增益校正;从所提取的LPC系数计算HF增益的估计;将所述增益校正加到所计算的HF增益的估计,以获得HF增益;通过所述HF增益来放大LF激励信号以产生HF激励信号;以及通过HF合成滤波器来处理所述HF激励信号以产生HF信号的合成版本。
55.按照权利要求54的用于解码HF信号的方法,还包括在向所述HF合成滤波器提供所述HF激励信号之前,降低HF激励信号的蜂鸣。
56.按照权利要求54的用于解码HF信号的方法,其中,所述HF合成滤波器是HF线性预测合成滤波器。
57.按照权利要求54的用于解码HF信号的方法,还包括HF能量平滑HF信号的合成版本,以平滑在HF信号的所述合成版本中的能量变化。
58.按照权利要求54的用于解码HF信号的方法,其中,从编码的HF信号提取LPC系数包括从编码的HF信号解码ISF系数;将ISF系数转换为ISP系数;内插所述ISP系数;以及将内插的ISP系数转换为量化的HF LPC系数。
59.按照权利要求54的用于解码HF信号的方法,其中-提取LPC系数包括从编码的HF信号提取HF量化的LPC系数`AHF(z);以及-计算HF增益的估计包括从所提取的LPC参数计算;通过经由1/(1+0.9z-1)形式的一极滤波器滤波单位冲击δ(n)而计算在每个采样π个弧度的奈奎斯特频率衰减正弦h(n)的64个采样;通过LF LPC滤波器`A(z)来滤波所述衰减正弦h(n),以获得低频余项,其中,`A(z)表示来自LF解码器的LF量化的LPC系数;通过HF LPC合成滤波器1/`AHF(z)来滤波所滤波的衰减正弦h(n),以获得合成信号x(n);以及计算所述合成信号x(n)的能量的乘法逆元素,并且在对数域中表达它,以产生增益gmatch;以及内插所述增益gmatch以产生HF增益的估计。
60.一种用于解码通过带宽扩展方案而编码的HF信号的解码器,包括装置,用于接收编码的HF信号;装置,用于从编码的HF信号提取LPC系数和增益校正;装置,用于从所提取的LPC系数计算HF增益的估计;装置,用于将所述增益校正加到所计算的HF增益的估计,以获得HF增益;装置,用于通过所述HF增益来放大LF激励信号,以产生HF激励信号;以及装置,用于通过HF合成滤波器来处理所述HF激励信号,以产生HF信号的合成版本。
61.一种用于解码通过带宽扩展方案而编码的HF信号的解码器,包括输入器,用于接收编码的HF信号;解码器,被提供所编码的HF信号,并且从编码的HF信号提取LPC系数;解码器,被提供编码的HF信号,并且根据编码的HF信号提取增益校正;计算器,用于根据所提取的LPC系数计算HF增益的估计;加法器,用于将所述增益校正与所计算的HF增益的估计相加,以获得HF增益;放大器,用于通过所述HF增益来放大LF激励信号,以产生HF激励信号;以及HF合成滤波器,被提供HF激励信号,并且响应于所述HF激励信号而产生HF信号的合成版本。
62.按照权利要求61的用于解码HF信号的解码器,还包括蜂鸣降低器,在向所述HF合成滤波器提供所述HF激励信号之前,所述蜂鸣降低器被提供HF激励信号。
63.按照权利要求61的用于解码HF信号的解码器,其中,所述HF合成滤波器是HF线性预测合成滤波器。
64.按照权利要求61的用于解码HF信号的解码器,还包括HF能量平滑模块,被提供HF信号的合成版本,所述HF能量平滑模块平滑在HF信号的所合成版本中的能量变化。
65.按照权利要求61的用于解码HF信号的解码器,其中,从编码的HF信号提取LPC系数的解码器包括解码器,用于从编码的HF信号解码ISF系数;转换器,用于将ISF系数转换为ISP系数;内插器,用于内插所述ISP系数;以及转换器,用于将内插的ISP系数转换为量化的HF LPC系数。
66.按照权利要求61的用于解码HF信号的解码器,其中-提取LPC系数的解码器包括提取器,用于从编码的HF信号提取量化的LPC系数`AHF(z);以及-HF增益的估计的计算器包括计算器,用于通过经由1/(1+0.9z-1)形式的一极滤波器滤波单位冲击δ(n),而计算在每个采样π个弧度的奈奎斯特频率的衰减正弦h(n)的64个采样;LF LPC滤波器`A(z),用于滤波所述衰减正弦h(n)以获得低频余项,其中,`A(z)表示来自LF解码器的LF量化的LPC系数;HF LPC合成滤波器1/`AHF(z),用于滤波所滤波的衰减正弦h(n)以获得合成信号x(n);以及计算器,用于计算所述合成信号x(n)的能量的乘法逆元素,并且在对数域中表达它,以产生增益gmatch;以及内插器,用于内插所述增益gmatch以产生HF增益的估计。
67.一种在按照第一编码模式编码的先前帧和按照第二编码模式编码的当前帧之间的结合处从第一声音信号编码模式向第二声音信号编码模式转换的方法,其中,通过加权滤波器来滤波所述声音信号以在当前帧中产生加权的信号,所述方法包括计算所述加权滤波器的零输入响应;为零输入响应建立窗口,以便所述零输入响应具有在预定时段后单调地降低到零的幅度;以及在当前帧中,从加权的信号去除建立窗口的零输入响应。
68.按照权利要求67的从第一声音信号编码模式向第二声音信号编码模式转换的方法,其中,计算所述加权滤波器的零输入响应包括计算在加权域中的零输入响应。
69.按照权利要求67的从第一声音信号编码模式向第二声音信号编码模式转换的方法,其中,所述第一编码模式是ACELP编码模式,所述第二编码模式是TCX编码模式。
70.按照权利要求67的从第一声音信号编码模式向第二声音信号编码模式转换的方法,其中,对零输入响应建立窗口包括将所述零输入响应删节到预定的时段。
71.按照权利要求67的从第一声音信号编码模式向第二声音信号编码模式转换的方法,包括在已经从加权信号去除建立窗口的零输入响应后,将所述加权信号建立窗口到预定持续时间的TCX帧中。
72.按照权利要求71的从第一声音信号编码模式向第二声音信号编码模式转换的方法,还包括将建立窗口到预定持续时间的TCX帧中的所加权信号变换到频域中。
73.按照权利要求67的从第一声音信号编码模式向第二声音信号编码模式转换的方法,其中,所述加权滤波器是感知加权滤波器。
74.一种用于在按照第一编码模式编码的先前帧和按照第二编码模式编码的当前帧之间的结合处从第一声音信号编码模式向第二声音信号编码模式转换的设备,其中,通过加权滤波器来滤波所述声音信号,以在当前帧中产生加权的信号,所述设备包括装置,用于计算所述加权滤波器的零输入响应;装置,用于为零输入响应建立窗口,以便所述零输入响应具有在预定的时段后单调地降低到零的幅度;以及装置,用于在当前帧中从加权的信号去除建立窗口的零输入响应。
75.一种用于在按照第一编码模式编码的先前帧和按照第二编码模式编码的当前帧之间的结合处从所述第一声音信号编码模式向所述第二声音信号编码模式转换的设备,其中,所述声音信号通过加权滤波器来滤波,以在当前帧中产生加权的信号,所述设备包括计算器,用于计算所述加权滤波器的零输入响应;窗口产生器,用于为零输入响应建立窗口,以便所述零输入响应具有在预定的时段后单调地降低到零的幅度;以及加法器,用于在当前帧中从加权的信号去除建立窗口的零输入响应。
76.按照权利要求75的用于从第一声音信号编码模式向第二声音信号编码模式转换的设备,其中,所述零输入响应计算器计算在加权域中的零输入响应。
77.按照权利要求75的用于从第一声音信号编码模式向第二声音信号编码模式转换的设备,其中,所述第一编码模式是ACELP编码模式,所述第二编码模式是TCX编码模式。
78.按照权利要求75的用于从第一声音信号编码模式向第二声音信号编码模式转换的设备,其中,所述窗口产生器将所述零输入响应删节至预定的时段。
79.按照权利要求75的用于从第一声音信号编码模式向第二声音信号编码模式转换的设备,包括另一个窗口产生器,用于在已经从加权信号去除建立窗口的零输入响应后,将所述加权信号建立窗口到预定持续时间的TCX帧中。
80.按照权利要求79的用于从第一声音信号编码模式向第二声音信号编码模式转换的设备,还包括频率变换模块,它在操作中把被建立窗口到预定持续时间的TCX帧中的所述加权信号变换到频域中。
81.按照权利要求67的用于从第一声音信号编码模式向第二声音信号编码模式转换的设备,其中,所述加权滤波器是感知加权滤波器。
82.一种在按照第一编码模式而编码的当前帧中从解码的目标信号产生重叠相加的目标信号的方法,包括在给定的窗口中建立当前帧的解码目标信号的窗口;跳过所述窗口的余下部分;计算按照第二编码模式而编码的先前帧的加权滤波器的零输入响应,并且为零输入响应建立窗口,以便所述零输入响应具有在预定的时段后单调地降低到零的幅度;以及将所计算的零输入响应加到解码的目标信号,以重建所述重叠相加的目标信号。
83.按照权利要求82的用于产生重叠相加的目标信号的方法,包括在对所述计算的零输入响应建立窗口之前加权所计算的零输入响应。
84.按照权利要求83的用于产生重叠相加的目标信号的方法,其中,加权所计算的零输入响应包括感知地加权所述计算的零输入响应。
85.按照权利要求82的用于产生重叠相加的目标信号的方法,包括在缓冲器中保存当前帧的采样的最后部分。
86.按照权利要求82的用于产生重叠相加的目标信号的方法,其中,建立窗口的、所计算的零输入响应具有在10毫秒后单调地降低到0的幅度。
87.一种用于在按照第一编码模式而编码的当前帧中从解码的目标信号产生重叠相加的目标信号的设备,包括装置,用于在给定的窗口中建立当前帧的解码目标信号的窗口;装置,用于跳过所述窗口的余下部分;装置,用于计算按照第二编码方案而编码的先前帧的加权滤波器的零输入响应,和装置,用于为零输入响应建立窗口以便所述零输入响应具有在预定的时段后单调地降低到零的幅度;以及装置,用于将所计算的零输入响应加到解码的目标信号,以重建所述重叠相加的目标信号。
88.一种用于在按照第一编码模式而编码的当前帧中从解码的目标信号产生重叠相加的目标信号的设备,包括第一窗口产生器,用于在给定的窗口中建立当前帧的解码目标信号的窗口;装置,用于跳过所述窗口的余下部分;计算器,用于计算按照第二编码模式而编码的先前帧的加权滤波器的零输入响应,和第二窗口产生器,用于为零输入响应建立窗口,以便所述零输入响应具有在预定的时段后单调地降低到零的幅度;以及加法器,用于将所计算的零输入响应加到解码的目标信号,以重建所述重叠相加的目标信号。
89.按照权利要求88的用于产生重叠相加的目标信号的设备,包括滤波器,用于在对所述计算的零输入响应建立窗口之前加权所计算的零输入响应。
90.按照权利要求89的用于产生重叠相加的目标信号的设备,其中,所述加权滤波器是感知加权滤波器。
91.按照权利要求88的用于产生重叠相加的目标信号的设备,包括缓冲器,用于保存当前帧的采样的最后部分。
92.按照权利要求88的用于产生重叠相加的目标信号的设备,其中,建立窗口的、所计算的零输入响应具有在10毫秒后单调地降低到0的幅度。
全文摘要
本发明的一个方面涉及一种用于低频加重在频域中被变换并且包括以多个块编组的变换系数的声音信号的频谱的方法,其中,计算一个块的最大能量,确定具有最大能量的块的位置指标,对于具有小于具有最大能量的块的位置指标的位置指标的每个块而计算因子,并且对于每个块,增益从所述因子确定,并被应用到所述块的变换系数。
文档编号G10L19/087GK1957398SQ200580011604
公开日2007年5月2日 申请日期2005年2月18日 优先权日2004年2月18日
发明者布鲁诺·贝塞特 申请人:沃伊斯亚吉公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1