一种控制前回声的编码和解码装置及方法技术领域本发明涉及一种控制前回声的编码和解码装置及方法,尤其是一种利用修正窗函数方法来控制前回声的音频编码和解码装置及方法。
背景技术:
一般釆用感知编码器对音频信息进行编码压缩,其中传统的感知编码器中通常有一个心理声学模块,该心理声学模块的作用是分析音频信号中的不相关成分,在获得这些不相关成分后,再通过量化模块去处理这些不相关成分,而使音频信号达到感知透明,即对人的感觉没有影响或影响在可接受的范围内。在心理声学模块分析不相关成分时,主要利用人耳所具有的掩蔽现象。所谓掩蔽现象,如图1所示,就是在一个声音存在的情况下,另一个声音在人耳中不能被感知的现象,这种声音就是遮蔽信号3。掩蔽又分为同时掩蔽1(simultaneousmasking)、向前掩蔽2(pre-masking)和向后掩蔽4(post-masking)。其中向前掩蔽2和向后掩蔽3是表现在时域上的,因此对感知编码器时域特性有额外的要求,即要做到感知透明的编码质量,量化噪声也必须具有一个与时域相关的掩蔽阈值。但这个要求对实际的感知编码器来说并不容易实现。由时频的测不准原理可知:用块变换方法将音频时域信号变换到频域,然后对变换后的谱系数做量化和编码引起的量化误差,在用合成滤波器重构后,会在时域发生扩散。对常用的滤波器设计,如用窗长为2048个样本点的修正离散余弦变换(简称MDCT)滤波器对采样频率为48000赫兹的信号做变换,在用合成滤波器重构后,所引起量化误差的扩散约为42.7ms。如果在分析窗内信号较强的能量主要只集中在很d、一部分,那么量化噪声就会扩散到信号出现之前。在极端情况下,在某些时间段中,量化噪声甚至会高于原始信号的能量级,这就是所谓的前回声(pre-echo),,现象,如图2和图3所示。图2是未编码的音频信号时域图形,图3是编码重构后的音频信号时域图形。图3中用椭圆圈出的部分就是前回声5,根据人耳的特性,如果编码噪声在信号突变点前持续时间较短的话,可以利用向前掩蔽将前回声掩蔽掉,否则编码噪声会被人耳感知到。为了避免这种现象,设计编码器时就要考虑量化噪声的时域特性,以保证满足时域掩蔽条件,而前回声现象一直是快变类型信号(如响板信号)等无法做到较低码率的一个主要困难。
在编解码音频信号中,为解决前回声现象,现有技术包括以下几种:比位池控制技术:对滤波器组覆盖快变段窗内的谱系数,增加编码精度。这会极大的增加快变帧编码所需要的比特数,这种方法不能用于固定码率编码器。在MPEG-1标准中,采用比特池方法,在比特需要峰值时使用前面的帧留下的比特,从而维持平均的恒定码率。然而实际上,如果遇到变化非常快的信号,需要极大的比特池而导致无法编码。
自适应窗切换技术:许多感知编码器中使用的是自适应窗切换技术。这种方法能根据输入信号的特性,自适应的调整滤波器组窗的大小;稳态部分或緩变部分采用长时窗,快变信号部分采用短时窗进行编码。这种方法增加了编码器计算量,并且使得编码器结构复杂化。由于不同的窗长需要心理声学模型不同的解释和归一化,以及不同的频带及无噪编码结构,窗切换显著的增加了编码器结构的复杂度。此外,在采用交叠相加结构滤波器组时,窗切换判断需要编码器额外的緩冲和延迟,会导致更大的端对端的延迟。最后,虽然长窗和短窗具有较好的时频局部特性,但是开始窗和结束窗却会引入较大的低效编码。
滤波器组切换技术:滤波器组切换技术是利用不同的滤波器组模式而控制前回声的技术。具体的说,在緩变信号类型,用频率分辨率高的余弦调制滤波器组;在快变信号类型,用小波滤波器组。当两种滤波器组模式相互切换时,其过渡块很难保证完全重构。
时域噪声整形(TNS)技术:时域噪声整形技术就是当信号经过滤波器组变换成频域系数后,根据对信号类型的判断,如果是快变类型信号,不直接对频域系数进行量化,而是对频域系数先进行线性预测,然后对残差序列进行量化。采用TNS技术会增加较多的边带信息,影响了整体编码效率。
如图4所示,是现有技术的音频编码装置结构框架图。该编码器包括:心理声学分析模块201,窗函数模块202,时频映射模块203,量化和熵编码模块204和码流复用模块205。其中心理声学分析模块201用于计算输入音频信号的感知熵和掩蔽阈值,^^据感知熵判断该音频信号帧信号类型是快变类型信号还是緩变类型信号。为了预防前回声并保证编码质量,根据心理声学分析模块201输出的信号类型来判断窗函数模块202的分析窗函数的长度,具体的说,如果该帧信号是快变信号类型,为预防前回声,采用时间分辨率较高而频率分辨率较低的256样本点长度的窗;如果该帧信号是緩变信号类型,为保证编码效率,采用时间分辨率较低而频率分辨率较高的2048样本点长度的窗。时频映射模块203用于将时域音频信号转变成频域系数,并输出到量化和熵编码模块204;量化和熵编码模块204在心理声学分析模块201输出的掩蔽阈值的控制下,对频域系数进行量化和熵编码,并输出到码流复用模块205;码流复用模块205用于将接收到的数据进行复用,形成音频编码码流。这种音频编码装置虽然可以达到防止前回声的目的,但由于窗函数模块202采用不同长度样本点的窗,从而使整个编码器的结构复杂度变得较高。
在文献(AdaptiveTransformCodingofSpeechSignals,RainerZelinski,PeterNoll,IEEETransactionsonAcoustics,Speech,andSignalProcessing,Vol.ASSP-25,No.4,August1977)中,作者讨论了基于变换的语音编码方法,具体的说,通过离散余弦变换(DCT)进行语音编码的方法。对语音信号^进行分帧,假设一帧样本点数为N(N可以128,256,
12―'
512,1024等),对一帧信号进行方差估计,得到标准差,其中σ。将量化后的标准差作为边信息传送到解码端。将该帧信号除以量化后的标准差得到ν·其中=。对输入序列进行DCT变换得到V,并对其进行量化得到V^。将量化后的序列传送到解码端,进行逆DCT变换得到V^,最后序列乘以得到重构后的语音信号^。这种方法如果直接应用到音频编码中,对快变信号帧出现的前回声问题仍然是无能为力的。基于变换的语音编码方法在除以量化后的标准差后,仍不能改变这一帧信号6的特性,即这一帧信号仍然是非平稳的,如图5所示,为应用基于变换的语音编码方法的音频信号时域图形。如果对其进行改进,在快变点之前估计一个标准差σι,在快变点之后估计一个标准差2,并分别量化为和如图6所示,是症用改进后的基于变换的语音编码方法的音频信号时域图形。这样,首先对快变
1N、点前的信号Ί除以,而对快变点后的信号8除以,其中Nu-iXj,为快变点的位置)。经过这样的处理以后,这一帧信号就变成准稳态信号,然后对处理后的信号做上述处理,就可以大大改善前回声的问题。但改进的方法是针对于语音编码的,对于音频编码,这种改进的方法难以消除快效应,而且编码效率很低。
技术实现要素:
本发明的主要目的在于提供一种控制前回声的编码装置,其结构筒单,并可有效地控制音频编码时的前回声现象。
本发明的另一目的在于提供一种控制前回声的编码方法,可以有效地控制音频编码时的前回声现象。
本发明的再一目的在于提供一种控制前回声的解码装置,可实现对由本发明所公开的编码方法编码后的信号进行解码,并且解码得到的信号与原音频信号完全重构。
本发明的又一目的在于提供一种控制前回声的解码方法,可实现对由本发明所公开的编码方法编码后的信号进行解码,并且解码得到的信号与原音频信号完全重构。
为实现上述目的,本发明提供了一种控制前回声的编码装置,其中包括:一信号类型分析模块,用于判断输入音频信号帧的信号类型,并输出快变点位置和量化后的突变强度参数;
一修正窗函数模块,与所述信号类型分析模块连接,用于修正分析窗函数和对所述输入音频信号帧进行加窗处理,并输出加窗后的时域音频信号;一时频映射模块,与所述修正窗函数模块连接,用于将所述加窗后的时域音频信号转换为频域系数;-一心理声学分析模块,用于对所述输入音频信号帧进行心理声学处理,并输出尺度因子带的掩蔽阈值参数;一量化和熵编码模块,分别与所述时频映射模块和所述心理声学分析模块连接,用于根据所述心理声学分析模块输出的所述掩蔽阔值参数,对所述时频映射模块输出的频域系数进行量化和熵编码,并输出编码码流;
一码流复用模块,与所述量化和熵编码模块和所述信号类型分析模块相连接,用于将所述量化和熵编码模块输出的所述编码码流和信号类型分析模块输出的结果进行复用,并形成音频编码码流。
为实现上述再一目的,本发明提供了一种控制前回声的编码方法,其中包括以下步骤:
步骤1、信号类型分析模块判断输入音频信号帧的信号类型是否为快变类型信号,是则所述信号类型分析模块计算快变点位置的参数及所述音频信号帧的突变强度参数,并将该突变强度参数进行量化,得到突变强度的量化值,然后执行步骤2;否则所述修正窗函数模块用原始的分析窗函数对所述音频信号帧进行加窗,得到加窗后的时域信号,然后执行步骤4;
步骤2、修正窗函数模块对分析窗函数进行线性变换,得到修正后的分析窗函数;
步骤3、所述修正窗函数模块用修正后的分析窗函数对所述音频信号帧进行加窗,得到加窗后的时域信号;
步骤4、时频映射模块对所述加窗后的时域信号进行时频映射处理,得到频域系数;
步骤5、量化和熵编码模块根据心理声学模块对音频信号帧进行心理声学处理而得到的尺度因子带的掩蔽阈值参数,对所述频域系数进行量化和熵编码,得到编码后的音频码流;
步骤6、码流复用模块将所述编码后的音频码流和所述信号类型分析的结果进行复用,得到压缩音频码流。
为实现上述另一目的,本发明提供了一种控制前回声的解码装置,其中包括:
一码流解复用模块,用于对压缩音频码流进行解复用;
一逆量化和熵解码模块,与所述码流解复用模块连接,用于对所述解复用后的音频码流进行解码和逆量化,并输出逆量化后的频域系数;一频时映射模块,与所述逆量化和熵解码模块连接,用于将所述逆量化后的频域系数变换为时域信号;
一修正窗函数模块,与所述频时映射模块连接,用于修正综合窗函数和对所述时域信号进行加窗处理。
为实现上述又一目的,本发明提供了一种控制前回声的解码方法,其中包括以下步骤:
步骤1、码流解复用模块对输入的压缩音频码流进行解复用,得到解复用后的音频码流和边信息;
步驟2,逆量化和熵解码模块对所述解复用后的音频码流进行逆量化和熵解码,得到逆量化后的频域系数;
步骤3、频时映射模块对所述逆量化后的频域系数进行频时映射处理,得到时域信号;
步骤4、修正窗函数模块根据所述解复用后的边信息判断所述音频信号帧的信号类型是否为快变类型,是则执行步驟5;否则执行步骤6;
步骤5、修正窗函数模块对综合窗函数进行线性变换,得到修正后的综合窗函数,然后用修正后的综合窗函数对所述时域信号进行加窗,得到重构后的音频信号;
步骤6、所述修正窗函数模块用原始的综合窗函数对所述时域信号进行加窗,得到重构后的音频信号。
因此,本发明具有以下优点:由于窗函数采用固定窗长,筒化了编码装置的结构,在控制音频编码时的前回声现象的同时保证了音频信号的完全重构。
以下结合附图和具体的实施例对本发明作进一步的详细说明。附图说明
图1是人耳的掩蔽特性图。
图2是未编码的音频信号时域图形。
图3是编码重构后的音频信号时域图形。
图4是现有技术的音频编码装置结构框架图。图5是应用基于变换的语音编码方法的音频信号时域图形。
图6是应用改进后的基于变换的语音编码方法的音频信号时域图形。图7是本发明控制前回声的编码装置实施例1的结构框图。
图8是本发明控制前回声的编码方法实施例1的流程图。
图9是本发明控制前回声的编码和解码方法的原始分析窗和原始综合窗的示意图。
图10是本发明控制前回声的编码方法的修正后的分析窗的示意图。图11是本发明控制前回声的解码方法的修正后的综合窗的示意图。图12是本发明控制前回声的编码方法中窗函数修正符合完全重构条件的示意图。
图13是本发明控制前回声的编码方法的加过渡块的修正后的分析窗函数的示意图。
图14是本发明控制前回声的解码方法的加过渡块的修正后的综合窗函数的示意图。
图15是本发明控制前回声的编码装置实施例2的结构框图。
图16是本发明控制前回声的编码方法实施例2的流程图。
图17是本发明控制前回声的解码装置实施例1的结构框图。
图18是本发明控制前回声的解码方法实施例1的流程图。
图19是本发明控制前回声的解码装置实施例2的结构框图。
图20是本发明控制前回声的解码方法实施例2的流程图。具体实施方式
本发明是利用修正的窗函数(ModifiedWindowFunction,MWF)控制音频编码中出现的前回声信号,实现了在控制音频编码时的前回声现象的同时保证了音频信号的完全重构。
参见图7,图7是本发明控制前回声的编码装置实施例1的结构框图。该装置由以下功能模块组成:信号类型分析模块301,用于判断输入音频信号帧的信号类型,并输出快变点位置和量化后的突变强度参数,其中所述的信号类型分析模块301包括信号类型分析器,用于判断所述输入音频帧信号是緩变类型信号还是快变类型信号;计算快变点位置器,与所述信号类型分析器相连接,用于计算快变点的位置;突变强度计算器,与所述信号类型分析器相连接,用于计算信号的突变强度;突变强度量化器,与所述突变强度计算器相连接,用于对所述计算信号的突变强度进行量化;修正窗函数模块302,与所述信号类型分析模块301连接,用于修正分析窗函数和对所述输入音频信号帧进行加窗处理,并输出加窗后的时域音频信号,提高了对快变信号进行编码的时间分辨率;时频映射模块304,与所述修正窗函数模块302连接,用于将所述加窗后的时域音频信号转换为频域系数;心理声学分析模块303,用于对所述输入音频信号帧进行心理声学处理,并输出尺度因子带的掩蔽阈值参数;量化和熵编码模块305,分别与所述时频映射模块304和所述心理声学分析模块303连接,用于根据所述心理声学分析模块303输出的所述掩蔽阈值参数,对所述时频映射模块304输出的频域系数进行量化和熵编码,并输出编码码流;码流复用模块306,与所述量化和熵编码模块305和所述信号类型分析模块301相连接,用于将所述量化和熵编码模块305输出的所述编码码流和所述信号类型分析模块301输出的结果进行复用,并形成音频编码码流。
时频映射模块304由滤波器组构成,滤波器组可以是离散傅立叶变换(DFT)滤波器组、离散余弦变换(DCT)滤波器组、修正离散余弦变换(MDCT)滤波器组、余弦调制滤波器组等。当采用离散傅立叶变换(DFT)滤波器组、离散余弦变换(DCT)滤波器组、余弦调制滤波组等正交变换滤波器组时,分析窗函数中的窗长与音频信号帧长相等,而窗函数可以选择汉宁(Hanning)窗、汉明(Hamming)窗、布莱克曼(Blacbnan)窗;当采用修正离散余弦变换(MDCT)滤波器组时,分析窗函数中的窗长为音频信号帧长的两倍,而窗函数可以选择任一符合修正离散余弦变换条件的窗函数。
在量化和熵编码模块305中,量化器由一组子量化器组成,每个子量化器分别根据心理声学分析模块303输出的特定时频区域的掩蔽阈值,量化本区域的频域系数,通常将该区域称为尺度因子带。所述的量化器可以采用标量量化器和矢量量化器,如运动图象专家组高级音频编码(MPEGAAC)的非线性标量量化器,以及运动图象专家组双(MPEGTwinVQ)的矢量量化器。参见图8,图8是本发明控制前回声的编码方法实施例1的流程图,步骤如下:.
步骤21、信号类型分析模块301判断输入音频信号帧的信号类型是否为快变类型信号,是则执行步驟22,否则执行步骤25;
步骤22、所述信号类型分析模块301计算快变点位置的参数及所述音频信号帧的突变强度参数,并将该突变强度参数进行量化,得到突变强度的量化值;
步骤23、修正窗函数模块302对分析窗函数的所述快变点位置以后的函数值进行等比例的缩小,缩小的值等于所述突变强度的量化值,得到修正后的分析窗函数;
步骤24、所述修正窗函数模块302用修正后的分析窗函数对所述音频信号帧进行加窗,得到加窗后的时域信号,并执行步驟26;
步驟25、所述修正窗函数模块302用原始的分析窗函数对所述音频信号帧进行加窗,得到加窗后的时域信号,并执行步骤26;
步骤26、时频映射模块304对所述加窗后的时域信号进行时频映射处理,得到频域系数;
步骤27、量化和熵编码模块305根据心理声学模块303对音频信号帧进行心理声学处理而得到的尺度因子带的掩蔽阔值参数,对所述频域系数进行量化和熵编码,得到编码后的音频码流;
步骤28、码流复用模块306将所述编码后的音频码流和所述信号类型分析的结果进行复用,得到压缩音频码流。
在以上的解码方法的步骤21中,在所述信号类型分析模块301对输入音频信号帧的信号类型进行判断的同时,心理声学模块303对音频信号帧进行心理声学处理,得到尺度因子带的掩蔽阈值参数。所述心理声学处理是根据人耳听觉特性计算当前帧信号的掩蔽曲线,根据掩蔽曲线可以计算特定时频区域的掩蔽阈值,用于指导对当前音频帧信号的量化,这里的心理声学模型可以是MPEGAAC所用的第一类或第二类心理声学模型。信号类型分析模块301基于自适应阈值和波形预测进行前、后向掩蔽效应来对该帧信号进行信号类型判断,具体步骤是:把输入帧分解成多个子帧,并查找各个子帧上PCM数据绝对值的局部最大点;在各子帧的局部最大点中选出子帧的绝对峰值;对某个子帧绝对峰值,利用该子帧前面的多个(典型的可取3个)子帧绝对峰值预测相对该子帧前向延迟的多个(典型的可取4个)子帧的典型样本值;计算该子帧绝对峰值与所预测出的典型样本值的差值和比值;如果预测差值和比值都大于设定的阔值,则判断该子帧存在突跃信号,确认该子帧具备后向掩蔽预回声能力的局部最大峰点,如果在该子帧前端与掩蔽峰点前2.5ms处之间存在一个绝对峰值足够小的子帧,则判断该帧信号属于快变类型信号,将存在突跃信号的子帧做为快变点的位置,将存在突跃信号的子帧的绝对峰值和该子帧前面所有子帧中最大绝对峰值的比作为突变强度,并将突变强度进行量化,量化方法可以是上取整,下取整和四舍五入等;如果预测差值和比值不大于设定的闹值,则重复上述步驟直到判断出该帧信号是快变类型信号或者到达最后一个子帧,如果到达最后一个子帧仍未判断出该帧信号是快变类型信号,则该帧信号属于緩变类型信号。
对时域音频信号变换到频域,对时域音频信号进行时频变换的方法有很多,可采用离散傅立叶变换(DFT)、离散余弦变换(DCT)、余弦调制滤波器组、修正离散余弦变换(MDCT)或小波变换等变换方法。当采用DFT、DCT或余弦调制滤波器组等正交变换方法时,分析窗函数中的窗长与音频信号帧长相等,而窗函数可以选择汉宁(Hanning)窗、汉明(Ha匪ing)窗、布莱克曼(Blackmail)窗;当采用修正离散余弦变换(MDCT)时,分析窗函数中的窗长为音频信号帧长的两倍,而窗函数可以选择任一符合修正离散余弦变换条件的窗函数。分析窗函数釆用固定长度的窗函数,长度为大于1的整数,优选2的N次方,其中N为自然数。窗的选殳计可参看《离散时间信号处理(笫二版)》,西安交通大学出版社,A.V.奥本海姆,R.W.谢弗,J.R.巴克著,刘树棠,黄建国译,2001。由于时频映射和加窗函数是分不开的,所以下面以MDCT说明时频映射和加窗的过程。
对于采用MDCT进行时频映射的情况,首先选取前一帧M个样本和当前帧M个样本的时域信号,再对这两帧共2M个样本的时域信号通过模块302进行加窗操作,其中分析窗的窗长为帧长的二倍,然后对经过加窗后的信号利用时频映射模块304进行MDCT变换,从而获得M个频域系数。MDCT分析滤波器的脉冲响应为:
2M-\
X(k)=∑x{n)hAn)
则MDCT变换为:=0,0≤k≤M-l,其中:w(n)为窗函数;x(n)为MDCT变换的输入时域音频信号;X(k)为MDCT变换的输出频域信为满足信号完全重构的条件,MDCT变换的窗函数w(n)必须满足以下两个条件:
w(2M-l-n)=w(n)且w2(n)+w2(n+M)=1在实际中,可选用Sine窗、KBD窗等作为窗函数。下面以Sine窗为例说明在模块302中如何对其进行修正以达到控制前回声的目的。需要说明的是,本发明并不限于Sine窗和KBD窗,只要是满足MDCT变换条件的窗函数,都可以用来对其进行修正,最终达到控制前回声的目的。
当分析出此帧信号9为緩变类型信号时,原始分析窗函数不变,图9所示的便是本发明控制前回声的编码和解码方法的原始分析窗函数的示意图。如果此帧信号9为快变类型信号时,则对原始分析窗函数进行修正。所述的修正处理是:对快变点以后的窗函数值进行等比例的缩小,缩小的值等于量化后突变强度的大小。修正后的分析窗函数如图10所示,其中图10的快变点位置是第1280样本点10,量化后的突变强度为5。为满足信号完全重构的条件,当对分析窗进行上述修正后,也必须对解码时的的综合窗进行修正,所述的修正处理是:对快变点以后的窗函数值进行等比例的放大,放大的值等于量化后突变强度的大小,修正后的综合窗函数如图11所示,其中图11的快变点位置是第1280样本点11,量化后的突变强度为5。下面给出当分析窗和综合窗做上述修正后仍可以满足完全重构条件的证明。
文献(S.F.CheungandJ.S.Lim,Incorporationofbiorthogonalityintolappedtransformsforaudiocompression.Proc.IEEEInt.Conf.OnAcoustics,Speech,andSignalProcessing,Detroit,May1997,pp3079-3082)中证明,满足余弦调制滤波器组的双正交完全重构条件为:∑p{mM+n)p{{m+2s)M+n)=d(s)
0sci
2K-l-2s
∑(-^mp(M+n)p((m+2s)M+(M-n-l))=0
m=0Sa
其中:AW和^)分别为综合窗和分析窗,M为帧长,K为大于零的整数,s=0,1,...,K-1,n=0,1,...,M-1。
如果所用的余弦调制滤波器组为MDCT,则上式中K等于1,则s等于0。带入上式可以对其做进一步筒化:
p{)pal(n)+1(M+)l(M+n)^lρ{n)pal(-«-1)-1(+ή)^-1(2-»-1)=0(χ)其中i表示帧序号。i-1表示上一帧,i表示当前帧。
如图12所示为本发明控制前回声的编码方法中窗函数修正符合完全重构条件的示意图。图12中表示连续四帧的信号,并且已经判断出第i帧为快变帧,快变点12的位置为第M+L点,突变强度为scs,其中scs为实数。当对第i帧做MDCT变换时,按照上面所述对原始分析窗^)和原始综合窗做修正得到修正后的分析窗»和修正后的综合窗^(«),则:
pa=pa(n)0≤n≤M+L
Pa=Pa(n)/scsM+L≤n<2M
和
Ps(n)=Ps(n)0≤n<M+L
p(n)=p(«)·scsM+L≤n<2M
ss
所以,对第i帧pl'lM+n)p1'1(+n)
=Psl{)pal()+ρ81{Μ+n)pal1(+n)
12~l(2M--1)
=0(3)由式(2)和式(3)可知,对第i帧做MDCT时,用修正窗可以完全重构。同理可证对i+1帧和i+2帧做MDCT,用修正窗也都可以完全重构。进一步可以证明,只要对原始窗做线性变换,则不会改变变换的完全重构特性。
由于在原始窗的快变点处做突然变化会产生高频信息,这会降低编码效率,因此在步骤23中,在所述对分析窗函数的所述快变点位置以后的函数值进行等比例的缩小中,可在快变点附近加过渡块使快变点附近的分析窗函数值缓慢变化。加过渡块的窗函数方法为:假设窗函数为其中0≤≤2M—量化后的突变强度为^快变点位置是L。如果不加过渡块,则修正后的窗函数为:
如果加过渡块,并且过渡块的长度为快变点位置的前个样本点和后-i个样
(n=(S(n-L+l)
其中为线性函数:gW—l~。如图13所示是本发明控制前回声的编码方法的加过渡块的修正后的分析窗函数的示意图。与编码时修正分析窗函数相对应,在解码时也要增加过渡块的处理,如图14所示是本发明控制前回声的解码方法的加过渡块的修正后的综合窗函数的示意图,图13的过渡块13与图14中的过渡块14长度均为64个样本点。前已证明,只要是对原始窗做线性变换,不会改变变换的完全重构特性,所以我们还可以根据信号类型对分析窗函数或综合窗做任意的线性变换。这里所指的加过渡段的窗函数或对窗函数局作任意线形变换都可以针对以上所有实施例中的编码解码方法中采用的分析窗或综合窗。在步骤27中,所述量化和熵编码包括非线性量化和熵编码两个步驟,其中量化处理可采用标量量化法或矢量量化法。所述标量量化法可采用MPEG.AAC所用的非线性标量,所述矢量量化法可釆用MPEGTwinVQ的矢量量化。所述的量化处理也可以采用一种基于极小化全局噪声掩蔽比准则和熵编码的量化的音频编码方法(专利申请号03146213.8)。在经过量化处理后,利用熵编码技术进一步去除量化后的系数以及边信息的统计冗余,最后得到压缩音频码流。
如图15所示是本发明控制前回声的编码装置实施例2的结构框图。本实施例在本发明的控制前回声的编码装置的实施例1的基础上,增加了一个子带分析模块307,该模块与信号类型分析模块301相连接,用于对所述输入音频信号进行子带分析。所述子带分析可以对每个频率段按照突变强度的不同和信号性质的不同而对窗函数做不同的修正,例如一般低频段不产生前回声现象,那么就可以不对低频段的窗函数做修正,从而更加灵活的控制不同频率段的窗函数修正。
针对于上述编码装置,本发明公开了控制前回声的编码方法实施例2,如图16所示是本发明控制前回声的编码方法实施例2的流程图,步驟如下:步骤40、子带分析模块307对输入音频信号帧作子带分析,子带分析是按照频率进行分段的,将音频信号帧分为多路子带音频信号;步骤41、信号类型分析模块301分别判断多路子带音频信号帧的信号类型是否为快变类型信号,是则执行步骤42,否则执行步骤45;步骤42、所述信号类型分析模块301分别对多路子带音频信号帧计算快变点位置的参数及所述多路子带音频信号帧的突变强度参数,并分别对多路子带音频信号帧的突变强度参数进行量化,得到多路子带音频信号帧的突变强度的量化值;步骤43、修正窗函数模块302分别对分析窗函数的所述快变点位置以后的函数值进行等比例的缩小,缩小的值等于所述多路子带音频信号帧的突变强度的量化值,得到'正后的分析窗函数;步骤44、所述修正窗函数模块302用修正后的分析窗函数分别对所述多路子带音频信号帧进行加窗,得到加窗后的多路子带时域信号,并执行步骤46;步骤45、所述修正窗函数模块302用原始的分析窗函数对所述多路子带音频信号帧进行加窗,得到加窗后的时域信号,并执行步骤46;步骤46、时频映射模块304对所述加窗后的多路子带时域信号进行时频映射处理,得到频域系数;步驟47、量化和熵编码模块305将多路子带频域系数整合;步驟48、量化和嫡编码模块305根据心理声学模块303对音频信号帧进行心理声学处理而得到的尺度因子带的掩蔽阈值参数,对所述频域系数进行量化和熵编码,得到编码后的音频码流;步骤49、码流复用模块306将所述编码后的音频码流和所述信号类型分析的结果进行复用,得到压缩音频码流。
在以上的解码方法的步骤41中,在所述信号类型分析模块301对多路子带音频信号帧的信号类型进行判断的同时,心理声学模块303对输入音频信号帧进行心理声学处理,得到尺度因子带的掩蔽阈值参数。所述心理声学处理是根据人耳听觉特性计算当前帧信号的掩蔽曲线,根据掩蔽曲线可以计算特定时频区域的掩蔽阔值,用于指导对当前音频帧信号的量化,这里的心理声学模型可以是MPEGAAC所用的第一类或第二类心理声学模型。
本发明的编码方法实施例2的优点是可以对每个频率段按照突变强度的不同和信号性质的不同而对窗函数做不同的修正,如一般低频段不产生前回声现象,那么就可以不对低频段的窗函数做修正,从而更加灵活的控制不同频率段的窗函数修正。
如图17所示是本发明控制前回声的解码装置实施例1的结构框图。该装置由以下功能模块组成:码流解复用模块401,用于对压缩音频码流进行解复用;逆量化和熵解码模块402,与所述码流解复用模块401连接,用于对所述解复用后的音频码流进行解码和逆量化,并输出逆量化后的频域系数;频时映射模块403,与所述逆量化和嫡解码模块402连接,用于将所述逆量化后的频域系数变换为时域信号,频时映射模块403由滤波器组构成,所述滤波器组为与编码装置相对应的逆变换滤波器组;修正窗函数模块404,与所述频时映射模块403连接,用于修正综合窗函数和对所述时域信号进行加窗处理。
如图18所示是本发明控制前回声的解码方法实施例1的流程图,步骤如下:步骤31、码流解复用模块对输入的压缩音频码流进行解复用,得到解复用后的音频码流和边信息;步骤32、逆量化和熵解码模块对所述解复用后的音频码流进行逆量化和熵解码,得到逆量化后的频域系数;步骤33、频时映射模块对所述逆量化后的频域系数进行频时映射处理,得到时域信号;步骤
34、修正窗函数模块根据所述解复用后的边信息判断所述音频信号帧的信号类型是否为快变类型,是则执行步骤35,否则执行步骤37;步骤35、修正窗函数模块对综合窗函数的所述快变点位置以后的函数值进行等比例的放大,放大的值等于所述突变强度的量化值,得到修正后的综合窗函数;步骤36、所述修正窗函数模块用修正后的综合窗函数对所述时域信号进行加窗,得到重构后的音频信号;步樣37、所述修正窗函数模块用原始的综合窗函数对所述时域信号进行加窗,得到重构后的音频信号。
在步驟33中,对频域系数进行频时映射以及修正窗函数处理的方法与编码方法中的时频映射以及修正窗函数处理方法相对应,都是根据所述压缩音频码流中的编码控制信息来选择对应的逆映射以及窗函数,频时映射处理可采用逆离散余弦变换(IDCT)、逆离散傅立叶变换、逆修正离散余弦变换(IMDCT)等方法来实现。
下面以逆4务正离散余弦变换IMDCT为例说明频时映射过程。由于频时映射和加窗处理是不可分割的,所以此处对频时映射和修正窗函数一起考虑。
首先对逆量化语进行IMDCT变换,得到变换后的时域信号x'。IMDCT变
X.+nQ)(k4-丄))
换的表达式为:'2入其中,η表示样本序号,且0≤«<N,Ν表示窗的长度,o=(N/2+l)/2;i表示帧序号;k表示语序号。
其次,对DCT变换获得的时域信号在时域进行加窗处理。为满足完全重构条件,窗函数w(n)必须满足以下两个条件:w(2M-=且w2(ji)+w2(n+M)=l最后,对上述加窗时域信号进行叠加处理,得到时域音频信号。具体是:将加窗操作后获得的信号的前Ν/2个样本和前一帧信号的后Ν/2个样本重叠相加,获得/2个输出的时域音频样本,^timeS隱i,n=preSami,n+preSam一η,其中i表示帧序号,n表示样本序号,有2,且Ν为冒的长度。
如图9和11所示,所述的综合窗函数修正在前面已经说明,原始综合窗函数所述的修正处理是:对快变点以后的窗函数值进行等比例的放大,放大的值等于量化后突变强度的大小,修正后的综合窗函数如图11所示。对与编码时采用的分析窗相对应的综合窗作上述修正后仍可满足完全重构条件,在前面已经证明。
由于在原始窗的快变点处做突然变化会产生高频信息,这会降低编码效率,因此在步骤35中,对应于编码时的修正处理,在所述对综合窗函数的所述快变点位置以后的函数值进行等比例的放大中,可在快变点附近加过渡块使快变点附近的分析窗函数值緩慢变化。加过渡块的窗函数方法为:假设窗函数为《其中0≤≤2Μ-1,量化后的突变强度为快变点位置是L。如果不加过渡块,则修正后的窗函数为:
如果加过渡块,并且过渡块的长度为快变点位置的前/个样本点和后-1个样本点,则修正后的窗函数为:
w(n)0≤n<L-I
w'n)=w(n)/g(n)L-I≤n≤L+I-l
w(n)/sL+I≤n≤2M-l
(n-L+l)
其中为线性函数:~21^。如图14所示是本发明控制前回声的解码方法的加过渡块的修正后的综合窗函数的示意图,图14中的过渡块14长度均为64个样本点。前已证明,只要是对原始窗做线性变换,不会改变变换的完全重构特性,所以我们还可以根据信号类型对分析窗函数或综合窗做任意的线性变换。这里所指的加过渡段的窗函数或对窗函数局作任意线形变换都可以针对以上所有实施例中的编码解码方法中采用的分析窗或综合窗。
如图19所示是本发明控制前回声的解码装置实施例1的结构框图。本实施例在本发明的控制前回声的解码装置的实施例1的基础上,增加了一个子带合成模块405,该模块与修正窗函数模块404相连接,用于将多路重构后的子带时域信号进行子带合成。
针对于上述解码装置,本发明公开了控制前回声的解码方法实施例2,参见图20,图20是本发明控制前回声的解码方法实施例2的流程图,步驟如下:步骤51、码流解复用模块对输入的压缩音频码流进行解复用,得到解复用后的音频码流和边信息;步骤52、逆量化和熵解码模块对解复用后的音频码流按频率分为多路;步骤53、逆量化和熵解码模块分别对所述多路解复用后的音频码流进行逆量化和熵解码,得到逆量化后的频域系数;步骤53、频时映射模块分别对多路所述逆量化后的频域系数进行频时映射处理,得到多路时域信号;步骤54、修正窗函数模块根据所述解复用后的边信息分别判断所述多路音频信号帧的信号类型是否为快变类型,是则执行步骤55,否则执行步骤57;步骤55、修正窗函数模块分别对多路的综合窗函数的所述快变点位置以后的函数值进行等比例的放大,放大的值等于所述突变强度的量化值,得到修正后的综合窗函数;步骤56、所述修正窗函数模块用修正后的综合窗函数分别对所述多路时域信号进行加窗,得到多路的重构后的音频信号,然后执行步驟58;步驟57、所述修正窗函数模块用原始的综合窗函数分别对所述多路时域信号进行加窗,得到多路的重构后的音频信号,然后执行步骤58;步骤58、子带合成模块对多路的重构后的音频信号进行合成。
最后应当说明的是:以上实施例仅用以说明本发明的技术方案而非对其限制;尽管参照较佳实施例对本发明进行了详细的说明,所属领域的普通技术特征进行等同替换;而不脱离本发明技术方案的精神,其均应涵盖在本发明请求保护的技术方案范围当中。