一种增强音频编解码装置及方法

文档序号:2821641阅读:264来源:国知局
专利名称:一种增强音频编解码装置及方法
技术领域
本发明涉及音频编解码技术领域,具体地说,涉及一种基于感知模型的增强音频编解码装置及方法。
背景技术
为得到高保真的数字音频信号,需对数字音频信号进行音频编码或音频压缩以便于存储和传输。对音频信号进行编码的目的是用尽可能少的比特数实现音频信号的透明表示,例如原始输入的音频信号与经编码后输出的音频信号之间几乎没有差别。
在二十世纪八十年代初,CD的出现体现了用数字表示音频信号的诸多优点,例如高保真度、大动态范围和强鲁棒性。然而,这些优点都是以很高的数据速率为代价的。例如CD质量的立体声信号的数字化所要求的采样率为44.1kHz,且每个采样值需用15比特进行均匀量化,这样,没有经过压缩的数据速率就达到了1.41Mb/s,如此高的数据速率给数据的传输和存储带来极大的不便,特别是在多媒体应用和无线传输应用的场合下,更是受到带宽和成本的限制。为了保持高质量的音频信号,因此要求新的网络和无线多媒体数字音频系统必须降低数据的速率,且同时不损害音频的质量。针对上述问题,目前已提出了多种既能得到很高压缩比又能产生高保真的音频信号的音频压缩技术,典型的有国际标准化组织ISO/IEC的MPEG-1/-2/-4技术、杜比公司的AC-2/AC-3技术、索尼公司的ATRAC/MiniDisc/SDDS技术以及朗讯科技的PAC/EPAC/MPAC技术等。下面选择MPEG-2 AAC技术、杜比公司的AC-3技术进行具体的说明。
MPEG-1技术和MPEG-2 BC技术是主要用于单声道及立体声音频信号的高音质编码技术,随着对在较低码率下达到较高编码质量的多声道音频编码的需求的日益增长,由于MPEG-2 BC编码技术强调与MPEG-1技术的后向兼容性,因此无法以低于540kbps的码率实现五声道的高音质编码。针对这一不足,提出了MPEG-2 AAC技术,该技术可采用320kbps的速率对五声道信号实现较高质量的编码。
图1给出了MPEG-2 AAC编码器的方框图,该编码器包括增益控制器101、滤波器组102、时域噪声整形模块103、强度/耦合模块104、心理声学模型、二阶后向自适应预测器105、和/差立体声模块106、比特分配和量化编码模块107以及比特流复用模块108,其中比特分配和量化编码模块107进一步包括压缩比/失真处理控制器、尺度因子模块、非均匀量化器和熵编码模块。
滤波器组102采用改进的离散余弦变换(MDCT),其分辨率是信号自适应的,即对于稳态信号采用2048点MDCT变换,而对于瞬态信号则采用256点MDCT变换;这样,对于48kHz采样的信号,其最大频率分辨率为23Hz,最大时间分辨率为2.6ms。同时在滤波器组102中可以使用正弦窗和Kaiser-Bessel窗,当输入信号的谐波间隔小于140Hz时使用正弦窗,当输入信号中很强的成分间隔大于220Hz时使用Kaiser-Bessel窗。
音频信号经过增益控制器101后进入滤波器组102,根据不同的信号进行滤波,然后通过时域噪声整形模块103对滤波器组102输出的频谱系数进行处理,时域噪声整形技术是在频域上对频谱系数进行线性预测分析,然后依据上述分析控制量化噪声在时域上的形状,以此达到控制预回声的目的。
强度/耦合模块104是用于对信号强度的立体声编码,由于对于高频段(大于2kHz)的信号,听觉的方向感与有关信号强度的变化(信号包络)有关,而与信号的波形无关,即恒包络信号对听觉方向感无影响,因此可利用这一特点以及多声道间的相关信息,将若干声道合成一个共同声道进行编码,这就形成了强度/耦合技术。
二阶后向自适应预测器105用于消除稳态信号的冗余,提高编码效率。和差立体声(M/S)模块106是针对声道对进行操作,声道对是指诸如双声道信号或多声道信号中的左右声道或左右环绕声道的两个声道。M/S模块106利用声道对中两个声道之间的相关性以达到减少码率和提高编码效率的效果。比特分配和量化编码模块107是通过一个嵌套循环过程实现的,其中非均匀量化器是进行有损编码,而熵编码模块是进行无损编码,这样可以去除冗余和减少相关。嵌套循环包括内层循环和外层循环,其中内层循环调整非均匀量化器的步长直到所提供的比特用完,外层循环则利用量化噪声与掩蔽阈值的比来估计信号的编码质量。最后经过编码的信号通过比特流复用模块108形成编码的音频流输出。
在采样率可伸缩的情况下,输入信号同时进行四频段多相位滤波器组(PQF)中产生四个等带宽的频带,每个频带利用MDCT产生256个频谱系数,总共有1024个。在每个频带内都使用增益控制器101。而在解码器中可以忽略高频的PQF频带得到低采样率信号。
图2给出了对应的MPEG-2 AAC解码器的方框示意图。该解码器包括比特流解复用模块201、无损解码模块202、逆量化器203、尺度因子模块204、和/差立体声(M/S)模块205、预测模块206、强度/耦合模块207、时域噪声整形模块208、滤波器组209和增益控制模块210。编码的音频流经过比特流解复用模块201进行解复用,得到相应的数据流和控制流。上述信号通过无损解码模块202的解码后,得到尺度因子的整数表示和信号谱的量化值。逆量化器203是一组通过压扩函数实现的非均匀量化器组,用于将整数量化值转换为重建谱。由于编码器中的尺度因子模块是将当前尺度因子与前一尺度因子进行差分,然后将差分值采用Huffman编码,因此解码器中的尺度因子模块204进行Huffman解码可得到相应的差分值,再恢复出真实的尺度因子。M/S模块205在边信息的控制下将和差声道转换成左右声道。由于在编码器中采用二阶后向自适应预测器105消除稳态信号的冗余并提高编码效率,因此在解码器中通过预测模块206进行预测解码。强度/耦合模块207在边信息的控制下进行强度/耦合解码,然后输出到时域噪声整形模块208中进行时域噪声整形解码,最后通过滤波器组209进行综合滤波,滤波器组209采用逆向改进离散余弦变换(IMDCT)技术。
对于采样频率可伸缩的情况,可通过增益控制模块210忽略高频的PQF频带,以得到低采样率信号。
MPEG-2 AAC编解码技术适用于中高码率的音频信号,但对低码率或甚低码率的音频信号的编码质量较差;同时该编解码技术涉及的编解码模块较多,实现的复杂度较高,不利于实时实现。
图3给出了采用杜比AC-3技术的编码器的结构示意图,包括暂态信号检测模块301、改进的离散余弦变换滤波器MDCT 302、频谱包络/指数编码模块303、尾数编码模块304、前向-后向自适应感知模型305、参数比特分配模块306和比特流复用模块307。
音频信号通过暂态信号检测模块301判别是稳态信号还是瞬态信号,同时通过信号自适应MDCT滤波器组302将时域数据映射到频域数据,其中512点的长窗应用于稳态信号,一对短窗应用于瞬态信号。
频谱包络/指数编码模块303根据码率和频率分辨率的要求采用三种模式对信号的指数部分进行编码,分别是D15、D25和D45编码模式。AC-3技术在频率上对频谱包络采取差分编码,因为最多需要±2增量,每个增量代表6dB的电平变化,对于第一个直流项采用绝对值编码,其余指数就采用差分编码。在D15频谱包络指数编码中,每个指数大约需要2.33比特,3个差分组在一个7比特的字长中编码,D15编码模式通过牺牲时间分辨率而提供精细的频率分辨率。由于只是对相对平稳的信号才需要精细的频率分辨率,而这样的信号在许多块上的频谱保持相对恒定,因此,对于稳态信号,D15偶尔被传送,通常是每6个声音块(一个数据帧)的频谱包络被传送一次。当信号频谱不稳定时,需要常更新频谱估计值。估计值采用较小的频率分辨率编码,通常使用D25和D45编码模式。D25编码模式提供了合适的频率分辨率和时间分辨率,每隔一个频率系数就进行差分编码,这样每个指数大约需要1.15比特。当频谱在2至3个块上都是稳定的,然后突然变化时,可以采用D25编码模式。D45编码模式是每隔三个频率系数进行差分编码,这样每个指数大约需要0.58比特。D45编码模式提供了很高的时间分辨率和较低的频率分辨率,所以一般应用在对瞬态信号的编码中。
前向-后向自适应感知模型305用于估计每帧信号的掩蔽阈值。其中前向自适应部分仅应用在编码器端,在码率的限制下,通过迭代循环估计一组最佳的感知模型参数,然后这些参数被传递到后向自适应部分以估计出每帧的掩蔽阈值。后向自适应部分同时应用在编码器端和解码器端。
参数比特分配模块306根据掩蔽准则分析音频信号的频谱包络,以确定给每个尾数分配的比特数。该模块306利用一个比特池对所有声道进行全局比特分配。在尾数编码模块304中进行编码时,从比特池中循环取出比特分配给所有的声道,根据可以获得的比特数来调整尾数的量化。为达到压缩编码的目的,AC-3编码器还采用高频耦合的技术,将被耦合信号的高频部分按照人耳临界带宽划分成18个子频段,然后选择某些声道从某个子带开始进行耦合。最后通过比特流复用模块307形成AC-3音频流输出。
图4给出了采用杜比AC-3解码的流程示意图。首先输入经过AC-3编码器编码的比特流,对比特流进行数据帧同步和误码检测,如果检测到一个数据误码,则进行误码掩盖或弱音处理。然后对比特流进行解包,获得主信息和边信息,再进行指数解码。在进行指数解码时,需要有两个边信息一是打包的指数数目;一个是所采用的指数策略,如D15、D25或D45模式。已经解码的指数和比特分配边信息再进行比特分配,指出每个打包的尾数所用的比特数,得到一组比特分配指针,每个比特分配指针对应一个编码的尾数。比特分配指针指出用于尾数的量化器以及在码流中每个尾数占用的比特数。对单个编码的尾数值进行解量化,将其转变成一个解量化的值,占用零比特的尾数被恢复成零,或者在抖动标志的控制下用一个随机抖动值代替。然后进行解耦合的操作,解耦合是从公共耦合声道和耦合因子中恢复出被耦合声道的高频部分,包括指数和尾数。如果在编码端采用2/0模式编码时,会对某子带采用矩阵处理,那么在解码端需通过矩阵恢复将该子带的和差声道值转换成左右声道值。在码流中包含有每个音频块的动态范围控制值,将该值进行动态范围压缩,以改变系数的幅度,包括指数和尾数。将频域系数进行逆变换,转变成时域样本,然后对时域样本进行加窗处理,相邻的块进行重叠相加,重构出PCM音频信号。当解码输出的声道数小于编码比特流中的声道数时,还需要对音频信号进行下混处理,最后输出PCM流。
杜比AC-3编码技术主要针对高比特率多声道环绕声的信号,但是当5.1声道的编码比特率低于384kbps时,其编码效果较差;而且对于单声道和双声道立体声的编码效率也较低。
综上,现有的编解码技术无法全面解决从甚低码率、低码率到高码率音频信号以及单声道、双声道信号的编解码质量,实现较为复杂。

发明内容
本发明所要解决的技术问题在于提供一种增强音频编解码的装置及方法,以解决现有技术对于较低码率音频信号的编码效率低、质量差的问题。
本发明所述增强音频编码装置,包括信号类型分析模块、心理声学分析模块、时频映射模块、频域线性预测及矢量量化模块、量化和熵编码模块以及比特流复用模块;所述信号类型分析模块,用于对输入音频信号进行信号类型分析,并将音频信号输出给所述心理声学分析模块和所述时频映射模块,同时将信号类型分析结果输出给所述比特流复用模块;所述心理声学分析模块用于计算输入音频信号的掩蔽阈值和信掩比,并输出给所述量化和熵编码模块;所述时频映射模块用于将时域音频信号转变成频域系数;所述频域线性预测及矢量量化模块用于对频域系数进行线性预测和多级矢量量化,并输出残差序列到所述量化和熵编码模块,同时输出边信息到所述比特流复用模块;所述量化和熵编码模块用于在所述心理声学分析模块输出的信掩比的控制下对残差序列进行量化和熵编码,并输出到所述比特流复用模块;所述比特流复用模块用于将接收到的数据进行复用,形成音频编码的码流。
本发明所述增强音频解码装置,包括比特流解复用模块、熵解码模块、逆量化器组、逆频域线性预测及矢量量化模块和频率-时间映射模块;所述比特流解复用模块用于对压缩音频数据流进行解复用,并向所述熵解码模块和所述逆频域线性预测及矢量量化模块输出相应的数据信号和控制信号;所述熵解码模块用于对上述信号进行解码处理,恢复谱的量化值,输出到所述逆量化器组;所述逆量化器组用于重建逆量化谱,并输出到所述逆频域线性预测及矢量量化模块中;所述逆频域线性预测及矢量量化模块用于对逆量化谱进行逆量化处理和逆线性预测滤波,得到预测前的谱,并输出到所述频率-时间映射模块;所述频率-时间映射模块用于对谱系数进行频率-时间映射,得到低频带的时域音频信号。
本发明适用于多种采样率、声道配置的音频信号的高保真压缩编码,可以支持采样率为8kHz到192kHz之间的音频信号;可支持所有可能的声道配置;并且支持范围很宽的目标码率的音频编/解码。


图1是MPEG-2 AAC编码器的方框图;
图2是MPEG-2 AAC解码器的方框图;图3是采用杜比AC-3技术的编码器的结构示意图;图4是采用杜比AC-3技术的解码流程示意图;图5是本发明音频编码装置的结构示意图;图6是本发明音频解码装置的结构示意图;图7是本发明编码装置的实施例一的结构示意图;图8是采用Harr小波基小波变换的滤波结构示意图;图9是采用Harr小波基小波变换得到的时频划分示意图;图10是本发明解码装置的实施例一的结构示意图;图11是本发明编码装置的实施例二的结构示意图;图12是本发明解码装置的实施例二的结构示意图;图13是本发明编码装置的实施例三的结构示意图;图14是本发明解码装置的实施例三的结构示意图;图15是本发明编码装置的实施例四的结构示意图;图16是本发明解码装置的实施例四的结构示意图;图17是本发明编码装置的实施例五的结构示意图;图18是本发明解码装置的实施例五的结构示意图;图19是本发明编码装置的实施例六的结构示意图;图20是本发明解码装置的实施例六的结构示意图;图21是本发明编码装置的实施例七的结构示意图;图22是本发明解码装置的实施例七的结构示意图。
具体实施例方式
图1至图4是现有技术的几种编码器的结构示意图,已在背景技术中进行了介绍,此处不再赘述。
需要说明的是为方便、清楚地说明本发明,下述编解码装置的具体实施例是采用对应的方式说明的,但并不表明编码装置与解码装置必须是一一对应的。
如图5所示,本发明提供的音频编码装置包括信号类型分析模块50、心理声学分析模块51、时频映射模块52、频域线性预测及矢量量化模块53、量化和熵编码模块54以及比特流复用模块55;其中信号类型分析模块50用于对输入的音频信号进行信号类型分析;心理声学分析模块51用于计算音频信号的掩蔽阈值和信掩比;时频映射模块52用于将时域音频信号转变成频域系数;频域线性预测及矢量量化模块53用于对频域系数进行线性预测和多级矢量量化,输出残差序列到量化和熵编码模块54,同时将边信息输出到比特流复用模块55;量化和熵编码模块54用于在心理声学分析模块51输出的信掩比的控制下对残差系数进行量化和熵编码,并输出到比特流复用模块55;比特流复用模块55用于将接收到的数据进行复用,形成音频编码码流。
当数字音频信号输入信号预处理模块50后,进行信号类型分析,再将信号分别输入心理声学分析模块51和时频映射模块52,一方面在心理声学分析模块51中计算该帧音频信号的掩蔽阈值和信掩比,将信掩比作为控制信号传送给量化和熵编码模块54;另一方面时域的音频信号通过时频映射模块52转变成频域系数。上述频域系数传送至频域线性预测及矢量量化模块53中,如果频域系数的增益阈值满足给定的条件,则对频域系数进行线性预测滤波,获得的预测系数转换成线谱频率系数LSF(Line SpectrumFrequency),再采用最佳的失真度量准则搜索计算出各级码本的码字索引,并将码字索引作为边信息传送到比特流复用模块55,而经过预测分析得到的残差序列则输出到量化和熵编码模块54。上述残差序列/频域系数在心理声学分析模块51输出的信掩比的控制下,在量化和熵编码模块54中进行量化和熵编码。经过编码后的数据与边信息输入到比特流复用模块55中,经过复用形成增强音频编码的码流。
下面对上述音频编码装置的各个组成模块进行具体详细地说明。
在本发明中,信号类型分析模块50用于对输入音频信号进行类型分析。信号类型分析模块50基于自适应阈值和波形预测进行前、后向掩蔽效应分析来确定信号的类型为缓变信号还是快变信号,若是快变类型信号,则继续计算突变成分的相关参数信息,如突变信号发生的位置以及突变信号的强度等。
心理声学分析模块51主要用于计算输入音频信号的掩蔽阈值、感知熵和信掩比。根据心理声学分析模块51计算出的感知熵可动态地分析当前信号帧进行透明编码所需的比特数,从而调整帧间的比特分配。心理声学分析模块51输出各个子带的信掩比到量化和熵编码模块54,对其进行控制。
时频映射模块52用于实现音频信号从时域信号到频域系数的变换,由滤波器组构成,具体可以是离散傅立叶变换(DFT)滤波器组、离散余弦变换(DCT)滤波器组、修正离散余弦变换(MDCT)滤波器组、余弦调制滤波器组、小波变换滤波器组等。
通过时频映射得到的频域系数传送到频域线性预测及矢量量化模块53中进行线性预测和矢量量化。频域线性预测及矢量量化模块53由线性预测分析器、线性预测滤波器、转换器和矢量量化器构成。频域系数输入到线性预测分析器中进行预测分析,得到预测增益和预测系数,如预测增益满足一定条件,则将频域系数输出到线性预测滤波器中进行滤波,得到频域系数的预测残差序列;残差序列直接输出到量化和熵编码模块54中,而预测系数通过转换器转换成线谱对频率系数LSF,再进入矢量量化器中进行多级矢量量化,量化的有关边信息被传送到比特流复用模块55中。
对音频信号进行频域线性预测处理能够有效地抑制预回声并获得较大的编码增益。假设实信号x(t),其平方Hilbert包络e(t)表示为e(t)=F-1{∫C(ξ)·C*(ξ-f)dξ},其中C(f)为对应于信号x(t)正频率成分的单边谱,即信号的Hilbert包络是与该信号谱的自相关函数有关的。而信号的功率谱密度函数与其时域波形的自相关函数的关系为PSD(f)=F{∫x(τ)·x*(τ-t)dτ}。因此信号在时域的平方Hilbert包络与信号在频域的功率谱密度函数是互为对偶关系的。由上可知,每个一定频率范围内的部分带通信号,如果它的Hilbert包络保持恒定,那么相邻谱值的自相关也将保持恒定,这就意味着谱系数序列相对于频率而言是稳态序列,从而可以用预测编码技术来对谱值进行处理,用公用的一组预测系数来有效地表示该信号。
量化和熵编码模块54进一步包括了非线性量化器组和编码器,其中量化器可以是标量量化器或矢量量化器。矢量量化器进一步分为无记忆矢量量化器和有记忆矢量量化器两大类。对于无记忆矢量量化器,每个输入矢量是独立进行量化的,与以前的各矢量无关;有记忆矢量量化器是在量化一个矢量时考虑以前的矢量,即利用了矢量之间的相关性。主要的无记忆矢量量化器包括全搜索矢量量化器、树搜索矢量量化器、多级矢量量化器、增益/波形矢量量化器和分离均值矢量量化器;主要的有记忆矢量量化器包括预测矢量量化器和有限状态矢量量化器。
如果采用标量量化器,则非线性量化器组进一步包括M个子带量化器。在每个子带量化器中主要利用尺度因子进行量化,具体是对M个尺度因子带中所有的频域系数进行非线性压缩,再利用尺度因子对该子带的频域系数进行量化,得到整数表示的量化谱输出到编码器,将每帧信号中的第一个尺度因子作为公共尺度因子输出到比特流复用模块55,其它尺度因子与其前一个尺度因子进行差分处理后输出到编码器。
上述步骤中的尺度因子是不断变化的值,可按照比特分配策略来调整。本发明提供了一种全局感知失真最小的比特分配策略,具体如下首先,初始化每个子带量化器,选择合适的尺度因子,使得所有子带内的谱系数的量化值均为0。此时每个子带的量化噪声等于每个子带的能量值,每个子带的噪声掩蔽比NMR等于它的信掩比SMR,量化所消耗的比特数为0,剩余比特数Bl等于目标比特数B。
其次,查找噪声掩蔽比NMR最大的子带,若最大噪声掩蔽比NMR小于等于1,则尺度因子不变,输出分配结果,比特分配过程结束;否则,将对应的子带量化器的尺度因子减小一个单位,然后计算该子带所需增加的比特数ΔBi(Qi)。若该子带的剩余比特数Bl≥ΔBi(Qi),则确认此次尺度因子的修改,并将剩余比特数Bl减去ΔBi(Qi),重新计算该子带的噪声掩蔽比NMR,然后继续查找噪声掩蔽比NMR最大的子带,重复执行后续步骤。如果该子带的剩余比特数Bl<ΔBi(Qi),则取消此次修改,保留上一次的尺度因子以及剩余比特数,最后输出分配结果,比特分配过程结束。
如果采用矢量量化器,则频域系数组成多个M维矢量输入到非线性量化器组中,对于每个M维矢量都根据平整因子进行谱平整,即缩小谱的动态范围,然后由矢量量化器根据主观感知距离测度准则在码书中找到与待量化矢量距离最小的码字,将对应的码字索引传递给编码器。平整因子是根据矢量量化的比特分配策略调整的,而矢量量化的比特分配则根据不同子带间感知重要度来控制。
在经过上述量化处理后,利用熵编码技术进一步去除量化后的系数以及边信息的统计冗余。熵编码是一种信源编码技术,其基本思想是对出现概率较大的符号给予较短长度的码字,而对出现概率小的符号给予较长的码字,这样平均码字的长度最短。根据Shannon的无噪声编码定理,如果传输的N个源消息的符号是独立的,那么使用适当的变长度编码,码字的平均长度n将满足[H(x)log2(D)]≤n‾<[H(x)log2(D)+1N],]]>其中H(x)表示信源的熵,x表示符号变量。由于熵H(x)是平均码字长度的最短极限,上述公式表明此时码字的平均长度很接近于它的下限熵H(x),因此这种变长度编码技术又成为“熵编码”。熵编码主要有Huffman编码、算术编码或游程编码等方法,本发明中的熵编码均可采用上述编码方法的任一种。
经过标量量化器量化后输出的量化谱和差分处理后的尺度因子在编码器中进行熵编码,得到码书序号、尺度因子编码值和无损编码量化谱,再对码书序号进行熵编码,得到码书序号编码值,然后将尺度因子编码值、码书序号编码值和无损编码量化谱输出到比特流复用模块55中。
经过矢量量化器量化后得到的码字索引在编码器中进行一维或多维熵编码,得到码字索引的编码值,然后将码字索引的编码值输出到比特流复用模块55中。
比特流复用模块55收到频域线性预测及矢量量化模块53输出的边信息以及量化和熵编码模块54输出的包括公共尺度因子、尺度因子编码值、码书序号编码值和无损编码量化谱的码流或者是码字索引的编码值,对其进行复用,得到压缩音频数据流。
基于上述编码器的编码方法,具体包括对输入音频信号进行信号类型分析;计算类型分析后信号的信掩比;对信号类型分析后的信号进行时频映射,获得音频信号的频域系数;对频域系数进行标准的线性预测分析,得到预测增益和预测系数;判断预测增益是否超过设定的阈值,如果超过,则根据预测系数对频域系数进行频域线性预测误差滤波,得到频域系数的线性预测残差序列;将预测系数转化成线谱对频率系数,并对线谱对频率系数进行多级矢量量化处理,得到边信息;对残差序列进行量化和熵编码;如果预测增益未超过设定的阈值,则对频域系数进行量化和熵编码;将边信息和编码后的音频信号进行复用,得到压缩音频码流。
分析信号类型步骤是基于自适应阈值和波形预测进行前、后向掩蔽效应分析来确定信号是快变类型或缓变类型,具体步骤是将输入的音频数据分解成帧;把输入帧分解成多个子帧,并查找各个子帧上PCM数据绝对值的局部最大点;在各子帧的局部最大点中选出子帧峰值;对某个子帧峰值,利用该子帧前面的多个(典型的可取3个)子帧峰值预测相对该子帧前向延迟的多个(典型的可取4个)子帧的典型样本值;计算该子帧峰值与所预测出的典型样本值的差值和比值;如果预测差值和比值都大于设定的阈值,则判断该子帧存在突跃信号,确认该子帧具备后向掩蔽预回声能力的局部最大峰点,如果在该子帧前端与掩蔽峰点前2.5ms处之间存在一个峰值足够小的子帧,则判断该帧信号属于快变类型信号;如果预测差值和比值不大于设定的阈值,则重复上述步骤直到判断出该帧信号是快变类型信号或者到达最后一个子帧,如果到达最后一个子帧仍未判断出该帧信号是快变类型信号,则该帧信号属于缓变类型信号。
对时域音频信号进行时频变换的方法有很多,如离散傅立叶变换(DFT)、离散余弦变换(DCT)、修正离散余弦变换(MDCT)、余弦调制滤波器组、小波变换等。下面以修正离散余弦变换MDCT和余弦调制滤波为例说明时频映射的过程。
对于采用修正离散余弦变换MDCT进行时频变换的情况,首先选取前一帧M个样本和当前帧M个样本的时域信号,再对这两帧共2M个样本的时域信号进行加窗操作,然后对经过加窗后的信号进行MDCT变换,从而获得M个频域系数。
MDCT分析滤波器的脉冲响应为hk(n)=w(n)2Mcos[(2n+M+1)(2k+1)π4M],]]>则MDCT变换为
X(k)=Σn=02M-1x(n)hk(n)--0≤k≤M-1,]]>其中w(n)为窗函数;x(n)为MDCT变换的输入时域信号;X(k)为MDCT变换的输出频域信号。
为满足信号完全重构的条件,MDCT变换的窗函数w(n)必须满足以下两个条件w(2M-1-n)=w(n)且w2(n)+w2(n+M)=1。
在实际中,可选用Sine窗作为窗函数。当然,也可以通过使用双正交变换,用特定的分析滤波器和合成滤波器修改上述对窗函数的限制。
对于采用余弦调制滤波进行时频变换的情况,则首先选取前一帧M个样本和当前帧M个样本的时域信号,再对这两帧共2M个样本的时域信号进行加窗操作,然后对经过加窗后的信号进行余弦调制变换,从而获得M个频域系数。
传统的余弦调制滤波技术的冲击响应为hk(n)=2pa(n)cos(πM(k+0.5)(n-D2)+θk),]]>n=0,1,...,Nh-1fk(n)=2ps(n)cos(πM(k+0.5)(n-D2)θk),]]>n=0,1,...,Nf-1其中0≤k<M-1,0≤n<2KM-1,K为大于零的整数,θk=(-1)kπ4.]]>假设M子带余弦调制滤波器组的分析窗(分析原型滤波器)pa(n)的冲击响应长度为Na,综合窗(综合原型滤波器)ps(n)的冲击响应长度为Ns。当分析窗和综合窗相等时,即pa(n)=ps(n),且Na=Ns,由上面两式所表示的余弦调制滤波器组为正交滤波器组,此时矩阵H和F([H]n,k=hk(n),[F]n,k=fk(n))为正交变换矩阵。为获得线性相位滤波器组,进一步规定对称窗pa(2KM-1-n)=pa(n)。为保证正交和双正交系统的完全重构性,窗函数还需满足一定的条件,详见文献“Multirate Systems and Filter Banks”,P.P.Vaidynathan,Prentice Hall,Englewood Cliffs,NJ,1993。
计算预处理后音频信号的掩蔽阈值和信掩比包括以下步骤第一步、将信号进行时域到频域的映射。可采用快速傅立叶变换和汉宁窗(hanningwindow)技术,将时域数据转换成频域系数X[k]。X[k]用幅度r[k]和相位φk]表示为X[k]=r[k]ejφ[k],那么每个子带的能量e[b]是该子带内所有谱线能量的和,即e[b]=Σk=klk=khr2[k],]]>其中kl和kh分别表示子带b的上下边界。
第二步、确定信号中的音调和非音调成分。信号的音调性是通过对每个谱线进行帧间预测来估计的,每个谱线的预测值和真实值的欧氏距离被映射为不可预测测度,高预测性的谱成分被认为是音调性很强的,而低预测性的谱成分被认为是类噪声的。
预测值的幅度rpred和相位φpred可用以下公式来表示rpred[k]=rt-1[k]+(rt-1[k]-rt-2[k])φpred[k]=φt-1[k]+(φt-1[k]-φt-2[k]),其中,t表示当前帧的系数;t-1表示前一帧的系数;t-2表示前两帧的系数。
那么,不可预测测度c[k]的计算公式为c[k]=dist(X[k],Xpred[k])r[k]+|rpred[k]]]>其中,欧氏距离dist(X[k],Xpred[k])采用下式计算dist(X[k],Xpred[k])=|X[k]-Xpred[k]|=((r[k]cos(φ[k])-rpred[k]cos(φpred[k]))2+(r[k]sin(φ[k])-rpred[k]sin(φpred[l]))2)。
因此,每个子带的不可预测度c[b]是该子带内所有谱线的能量对其不可预测度的加权和,即c[b]=Σk=klk=khc[k]r2[k].]]>子带能量e[b]和不可预测度c[b]分别与扩展函数进行卷积运算,得到子带能量扩展es[b]和子带不可预测度扩展cs[b],掩模i对子带b的扩展函数表示为s[i,b]。为了消除扩展函数对能量变换的影响,需要对子带不可预测度扩展cs[b]做归一化处理,其归一化的结果用 表示为c~s[b]=cs[b]es[b].]]>同样,为消除扩展函数对子带能量的影响,定义归一化能量扩展 为e~s[b]=es[b]n[b],]]>其中归一化因子n[b]为n[b]=Σi=1bmaxs[i,b],]]>bmax为该帧信号所分的子带数。
根据归一化不可预测度扩展 可计算子带的音调性t[b]t[b]=-0.299-0.43loge(c~s[b]),]]>且0≤t[b]≤1。
当t[b]=1时,表示该子带信号为纯音调;当t[b]=0时,表示该子带信号为白噪声。
第三步、计算每个子带所需的信噪比(Signal-to-Noise Ratio,简称SNR)。将所有子带的噪声掩蔽音调(Noise-Masking-Tone,简称NMT)的值设为5dB,音调掩蔽噪声(Tone-Masking-Noise,简称TMN)的值设为18dB,若要使噪声不被感知,则每个子带所需的信噪比SNR[b]是SNR[b]=18t[b]+6(1-t[b])。
第四步、计算每个子带的掩蔽阈值以及信号的感知熵。根据前述步骤得到的每个子带的归一化信号能量和所需的信噪比SNR,计算每个子带的噪声能量阈值n[b]为n[b]=e~s[b]10-SNR[b]/10.]]>为了避免预回声的影响,将当前帧的噪声能量阈值n[b]与前一帧的噪声能量阈值nprev[b]进行比较,得到信号的掩蔽阈值为n[b]=min(n[b],2nprev[b]),这样可以确保掩蔽阈值不会因为在分析窗的近末端有高能量的冲击产生而出现偏差。
进一步地,考虑静止掩蔽阈值qsthr[b]的影响,选择最终的信号的掩蔽阈值为静止掩蔽阈值与上述计算的掩蔽阈值两者中的数值大者,即n[b]=max(n[b],qsthr[b])。然后采用如下公式计算感知熵,即pe=-Σb=0bmax(cbwidthb×log10(n[b]/(e[b]+1))),]]>其中cbwidthb表示各子带所包含的谱线个数。
第五步计算每个子带信号的信掩比(Signal-to-Mask Ratio,简称SMR)。每个子带的信掩比SMR[b]为SMR[b]=10log10(e[b]n[b]).]]>在获得了频域系数后,对频域系数进行线性预测和矢量量化。首先对频域系数进行标准的线性预测分析,包括计算自相关矩阵、递推执行Levinson-Durbin算法获得预测增益和预测系数。判断计算的预测增益是否超过预先设定的阈值,如果超过,则根据预测系数对频域系数进行频域线性预测误差滤波;否则对频域系数不作处理,执行下一步骤,对频域系数进行量化和熵编码。
线性预测可分为前向预测和后向预测两种,前向预测是指利用某一时刻之前的值预测当前值,而后向预测是指利用某一时刻之后的值预测当前值。下面以前向预测为例说明线性预测误差滤波,线性预测滤波函数为A(z)=1-Σi=1paiz-i,]]>其中ai表示预测系数,p为预测阶数。经过时间-频率变换后的频域系数X(k)经过滤波后,得到预测误差E(k),也称残差序列,两者之间满足关系E(k)=X(k)·A(z)=X(k)-Σi=1paiX(k-i).]]>这样,经过频域线性预测滤波,时间-频率变换输出的频域系数X(k)就可以用残差序列E(k)和一组预测系数ai表示。然后将这组预测系数ai转换成线谱频率系数LSF,并对其进行多级矢量量化,矢量量化选择最佳的失真度量准则(如最近邻准则),搜索计算出各级码本的码字索引,以此可确定预测系数对应的码字,将码字索引作为边信息输出。同时,对残差序列E(k)进行量化和熵编码。由线性预测分析编码原理可知,谱系数的残差序列的动态范围小于原始谱系数的动态范围,因此在量化时可以分配较少的比特数,或者对于相同比特数的条件,可以获得改进的编码增益。
在获得了子带信号的信掩比后,根据信掩比对频域系数或残差序列进行量化和熵编码,其中量化可以是标量量化或矢量量化。
标量量化包括以下步骤对所有尺度因子带中的频域系数进行非线性压缩;再利用每个子带的尺度因子对该子带的频域系数进行量化,得到整数表示的量化谱;选择每帧信号中的第一个尺度因子作为公共尺度因子;其它尺度因子与其前一个尺度因子进行差分处理。
矢量量化包括以下步骤将频域系数构成多个多维矢量信号;对于每个M维矢量都根据平整因子进行谱平整;根据主观感知距离测度准则在码书中查找与待量化矢量距离最小的码字,获得其码字索引。
熵编码步骤包括对量化谱和差分处理后的尺度因子进行熵编码,得到码书序号、尺度因子编码值和无损编码量化谱;对码书序号进行熵编码,得到码书序号编码值。
或者是对码字索引进行一维或多维熵编码,得到码字索引的编码值。
上述的熵编码方法可以采用现有的Huffman编码、算术编码或游程编码等方法中的任一种。
经过量化和熵编码处理后,得到音频编码信号,将该信号与公共尺度因子、边信息、信号类型分析结果一起进行复用,得到压缩音频码流。
图6是本发明音频解码装置的结构示意图。音频解码装置包括比特流解复用模块801、熵解码模块802、逆量化器组803、逆频域线性预测及矢量量化模块804和频率-时间映射模块805。压缩音频数据流经过比特流解复用模块801的解复用后,得到相应的数据信号和控制信号,输出到熵解码模块802和逆频域线性预测及矢量量化模块804。数据信号和控制信号在熵解码模块802中进行解码处理,恢复出谱的量化值。上述量化值在逆量化器组803中重建,得到逆量化后的谱,逆量化谱输出到逆频域线性预测及矢量量化模块804中,进行逆量化处理和逆线性预测滤波,得到预测前的谱,并输出到频率-时间映射模块805中,经过频率-时间映射处理后得到低频带的时域音频信号。
比特流解复用模块801对压缩音频数据流进行分解,得到相应的数据信号和控制信号,为其他模块提供相应的解码信息。压缩音频数据流经过解复用后,输出到熵解码模块802的信号包括公共尺度因子、尺度因子编码值、码书序号编码值和无损编码量化谱,或者是码字索引的编码值;输出到逆线性预测及矢量量化模块804的是逆频域线性预测矢量量化控制信息。
在编码装置中,如果量化和熵编码模块54中采用标量量化器,则在解码装置中,熵解码模块802收到的是比特流解复用模块801输出的公共尺度因子、尺度因子编码值、码书序号编码值和无损编码量化谱,然后对其进行码书序号解码、谱系数解码和尺度因子解码,重建出量化谱,并向逆量化器组803输出尺度因子的整数表示和谱的量化值。熵解码模块802采用的解码方法与编码装置中熵编码的编码方法相对应,如Huffman解码、算术解码或游程解码等。
逆量化器组803接收到谱的量化值和尺度因子的整数表示后,将谱的量化值逆量化为无缩放的重建谱(逆量化谱),并向逆频域线性预测及矢量量化模块804输出逆量化谱。逆量化器组803可以是均匀量化器组,也可以是通过压扩函数实现的非均匀量化器组。在编码装置中,量化器组采用的是标量量化器,则在解码装置中的逆量化器组803也采用标量逆量化器。在标量逆量化器中,首先对谱的量化值进行非线性扩张,然后利用每个尺度因子得到对应尺度因子带中所有的谱系数(逆量化谱)。
如果量化和熵编码模块54中采用矢量量化器,则在解码装置中,熵解码模块802收到比特流解复用模块801输出的码字索引的编码值,将码字索引的编码值采用与编码时的熵编码方法对应的熵解码方法进行解码,得到对应的码字索引。
码字索引输出到逆量化器组803中,通过查询码书,得到量化值(逆量化谱),输出到频率-时间映射模块805。逆量化器组803采用逆矢量量化器。
在编码器中,采用频域线性预测矢量量化技术来抑制预回声,并获得较大的编码增益。因此在解码器中,逆量化谱和比特流解复用模块801输出的逆频域线性预测矢量量化控制信息输入到逆频域线性预测及矢量量化模块804中恢复出线性预测前的谱。
逆频域线性预测及矢量量化模块804包括逆矢量量化器、逆转换器和逆线性预测滤波器,其中逆矢量量化器用于对码字索引进行逆量化得到线谱对频率系数LSF;逆转换器则用于将线谱频率系数LSF逆转换为预测系数;逆线性预测滤波器用于根据预测系数对逆量化谱进行逆滤波,得到预测前的谱,并输出到频率-时间映射模块805。
逆量化谱或预测前的谱通过频率-时间映射模块805的映射处理,可以得到低频段的时域音频信号。频率-时间映射模块805可以是逆离散余弦变换(IDCT)滤波器组、逆离散傅立叶变换(IDFT)滤波器组、逆修正离散余弦变换(IMDCT)滤波器组、逆小波变换滤波器组以及余弦调制滤波器组等。
基于上述解码器的解码方法包括对压缩音频码流进行解复用,得到数据信息和控制信息;对上述信息进行熵解码,得到谱的量化值;对谱的量化值进行逆量化处理,得到逆量化谱;判断控制信息中是否包含逆量化谱需要经过逆频域线性预测矢量量化的信息,如果含有,则进行逆矢量量化处理,得到预测系数,并根据预测系数对逆量化谱进行逆线性预测滤波,得到预测前的谱;将预测前的谱进行频率-时间映射,得到低频带的时域音频信号;如果控制信息中没有包含逆量化谱需经过逆频域线性预测矢量量化的信息,则对逆量化谱进行频率-时间映射,得到低频带的时域音频信号。
如果解复用后的信息中包括码书序号编码值、公共尺度因子、尺度因子编码值和无损编码量化谱,则表明在编码装置中谱系数是采用标量量化技术进行量化,则熵解码的步骤包括对码书序号编码值进行解码,获得所有尺度因子带的码书序号;根据码书序号对应的码书,解码所有尺度因子带的量化系数;解码所有尺度因子带的尺度因子,重建量化谱。上述过程所采用的熵解码方法对应编码方法中的熵编码方法,如游程解码方法、Huffman解码方法、算术解码方法等。
下面以采用游程解码方法解码码书序号、采用Huffman解码方法解码量化系数和采用Huffman解码方法解码尺度因子为例,说明熵解码的过程。
首先通过游程解码方法获得所有尺度因子带的码书号,解码后的码书号为某一区间的整数,如假设该区间为
,那么只有位于该有效范围内的,即0至11之间的码书序号才与对应的谱系数Huffman码书相对应。对于全零子带,可选择某一码书序号对应,典型的可选0序号。
当解码得到各尺度因子带的码书号后,使用与该码书号对应的谱系数Huffman码书,对所有尺度因子带的量化系数进行解码。如果一个尺度因子带的码书号在有效范围内,本实施例如在1至11之间,那么该码书号对应一个谱系数码书,则使用该码书从量化谱中解码得到尺度因子带的量化系数的码字索引,然后从码字索引中解包得到量化系数。如果尺度因子带的码书号不在1至11之间,那么该码书号不对应任何谱系数码书,该尺度因子带的量化系数也就不用解码,直接将该子带的量化系数全部置为零。
尺度因子用于在逆量化谱系数基础上重构谱值。如果尺度因子带的码书号处于有效范围内,则每一个码书号都对应一个尺度因子。在对上述尺度因子进行解码时,首先读取第一个尺度因子所占用的码流,然后对其它尺度因子进行Huffman解码,依次得到各尺度因子与前一尺度因子之间的差值,将该差值与前一尺度因子值相加,得到各尺度因子。如果当前子带的量化系数全部为零,那么该子带的尺度因子不需要解码。
经过上述熵解码过程后,得到谱的量化值和尺度因子的整数表示,然后对谱的量化值进行逆量化处理,获得逆量化谱。逆量化处理包括对谱的量化值进行非线性扩张;根据每个尺度因子得到对应尺度因子带中的所有谱系数(逆量化谱)。
如果解复用后的信息中包括码字索引的编码值,则表明编码装置中采用矢量量化技术对谱系数进行量化,则熵解码的步骤包括采用与编码装置中熵编码方法对应的熵解码方法对码字索引的编码值进行解码,得到码字索引。然后对码字索引进行逆量化处理,获得逆量化谱。
对逆量化谱进行逆频域线性预测矢量量化。首先根据控制信息判断该帧信号是否经过频域线性预测矢量量化,如果是,则从控制信息中获得预测系数矢量量化后的码字索引;再根据码字索引得到量化的线谱频率系数LSF,并以此计算出预测系数;然后将逆量化谱进行线性预测合成,得到预测前的谱。
线性预测误差滤波处理所采用的传递函数A(z)为A(z)=1-Σi=1paiz-i,]]>其中ai是预测系数;p为预测阶数。因此残差序列E(k)与预测前的谱X(k)满足X(k)=E(k)·1A(z)=E(k)+Σi=1paiX(k-i).]]>这样,残差序列E(k)和计算出的预测系数ai经过频域线性预测合成,就可得到预测前的谱X(k),将预测前的谱X(k)进行频率-时间映射处理。
如果控制信息表明该帧信号没有经过频域线性预测矢量量化,则不进行逆频域线性预测矢量量化处理,将逆量化谱直接进行频率-时间映射处理。
对逆量化谱进行频率-时间映射处理的方法与编码方法中的时-频映射处理方法相对应,可以采用逆离散余弦变换(IDCT)、逆离散傅立叶变换(IDFT)、逆修正离散余弦变换(IMDCT)、逆小波变换等方法完成。
下面以逆修正离散余弦变换IMDCT为例说明频率-时间映射过程。频率-时间映射过程包括三个步骤IMDCT变换、时域加窗处理和时域叠加运算。
首先对预测前的谱或逆量化谱进行IMDCT变换,得到变换后的时域信号xi,n。IMDCT变换的表达式为xi,n=2NΣk=0N2-1spec[i][k]cos(2πN(n+n0)(k+12)),]]>其中,n表示样本序号,且0≤n<N,N表示时域样本数,取值为2048,n0=(N/2+1)/2;i表示帧序号;k表示谱序号。
其次,对IMDCT变换获得的时域信号在时域进行加窗处理。为满足完全重构条件,窗函数w(n)必须满足以下两个条件w(2M-1-n)=w(n)且w2(n)+w2(n+M)=1。
典型的窗函数有Sine窗、Kaiser-Bessel窗等。本发明采用一种固定的窗函数,其窗函数为w(N+k)=cos(pi/2*((k+0.5)/N-0.94*sin(2*pi/N*(k+0.5))/(2*pi))),其中pi为圆周率,k=0...N-1;w(k)表示窗函数的第k个系数,有w(k)=w(2*N-1-k);N表示编码帧的样本数,取值为N=1024。另外可以利用双正交变换,采用特定的分析滤波器和合成滤波器修改上述对窗函数的限制。
最后,对上述加窗时域信号进行叠加处理,得到时域音频信号。具体是将加窗操作后获得的信号的前N/2个样本和前一帧信号的后N/2个样本重叠相加,获得N/2个输出的时域音频样本,即timeSami,n=preSami,n+preSami-1,n+N/2,其中i表示帧序号,n表示样本序号,有0≤n≤N2,]]>且N的取值为2048。
压缩音频数据流经过上述步骤的处理后,得到低频带的时域音频信号。
图7给出了本发明编码装置的实施例一的结构示意图。该实施例在图5的基础上,在频域线性预测及矢量量化模块53的输出与量化和熵编码模块54的输入之间增加了多分辨率分析模块56。
对于快变类型信号,为有效克服编码过程中产生的预回声现象,提高编码质量,本发明编码装置通过多分辨率分析模块56来提高编码快变信号的时间分辨率。频域线性预测及矢量量化模块53输出的残差序列或频域系数输入到多分辨率分析模块56中,如果是快变类型信号,则进行频域小波变换或频域修正离散余弦变换(MDCT),获得对残差序列/频域系数的多分辨率表示,输出到量化和熵编码模块54中。如果是缓变类型信号,则对残差序列/频域系数不进行处理,直接输出到量化和熵编码模块54。
多分辨率分析模块56对输入的频域数据进行时-频域的重新组织,以频率精度的降低为代价提高频域数据的时间分辨率,从而自动适应快变类型信号的时频特性,达到抑制预回声的效果,而无需随时调整时频映射模块52中滤波器组的形式。多分辨率分析模块56包括频域系数变换模块和重组模块,其中频域系数变换模块用于将频域系数变换为时频平面系数;重组模块用于将时频平面系数按照一定的规则进行重组。频域系数变换模块可采用频域小波变换滤波器组、频域MDCT变换滤波器组等。
下面以频域小波变换和频域MDCT变换为例,说明多分辨率分析模块56的工作过程。
1)频域小波变换假设时序序列x(i),i=0,1,...,2M-1,经过时频映射后获得的频域系数为X(k),k=0、1、...、M-1。频域小波或小波包变换的小波基可以是固定的,也可以是自适应的。
下面以最筒单的Harr小波基小波变换为例,说明对频域系数进行多分辨率分析的过程。
Harr小波基的尺度系数为 小波系数为 图8示出了采用Harr小波基进行小波变换的滤波结构示意图,其中H0表示低通滤波(滤波系数为 ),H1表示高通滤波(滤波系数为 ),“↓2”表示2倍的下采样操作。对于MDCT系数的中低频部分X1(k),k=0,...,k1不进行小波变换,对MDCT系数的高频部分进行Harr小波变换,得到不同的时间-频率区间的系数X2(k)、X3(k)、X4(k)、X5(k)、X6(k)和X7(k),对应的时间-频率平面划分如图9所示。选择不同的小波基,可选用不同的小波变换结构进行处理,得到其他类似的时间-频率平面划分。因此可以根据需要,任意调整信号分析时的时频平面划分,满足不同的时间和频率分辨率的分析要求。
上述时频平面系数在重组模块中按照一定的规则进行重组,例如可先将时频平面系数在频率方向组织,每个频带中的系数在时间方向组织,然后将组织好的系数按照子窗、尺度因子带的顺序排列。
2)频域MDCT变换设输入频域MDCT变换滤波器组的频域数据为X(k),k=0,1,...,N-1,依次对这N点频域数据进行M点的MDCT变换,使得时频域数据的频率精度有所下降,而时间精度则相应地提高了。在不同的频域范围内使用不同长度的频域MDCT变换,可以获得不同的时-频平面划分即不同的时、频精度。重组模块对频域MDCT变换滤波器组输出的时-频域数据进行重组,一种重组方法是先将时频平面系数在频率方向组织,同时每个频带中的系数在时间方向组织,然后将组织好的系数按照子窗、尺度因子带的顺序排列。
基于图7所示编码装置的编码方法,基本流程与基于图5所示编码装置的编码方法相同,区别在于增加了下述步骤在对残差序列/频域系数进行量化和熵编码之前,如果是快变类型信号,则对残差序列/频域系数进行多分辨率分析;如果不是快变类型信号,则直接将残差序列/频域系数进行量化和熵编码。
多分辨率分析可采用频域小波变换法或频域MDCT变换法。频域小波分析法包括对频域系数进行小波变换,得到时频平面系数;将上述时频平面系数按照一定的规则重组。而MDCT变换法则包括对频域系数进行MDCT变换,得到时频平面系数;将上述时频平面系数按照一定的规则重组。重组的方法可以包括先将时频平面系数在频率方向组织,每个频带中的系数在时间方向组织,然后将组织好的系数按照子窗、尺度因子带的顺序排列。
图10是本发明解码装置的实施例一的结构示意图。该解码装置在图6所示解码装置的基础上,增加多分辨率综合模块806。多分辨率综合模块806位于逆量化器组803的输出与逆频域线性预测及矢量量化模块804的输入之间,用于对逆量化谱进行多分辨率综合。
在编码器中,对快变类型信号采用了多分辨率滤波技术以提高编码快变类型信号的时间分辨率。相应地,在解码器中,需采用多分辨率综合模块806对快变类型信号恢复多分辨率分析前的频域系数。多分辨率综合模块806包括系数重组模块和系数变换模块,其中系数变换模块可以采用频域逆小波变换滤波器组或频域IMDCT变换滤波器组。
基于如图10所示的解码装置的解码方法,基本流程与基于图6所示解码装置的解码方法相同,区别在于增加了下述步骤在获得了逆量化谱后,对逆量化谱进行多分辨率综合,再判断是否需要对多分辨率综合后的逆量化谱进行逆频域线性预测矢量量化处理。
下面以频域IMDCT变换为例说明多分辨率综合的方法,具体包括对逆量化谱系数进行重组;对每个系数进行多个IMDCT变换,得到多分辨率分析前的逆量化谱。下面以128个IMDCT变换(8个输入,16个输出)详细说明该过程。首先,将逆量化谱系数按照子窗、尺度因子带的顺序排列;再按照频序进行重组,这样每个子窗的128个系数按频序被组织在一起。然后,将按子窗排列的系数每8个一组按频率方向组织,每组8个系数按时序排列,这样在频率方向共有128组系数。将每组系数进行16点IMDCT变换,每组IMDCT变换后输出的16个系数重叠相加,获得8个频域数据。依次由低频向高频方向进行128次类似的操作,获得1024个频域系数。
图11是本发明编码装置的第二个实施例的示意图。该实施例在图5的基础上,增加了和差立体声(M/S)编码模块57,位于频域线性预测及矢量量化模块53的输出与量化和熵编码模块54的输入之间,心理声学分析模块51将和差声道的掩蔽阈值输出到量化和熵编码模块54。对于多声道信号,心理声学分析模块51除了计算音频信号单声道的掩蔽阈值,还要计算和差声道的掩蔽阈值。和差立体声编码模块57还可以位于量化和熵编码模块54中的量化器组与编码器之间。
和差立体声编码模块57是利用声道对中两个声道之间的相关性,将左右声道的频域系数/残差序列转换为和差声道的频域系数/残差序列,以此达到减少码率和提高编码效率的效果,因此只适用于信号类型一致的多声道信号。如果是单声道信号或者信号类型不一致的多声道信号,则不进行和差立体声编码处理。
基于图11所示编码装置的编码方法与基于图5所示编码装置的编码方法基本相同,区别在于增加了下述步骤在对残差序列/频域系数进行量化和熵编码处理之前,判断音频信号是否为多声道信号,如果是多声道信号,则判断左、右声道信号的信号类型是否一致,如果信号类型一致,则判断两声道对应的尺度因子带之间是否满足和差立体声编码条件,如果满足,则对残差序列/频域系数进行和差立体声编码,得到和差声道的残差序列/频域系数;如果不满足,则不进行和差立体声编码;如果是单声道信号或信号类型不一致的多声道信号,则对频域系数不进行处理。
和差立体声编码除了可以应用在量化处理之前,还可以应用在量化之后、熵编码之前,即在对残差序列/频域系数量化后,判断音频信号是否为多声道信号,如果是多声道信号,则判断左、右声道信号的信号类型是否一致,如果信号类型一致,则判断尺度因子带是否满足编码条件,如果满足,则对量化谱进行和差立体声编码,得到和差声道的量化谱;如果不满足,则不进行和差立体声编码;如果是单声道信号或信号类型不一致的多声道信号,则对频域系数不进行处理。
判断尺度因子带是否可进行和差立体声编码的方法很多,本发明采用的判断方法是通过K-L变换。具体判断过程如下假如左声道尺度因子带的谱系数为l(k),右声道相对应的尺度因子带的谱系数为r(k),其相关矩阵C为C=CllClrClrCrr,]]>其中,Cll=1NΣk=0N-1l(k}*l(k);]]>Clr=1NΣk=0N-1l(k}*r(k);]]>Crr=1NΣk=0N-1r(k}*r(k);]]>N是尺度因子带的谱线数目。对相关矩阵C进行K-L变换,得到RCRT=Λ=λii00λee,]]>其中,R=cosα-sinαsinαcosα]]>α∈[-π2,π2]]]>旋转角度a满足tan(2α)=2ClrCll-Crr,]]>当a=±π/4时,就是和差立体声编码模式。因此当旋转角度a的绝对值偏离π/4较小时,比如3π/16<|a|<5π/16,对应的尺度因子带可以进行和差立体声编码。
如果和差立体声编码应用在量化处理之前,则将左右声道在尺度因子带的残差序列/频域系数通过线性变换用和差声道的残差序列/频域系数代替
MS=12111-1LR,]]>其中,M表示和声道残差序列/频域系数;S表示差声道残差序列/频域系数;L表示左声道残差序列/频域系数;R表示为右声道残差序列/频域系数。
如果和差立体声编码应用在量化之后,则左右声道在尺度因子带的量化后的残差序列/频域系数通过线性变换用和差声道的残差序列/频域系数代替M^S^=101-1L^R^,]]>其中 表示量化后的和声道残差序列/频域系数; 表示量化后的差声道残差序列/频域系数; 表示量化后的左声道残差序列/频域系数; 表示量化后的右声道残差序列/频域系数。
将和差立体声编码放在量化处理之后,不仅可以有效的去除左右声道的相关,而且由于在量化后进行,因此可以达到无损编码。
图12是本发明解码装置实施例二的示意图。该解码装置在图6所示的解码装置的基础上,增加了和差立体声解码模块807,位于逆量化器组803的输出与逆频域线性预测及矢量量化模块804的输入之间,接收比特流解复用模块801输出的信号类型分析结果与和差立体声控制信号,用于根据上述控制信息将和差声道的逆量化谱转换成左右声道的逆量化谱。
在和差立体声控制信号中,有一个标志位用于表明当前声道对是否需要和差立体声解码,若需要,则在每个尺度因子带上也有一个标志位表明对应尺度因子带是否需要和差立体声解码,和差立体声解码模块807根据尺度因子带的标志位,确定是否需要对某些尺度因子带中的逆量化谱进行和差立体声解码。如果在编码装置中进行了和差立体声编码,则在解码装置中必须对逆量化谱进行和差立体声解码。
和差立体声解码模块807还可以位于熵解码模块802的输出与逆量化器组803的输入之间,接收比特流解复用模块601输出的和差立体声控制信号和信号类型分析结果。
基于图12所示解码装置的解码方法基本与基于图6所示解码装置的解码方法相同,区别在于增加了下述步骤在得到逆量化谱后,如果信号类型分析结果表明信号类型一致,则根据和差立体声控制信号判断是否需要对逆量化谱进行和差立体声解码;如果需要,则根据每个尺度因子带上的标志位判断该尺度因子带是否需要和差立体声解码,如果需要,则将该尺度因子带中的和差声道的逆量化谱转换成左右声道的逆量化谱,再进行后续处理;如果信号类型不一致或者不需要进行和差立体声解码,则对逆量化谱不进行处理,直接进行后续处理。
和差立体声解码还可以在熵解码处理之后、逆量化处理之前进行,即当得到谱的量化值后,如果信号类型分析结果表明信号类型一致,则根据和差立体声控制信号判断是否需要对谱的量化值进行和差立体声解码;如果需要,则根据每个尺度因子带上的标志位判断该尺度因子带是否需要和差立体声解码,如果需要,则将该尺度因子带中的和差声道的谱的量化值转换成左右声道的谱的量化值,再进行后续处理;如果信号类型不一致或者不需要进行和差立体声解码,则对谱的量化值不进行处理,直接进行后续处理。
如果和差立体声解码在熵解码之后、逆量化之前,则左右声道在尺度因子带的频域系数采用下列运算通过和差声道的频域系数得到l^r^=101-1m^s^,]]>其中 表示量化后的和声道频域系数;表示量化后的差声道频域系数; 表示量化后的左声道频域系数; 表示量化后的右声道频域系数。
如果和差立体声解码在逆量化之后,则左右声道在子带的逆量化后的频域系数根据下面的矩阵运算通过和差声道的频域系数得到lr=111-1ms,]]>其中m表示和声道频域系数;s表示差声道频域系数;l表示左声道频域系数;r表示右声道频域系数。
图13给出了本发明编码装置的第三个实施例的结构示意图。该实施例是在图5所示编码装置的基础上,增加了频带扩展模块58和重采样模块59,其中频带扩展模块58用于将原始输入音频信号在整个频带上进行分析,提取高频部分的谱包络及表征低、高频谱之间相关性的有关参数,作为频带扩展信息输出到比特流复用模块55;重采样模块59用于对原始输入音频信号进行重采样,改变音频信号的采样率。
重采样包括上采样和下采样两种,下面以下采样为例说明重采样。在本实施例中,重采样模块59包括低通滤波器和下采样器,其中低通滤波器用于限制音频信号的频带,消除下采样可能引起的混叠。输入的音频信号经过低通滤波后,进行下采样。假设输入的音频信号为s(n),经过脉冲响应为h(n)的低通滤波器滤波后的输出为v(n),则有v(n)=Σ-∞∞h(k)s(n-k);]]>对v(n)进行M倍的下采样后的序列为x(n),则有x(m)=v(Mm)=Σk=-∞∞h(k)s(Mm-k).]]>这样,重采样后的音频信号x(n)的采样率就比原始输入的音频信号s(n)的采样率降低了M倍。
频带扩展的基本原理是对于大多数音频信号,其高频部分的特性与低频部分的特性存在很强的相关性,因此音频信号的高频部分可以通过其低频部分有效地重构出来,这样,音频信号的高频部分可以不传输。为确保高频部分能够正确的重构,在压缩音频码流中仅需传输少量的频带扩展信息。
频带扩展模块58包括参数提取模块和谱包络提取模块,输入信号进入参数提取模块中,提取在不同时频区域表示输入信号谱特性的参数,然后在谱包络提取模块中,以一定的时频分辨率估计信号高频部分的谱包络。为了确保时频分辨率最适合于当前输入信号的特性,谱包络的时频分辨率可以自由选择。输入信号谱特性的参数和高频部分的谱包络作为频带扩展的输出送到比特流复用模块55中复用。
基于图13所示编码装置的编码方法与基于图5所示编码装置的编码方法基本相同,区别在于增加了下述步骤该编码方法还包括在对音频信号进行类型分析之前,对音频信号进行重采样;对输入音频信号在整个频带上进行分析,提取其高频谱包络和信号谱特性参数作为频带扩展控制信号,与音频编码信号、边信息一起复用,得到压缩音频码流。其中,重采样包括两个步骤限制音频信号的频带和对限制频带的音频信号进行多倍的下采样。
图14是本发明解码装置的实施例三结构示意图,该解码装置在图6所示解码装置的基础上,增加了频带扩展模块808,接收比特流解复用模块801输出的频带扩展控制信息和频率-时间映射模块805输出的低频段时域音频信号,通过频谱搬移和高频调整重建高频信号部分,输出宽频带音频信号。
基于图14所示解码装置的解码方法与基于图6所示解码装置的解码方法基本相同,区别在于增加了下述步骤该解码方法还包括根据频带扩展控制信息和时域音频信号,重建时域音频信号的高频部分,得到宽频带的音频信号。
图15是本发明编码装置的第四个实施例的结构示意图。该实施例是在图7所示编码装置的基础上,增加频带扩展模块58和重采样模块59。在本实施例中,频带扩展模块58和重采样模块59与其它模块之间的连接关系、功能及工作原理均与图13中的相同,此处不再赘述。
基于图15所示编码装置的编码方法与基于图7所示编码装置的编码方法基本相同,区别在于增加了下述步骤该编码方法还包括在对音频信号进行类型分析之前,对音频信号进行重采样;对输入音频信号在整个频带上进行分析,提取其高频谱包络和谱特性参数;最后与音频编码信号、边信息一起复用,得到压缩音频码流。
图16是本发明解码装置实施例四的示意图。该解码装置在图10所示解码装置的基础上,增加了频带扩展模块808。在本实施例中,频带扩展模块808与其它模块之间的连接关系、功能及工作原理均与图14中的相同,此处不再赘述。
基于图16所示解码装置的解码方法与基于图10所示解码装置的解码方法基本相同,区别在于增加了下述步骤该解码方法还包括根据频带扩展控制信息和时域音频信号,重建音频信号的高频部分,得到宽频带的音频信号。
图17给出了本发明编码装置的第五个实施例的结构示意图。该实施例是在图7所示编码装置的基础上,增加了和差立体声编码模块57,位于多分辨率分析模块56的输出与量化和熵编码模块54的输入之间或者位于量化和熵编码模块54中的量化器组与编码器之间。在本实施例中,和差立体声编码模块57的功能及工作原理与图11中的相同,此处不再赘述。
基于图17所示编码装置的编码方法与基于图7所示编码装置的编码方法基本相同,区别在于增加了下述步骤在对残差序列/频域系数进行多分辨率分析后,判断音频信号是否为多声道信号,如果是多声道信号,则判断左、右声道信号的信号类型是否一致,如果信号类型一致,则判断尺度因子带是否满足编码条件,如果满足,则对残差序列/频域系数进行和差立体声编码,得到和差声道的残差序列/频域系数;如果不满足,则不进行和差立体声编码;如果是单声道信号或信号类型不一致的多声道信号,则对频域系数不进行处理。具体的流程在上面已经介绍,此处不再赘述。
图18给出了本发明解码装置实施例五的结构示意图。该解码装置是在图10所示解码装置的基础上,增加了和差立体声解码模块807,位于逆量化器组803的输出与多分辨率综合806的输入之间或者位于熵解码模块802的输出与逆量化器组803的输入之间。本实施例中和差立体声解码模块807的功能及工作原理同图12,此处不再赘述。
基于图18所示解码装置的解码方法,与基于图10所示解码装置的解码方法基本相同,区别在于增加了下述步骤在得到逆量化谱后,如果信号类型分析结果表明信号类型一致,则根据和差立体声控制信号判断是否需要对逆量化谱进行和差立体声解码;如果需要,则根据每个尺度因子带上的标志位判断该尺度因子带是否需要和差立体声解码,如果需要,则将该尺度因子带中的和差声道的逆量化谱转换成左右声道的逆量化谱,再进行后续处理;如果信号类型不一致或者不需要进行和差立体声解码,则对逆量化谱不进行处理,直接进行后续处理。具体的流程在上面已经介绍,此处不再赘述。
图19给出了本发明编码装置的第六个实施例的示意图,该实施例是在图17的基础上,增加了频带扩展模块58和重采样模块59。在本实施例中,频带扩展模块58和重采样模块59与其它模块之间的连接关系、功能及工作原理均与图13中的相同,此处不再赘述。
基于图19所示编码装置的编码方法与基于图17所示编码装置的编码方法基本相同,区别在于增加了下述步骤该编码方法还包括在对音频信号进行类型分析之前,对音频信号进行重采样;对输入音频信号在整个频带上进行分析,提取其高频谱包络和谱特性参数;最后与音频编码信号、边信息一起复用,得到压缩音频码流。
图20是本发明解码装置实施例六的示意图。该解码装置在图18所示解码装置的基础上,增加了频带扩展模块808。在本实施例中,频带扩展模块808与其它模块之间的连接关系、功能及工作原理均与图14中的相同,此处不再赘述。
基于图20所示解码装置的解码方法与基于图18所示解码装置的解码方法基本相同,区别在于增加了下述步骤该解码方法还包括根据频带扩展控制信息和时域音频信号,重建音频信号的高频部分,得到宽频带的音频信号。
图21给出了本发明编码装置的第七个实施例的示意图,该实施例是在图11的基础上,增加了频带扩展模块58和重采样模块59。在本实施例中,频带扩展模块58和重采样模块59与其它模块之间的连接关系、功能及工作原理均与图14中的相同,此处不再赘述。
基于图21所示编码装置的编码方法与基于图11所示编码装置的编码方法基本相同,区别在于增加了下述步骤该编码方法还包括在对音频信号进行类型分析之前,对音频信号进行重采样;对输入音频信号在整个频带上进行分析,提取其高频谱包络和谱特性参数;最后与音频编码信号、边信息一起复用,得到压缩音频码流。
图22是本发明解码装置实施例七的示意图。该解码装置在图12的所示解码装置的基础上,增加了频带扩展模块808。在本实施例中,频带扩展模块808与其它模块之间的连接关系、功能及工作原理均与图14中的相同,此处不再赘述。
基于图22所示解码装置的解码方法与基于图12所示解码装置的解码方法基本相同,区别在于增加了下述步骤该解码方法还包括根据频带扩展控制信息和时域音频信号,重建音频信号的高频部分,得到宽频带的音频信号。
在上述编码装置的7个实施例中,还可以包括增益控制模块,接收信号类型分析模块59输出的音频信号,控制快变类型信号的动态范围,消除音频处理中的预回声,其输出连接到时频映射模块52和心理声学分析模块51,同时将增益调整量输出到比特流复用模块55。
增益控制模块根据音频信号的信号类型,只对快变类型信号进行控制,而对缓变类型信号,则不进行处理,直接输出。对于快变类型信号,增益控制模块调整信号的时域能量包络,提升快变点前信号的增益值,使得快变点前、后的时域信号幅度较为接近;然后将调整了时域能量包络的时域信号输出到时频映射模块52,同时将增益调整量输出到比特流复用模块55。
其编码方法与基于上述编码装置的编码方法基本相同,区别在于增加了下述步骤对经过信号类型分析的信号进行增益控制。
在上述解码装置的7个实施例中,还可以包括逆增益控制模块,位于频率-时间映射模块805的输出之后,接收比特流解复用模块801输出的信号类型分析结果和增益调整量信息,用于调整时域信号的增益,控制预回声。逆增益控制模块接收到频率-时间映射模块805输出的重建时域信号后,对快变类型信号进行控制,而对缓变类型信号不进行处理。对快变类型信号,逆增益控制模块根据增益调整量信息调整重建时域信号的能量包络,减小快变点前信号的幅度值,将能量包络调回原先的前低后高的状态,这样快变点前的量化噪声的幅度值会和信号的幅度值一起相应地减小,从而控制了预回声。
其解码方法与基于上述解码装置的解码方法相同,区别在于增加了下述步骤对重建时域信号进行逆增益控制。
最后所应说明的是,以上实施例仅用以说明本发明的技术方案而非限制,尽管参照较佳实施例对本发明进行了详细说明,本领域的普通技术人员应当理解,可以对本发明的技术方案进行修改或者等同替换,而不脱离本发明技术方案的精神和范围,其均应涵盖在本发明的权利要求范围当中。
权利要求
1.一种增强音频编码装置,包括心理声学分析模块、时频映射模块、量化和熵编码模块以及比特流复用模块,其特征在于,还包括信号类型分析模块和频域线性预测及矢量量化模块;所述信号类型分析模块用于对输入的音频信号进行信号类型分析,并将音频信号输出给所述心理声学分析模块和所述时频映射模块,同时将信号类型分析结果输出给所述比特流复用模块;所述心理声学分析模块用于计算做完信号类型分析后的音频信号的掩蔽阈值和信掩比,并输出到所述量化和熵编码模块;所述时频映射模块用于将时域音频信号变换为频域系数;所述频域线性预测及矢量量化模块用于对频域系数进行线性预测,并将产生的预测系数转换成线谱对频率系数,并对线谱对频率系数进行多级矢量量化,并输出频域系数的预测残差序列到所述量化和熵编码模块,同时输出边信息到所述比特流复用模块;所述量化和熵编码模块用于在所述心理声学分析模块输出的信掩比的控制下对残差序列/频域系数进行量化和熵编码,并输出到所述比特流复用模块;所述比特流复用模块用于将接收到的数据进行复用,形成音频编码码流。
2.根据权利要求1所述的增强音频编码装置,其特征在于,所述频域线性预测及矢量量化模块由线性预测分析器、线性预测滤波器、转换器和矢量量化器构成;所述线性预测分析器,用于对频域系数进行预测分析,得到预测增益和预测系数,并将满足一定条件的频域系数输出到所述线性预测滤波器;对于不满足条件的频域系数直接输出到所述量化和熵编码模块;所述线性预测滤波器,用于对频域系数进行滤波,得到频域系数的残差序列,并将残差序列输出到所述量化和熵编码模块,将预测系数输出到转换器;所述转换器,用于将预测系数转换成线谱对频率系数;所述矢量量化器,用于对线谱对频率系数进行多级矢量量化,量化后的信号被传送到所述比特流复用模块。
3.根据权利要求1所述的增强音频编码装置,其特征在于,还包括和差立体声编码模块,位于所述频域线性预测及矢量量化模块或所述多分辨率分析模块的输出与所述量化和熵编码模块的输入之间或者位于所述量化和熵编码模块中的量化器组与编码器之间,用于将左右声道的频域系数/残差序列转换为和差声道的频域系数/残差序列。
4.根据权利要求1至3任一所述的增强音频编码装置,其特征在于,还包括重采样模块和频带扩展模块,其中所述重采样模块,用于对输入音频信号进行重采样,改变输入信号的采样率;具体包括低通滤波器和下采样器,其中所述低通滤波器用于限制音频信号的频带,所述下采样器用于对信号进行下采样,降低信号的采样率;所述频带扩展模块用于将原始输入音频信号在整个频带上进行分析,提取高频部分的谱包络及表征低、高频部分之间相关性的参数,并输出到所述比特流复用模块;具体包括参数提取模块和谱包络提取模块;所述参数提取模块用于提取输入信号在不同时频区域表示输入信号谱特性的参数;所述谱包络提取模块用于以一定的时频分辨率估计信号高频部分的谱包络,然后将输入信号的谱特性参数和高频部分的谱包络输出到所述比特流复用模块。
5.一种增强音频编码方法,其特征在于,包括以下步骤步骤一、对输入音频信号进行信号类型分析,信号类型分析结果作为信号复用的一部分;步骤二、计算类型分析后的信号的信掩比;步骤三、对类型分析后的信号进行时频映射,获得音频信号的频域系数;步骤四、对频域系数进行标准的线性预测分析,得到预测增益和预测系数;判断预测增益是否超过设定的阈值,如果超过,则根据预测系数对频域系数进行频域线性预测误差滤波,得到残差序列;将预测系数转化成线谱对频率系数,并对线谱对频率系数进行多级矢量量化处理,得到边信息;如果预测增益未超过设定的阈值,则对频域系数不进行处理,转至步骤五;步骤五、对残差序列/频域系数进行量化和熵编码;步骤六、将边信息和编码后的音频信号进行复用,得到压缩音频码流。
6.根据权利要求5所述增强音频编码方法,其特征在于,所述步骤五中量化是标量量化,包括对所有尺度因子带中的频域系数进行非线性压扩;再利用每个子带的尺度因子对该子带的频域系数进行量化,得到整数表示的量化谱;选择每帧信号中的第一个尺度因子作为公共尺度因子;其它尺度因子与其前一个尺度因子进行差分处理;所述熵编码包括对量化谱和差分处理后的尺度因子进行熵编码,得到码书序号、尺度因子编码值和无损编码量化谱;对码书序号进行熵编码,得到码书序号编码值。
7.根据权利要求5或6所述增强音频编码方法,其特征在于,所述步骤五进一步包括对残差序列/频域系数进行量化;判断音频信号是否为多声道信号,如果是多声道信号,则判断左、右声道信号的信号类型是否一致,如果信号类型一致,则判断两声道对应的尺度因子带之间是否满足和差立体声编码条件,如果满足,则对两声道该尺度因子带中的残差序列/频域系数进行和差立体声编码,得到和差声道的残差序列/频域系数;如果不满足,则该尺度因子带中的残差序列/频域系数不进行和差立体声编码;如果是单声道信号或信号类型不一致的多声道信号,则对残差序列/频域系数不进行处理;对残差序列/频域系数进行熵编码;其中所述判断尺度因子带是否满足编码条件的方法是K-L变换,具体是计算左右声道尺度因子带的谱系数的相关矩阵;对相关矩阵进行K-L变换;如果旋转角度α的绝对值偏离π/4较小时,如3π/16<|α|<5π/16,则对应的尺度因子带可以进行和差立体声编码;所述和差立体声编码为M^S^=101-1L^R^,]]>其中 表示量化后的和声道频域系数; 表示量化后的差声道频域系数; 表示量化后的左声道频域系数; 表示量化后的右声道频域系数。
8.根据权利要求5至7任一所述增强音频编码方法,其特征在于,在所述步骤一之前,还包括对输入音频信号进行重采样,具体是限制音频信号的频带和对限制频带的音频信号进行多倍的下采样;在所述步骤六之后,还包括在整个频带上分析重采样操作前的原始输入音频信号,提取其高频谱包络和信号谱特性参数;与音频编码信号、边信息一起复用,得到压缩音频码流。
9.一种增强音频解码装置,包括比特流解复用模块、熵解码模块、逆量化器组和频率-时间映射模块,其特征在于,还包括逆频域线性预测及矢量量化模块;所述比特流解复用模块用于对压缩音频数据流进行解复用,并向所述熵解码模块和所述逆频域线性预测及矢量量化模块输出相应的数据信号和控制信号;所述熵解码模块用于对上述信号进行解码处理,恢复谱的量化值,输出到所述逆量化器组;所述逆量化器组用于重建逆量化谱,并输出到所述逆频域线性预测及矢量量化模块中;所述逆频域线性预测及矢量量化模块用于对逆量化谱进行逆线性预测滤波,得到预测前的谱,并输出所述到频率-时间映射模块;所述频率-时间映射模块用于对谱系数进行频率-时间映射,得到时域音频信号。
10.根据权利要求9所述的增强音频解码装置,其特征在于,所述逆频域线性预测及矢量量化模块包括逆矢量量化器、逆转换器和逆线性预测滤波器;所述逆矢量量化器用于对码字索引进行逆量化,得到线谱对频率系数;所述逆转换器则用于将线谱对频率系数逆转换为预测系数;所述逆线性预测滤波器用于根据预测系数将逆量化谱进行逆滤波,得到预测前的谱。
11.根据权利要求9或10所述的增强音频解码装置,其特征在于,还包括和差立体声解码模块,位于所述逆量化器组的输出与所述多分辨率综合或所述逆频域线性预测及矢量量化模块的输入之间或者位于所述熵解码模块的输出与所述逆量化器组的输入之间,接收所述比特流解复用模块输出的信号类型分析结果与和差立体声控制信号,用于根据上述控制信息将和差声道的逆量化谱转换成左右声道的逆量化谱。
12.一种增强音频解码方法,其特征在于,包括以下步骤步骤一、对压缩音频数据流进行解复用,得到数据信息和控制信息;步骤二、对上述信息进行熵解码,得到谱的量化值;步骤三、对谱的量化值进行逆量化处理,得到逆量化谱;步骤四、判断控制信息中是否包含逆量化谱需要经过逆频域线性预测矢量量化的信息,如果含有,则进行逆矢量量化处理,得到预测系数,并根据预测系数对逆量化谱进行线性预测合成,得到预测前的谱;如果没有包含逆量化谱经过频域线性预测矢量量化的信息,则不对逆量化谱进行处理,转至步骤五;步骤五、对预测前的谱/逆量化谱进行频率-时间映射,得到低频带的时域音频信号。
13.根据权利要求12所述的增强音频解码方法,其特征在于,所述逆矢量量化处理步骤进一步包括从控制信息中获得预测系数矢量量化后的码字索引;再根据码字索引得到量化的线谱对频率系数,并以此计算出预测系数。
14.根据权利要求12所述的增强音频解码方法,其特征在于,所述步骤五进一步包括对逆量化谱进行逆修正离散余弦变换,得到变换后的时域信号;对变换后的时域信号在时域进行加窗处理;对上述加窗时域信号进行叠加处理,得到时域音频信号;其中所述加窗处理中的窗函数为w(N+k)=cos(pi/2*((k+0.5)/N-0.94*sin(2*pi/N*(k+0.5))/(2*pi))),其中k=0...N-1;w(k)表示窗函数的第k个系数,有w(k)=w(2*N-1-k);N表示编码帧的样本数。
15.根据权利要求12至14任一所述的增强音频解码方法,其特征在于,在所述步骤二与步骤三之间,还包括如果信号类型分析结果表明信号类型一致,则根据和差立体声控制信号判断是否需要对谱的量化值进行和差立体声解码;如果需要,则根据每个尺度因子带上的标志位判断该尺度因子带是否需要和差立体声解码,如果需要,则将该尺度因子带中的和差声道的谱的量化值转换成左右声道的谱的量化值,转至步骤三;如果信号类型不一致或者不需要进行和差立体声解码,则对谱的量化值不进行处理,转至步骤三;其中所述和差立体声解码是l^r^=101-1m^s^,]]>其中 表示量化后的和声道谱的量化值; 表示量化后的差声道谱的量化值; 表示量化后的左声道谱的量化值; 表示量化后的右声道谱的量化值。
全文摘要
增强音频编码装置,包括信号类型分析模块、心理声学分析模块、时频映射模块、量化和熵编码模块、频域线性预测及矢量量化模块以及比特流复用模块;其中信号类型分析模块用于对输入的音频信号进行信号类型分析,输出到心理声学分析模块、时频映射模块和比特流复用模块中;频域线性预测及矢量量化模块用于对频域系数进行线性预测和多级矢量量化,输出残差序列到量化和熵编码模块,同时输出边信息到比特流复用模块。本发明适用于多种采样率、声道配置的音频信号的高保真压缩编码,可以支持采样率为8kHz到192kHz之间的音频信号;可支持所有可能的声道配置;并且支持范围很宽的目标码率的音频编/解码。
文档编号G10L19/00GK1677493SQ20041004633
公开日2005年10月5日 申请日期2004年6月3日 优先权日2004年4月1日
发明者潘兴德, 安德斯·叶瑞特, 朱晓明, 麦可·舒克, 任为民, 王磊, 豪格·何瑞施, 邓昊, 佛里德理克·海恩 申请人:北京宫羽数字技术有限责任公司, 北京阜国数字技术有限公司, 编码技术有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1