用于可扩缩编码的设备及方法和用于可扩缩解码的设备及方法

文档序号:2821094阅读:242来源:国知局
专利名称:用于可扩缩编码的设备及方法和用于可扩缩解码的设备及方法
技术领域
本发明涉及音频和/或视频编码/解码器,尤其涉及具有可扩缩性的编码/解码器装置。
最新的音频编码方法,例如MPEG layer 3(MP3)或MPEGAAC,使用变换,如所谓的修正离散余弦变换(MDCT),以获得块级的音频信号频率表示。这样的音频编码器通常从时间离散音频采样值来获得电流。来自音频采样值的电流被窗口化以获得一个例如1024或者2048个窗口化的音频采样值的窗口块。为了进行窗口化,使用了不同的窗口函数,如正弦窗口等。
窗口化的时间离散音频采样值然后通过滤波器组被实现为频谱表示。原则上,一个傅立叶变换或由于特殊原因的多种上述傅立叶变换,如FFT,或者如已经执行的MDCT,都可以使用。在滤波器组输出端处的音频频谱值的数据块然后按照要求被进一步处理。用上述指定的音频编码器,随后是音频频谱值的量化,量化阶段通常被选择,以使由量化引入的量化噪声低于心理声学的屏蔽阈值,即被“屏蔽掉”了。量化代表一种有损编码。为了获得进一步的数据量缩减,量化的频谱值将通过哈夫曼编码进行熵编码。通过增加页信息,如比例因子(scale factors)等,可以被存储或传递的比特流,通过比特流多路复用器由经过熵编码的量化频谱值形成。
在音频解码器中,比特流通过比特流多路信号分离器被组织为已编码的量化频谱值和页信息。经过熵编码的量化频谱值首先被熵编码,以获得量化的频谱值。量化频谱值然后被反向量化,以获得包含量化噪声的解码频谱值,然而该噪声低于心理声学的屏蔽阈值,因而是听不到的。这些频谱值然后通过合成滤波器组被实现为时间表示,以获得时间离散解码的音频采样值。在合成滤波器组中必须使用一个与变换算法相反的变换算法。而且,在频率时间再次变换后,必须取消窗口化。
为了获得良好的频率选择性,最新的音频编码器通常使用块重叠。这样的情况被表示在

图10a中。首先,获得例如2048个时间离散的音频采样值,并通过装置402进行窗口化。表示装置402的窗口具有2N个采样值的窗口长度,并在它的输出端提供2N个窗口化采样值的数据块。为了获得窗口重叠,通过装置404形成了2N个窗口化采样值的第二个数据块,为了清楚起见,装置404在图10a中与装置402分开描述。然而,被送入装置404的2048个采样值不是直接与第一个窗口相连的时间离散音频采样值,而是包含被装置402窗口化的后半段采样值,另外包含仅1024个新的采样值。在图10a中,重叠通过装置406象征性地表示,引起50%的重叠。通过装置402的两个N个窗口化采样值输出,和通过装置404的2N个窗口化采样值输出,然后都将借助于装置408和/或410实现MDCT算法。装置408为第一个窗口提供与现有技术中的MDCT算法一致的N个频谱值,而装置410也提供存在于第一和第二个窗口之间的具有50%重叠的N个频谱值,但是为第二个窗口所提供。
在解码器中,第一个窗口的N个频谱值,如图10b所示,将被送入实现反向修正离散余弦变换的装置412。同样的操作应用于第二个窗口的N个频谱值。同样被送入一个实现反向修正离散余弦变换的装置414。装置412和装置414分别为第一个窗口提供2N个采样值和/或为第二个窗口提供2N个采样值。
装置416,在图10b中被称为TDAC(TDAC=时域混迭取消),考虑到了两个窗口是重叠的这一情况。尤其,第一个窗口后半段的采样值y1(即带有指数N+k),与第二个窗口前半段的采样值y2(即带有指数k)相加,这样在输出端,也就是在解码器端,将产生N个经过解码的时间采样值。
可以理解的是,通过装置416的功能,也可被称为相加功能,在图10a中示意性描述的编码器中进行的窗口化被自动考虑了,这样在图10b描述的解码器中,不必进行明确的“反向窗口化”。
如果通过装置402或404实现的窗口功能被指定为w(k),其中指数k代表时间指数,必须满足的条件是经过平方后的窗口权重w(k)被加到经过平方后的窗口权重w(N+k),得到1的平方,k的范围从0到N-1。如果使用正弦窗口(其窗口权重遵循正弦函数的前半波),则始终满足这个条件,因为任意角的正弦平方和余弦平方之和总是为1。
在图10a中描述的具有后继MDCT函数的窗口方法的一个缺点在于,窗口化由时间离散采样值相乘得到,考虑具有浮点数的正弦窗口,由于在0到180度之间的角的正弦,除了90度角之外,都不会得到整数。即使整数时间离散采样值被窗口化,在窗口化之后也将得到浮点数。
因此,即使不使用心理声学编码器,也就是如果没有实现无损编码,在装置408和/或410的输出端的量化也是必要的,这样才能实现一个合理清楚的熵编码过程。
因此,如果为了无损音频编码应该使用已知变换,如通过图10a操作的那样,要么必须采用一个非常好的量化以能够忽略基于浮点数取整引起的误差,要么误差信号必须被另外编码,例如在时域中编码。
第一种概念,也就是在这种概念中量化被细微地调整,以至于在浮点数取整基础上引起的误差是可以忽略的,例如在德国专利申请DE19742201 C1中公开。这里,音频信号被转换为它的频谱表示并被量化,以获得量化频谱值。量化频谱值被再次反向量化,转换到时域,并与原始音频信号相比较。如果误差(指原始音频信号和量化/反向量化音频信号之间的误差)在一个误差阈值之上时,量化器将以类似于反馈的方式进行更细微的调整,然后再次进行比较。当误差落在误差阈值之下时,迭代结束。可能仍然存在的剩余信号将被时域编码器进行编码,并被写入一个比特流,该比特流除了时域编码的剩余信号外,还包含根据在迭代中断时可用的量化器设置被量化的编码频谱值。可以理解的是,所用的量化器不需要由心理声学模型控制,所以编码频谱值通常量化得比基于心理声学模型时它所应达到的更加精确。
在技术文献“A Design of Lossy and lossless Scalable AudioCoding(有损和无损可扩缩音频编码设计)”,T.Moriya等,Proc.ICASSP,2000中,描述了一种可扩缩编码器,它包括作为第一个有损数据压缩模块的MPEG编码器,例如它具有块级数字波形作为输入信号,并且产生压缩的位编码。在一个现有的本地解码器中,编码被取消,并产生编码/解码信号。这个信号将通过从原始输入信号中减去编码/解码信号与原始输入信号进行比较。误差信号然后被送入第二个模块,在那里使用了无损位变换。这种变换具有两个步骤。第一步包括从二进制补码形式到数值符号形式的变换。第二步包括在一个处理块中从垂直幅度序列到水平比特序列的变换。实现无损数据转换以使信号数目最大化或者使序列中连续的零的数目最大化,这样才能获得尽可能好的时间误差信号压缩,它作为数字化数字的结果是可获得的。这种原则基于位切割算术编码方案(BSAC方案),该方案在技术文献“Multi-Layer Bit Sliced Bit Rate Scalable Audio Coder9(多层位切割比特率可扩缩音频编码器)”,(103.AES Convention,pre-printNo.4520,1997中进行了描述。
上述BSAC文献公开了一种类似编码器的东西,如图8所示。时间信号被送入块80,它被指定为“窗口”和时间-频率变换。通常,在块80中使用MDCT(MDCT=修正离散余弦变换)。于是,由块80生成的MDCT频谱值将在块82中被量化,以获得二进制形式的量化频谱值。用心理声学模型计算屏蔽阈值的装置84控制块82的量化,实现在块82中的量化是为了使量化噪声保持在心理声学屏蔽阈值之下。在块85中,在位级基础上设置量化频谱值,所以量化频谱值的等序比特被设置在一列中。在块86中,将形成缩放层,一个缩放层对应于一列。因此一个缩放层包含所有量化频谱值的等序比特。接下来,每个缩放层将进行连续的算术编码(块87),而通过块87的缩放层输出将以其冗余编码形式被送入一个比特流形成装置,装置88在它的输出端提供缩放/编码信号,除了单个的缩放层,也包含边信息(sideinformation),如已经知道的那样。
通常来讲,优先状态可扩缩BSAC编码器会接受所有根据心理声学方面量化的频谱值的最高序比特,对它们进行算术编码,然后将它们作为第一缩放层写入比特流。通常,由于仅有非常少的非常大的频谱值可用,所以非常少的量化频谱值的最高序比特等于1。
为了生成第二缩放层,所有频谱值的第二高序比特被接受,进行算术编码,然后作为第二缩放层写入比特流。这个过程会重复多次,直到所有量化频谱值的最低序比特被算术编码,并作为最后的缩放层写入比特流。
图9显示了用来对由图8所示的可扩缩编码器生成的对缩放/解码信号进行解码的可扩缩解码器。首先,此可扩缩解码器包括一个比特流变形装置90,一个缩放层抽取装置/解码装置91,一个反向量化装置92,和一个频域/时域变换装置93,以获得解码信号,该解码信号的质量部分取决于装置91所选取的缩放层的数目。
具体地说,比特流变形装置将对比特流进行解包,并且提供了除边信息外的不同的缩放层。首先,装置91进行算术解码并存储第一缩放层。然后,第二缩放层被算术解码并被存储。这个过程会重复多次,直到缩放/编码信号中包含的所有缩放层都已被算术解码并存储,或者重复多次直到通过控制输入94所请求的缩放层的数目都已被解码并存储。因此,每个单个量化频谱线的二进制图样将被连续产生,这些以二进制形式表示的量化频谱值考虑到比例因子等被反向量化92,以获得反向量化频谱值,这些频谱值必须通过装置93变换到时域,以获得解码信号。
在解码时,用每个缩放层会得到每个频谱值的一个比特。这些在对五层缩放层进行解码之后得到的每个频谱线的比特包含最高位的五个比特。可以理解的是,在频谱值很小的情况下,其最高位比特仅仅出现在第五个位置,这个频谱线的MSB(MSB=最高位比特)在对五个缩放层进行解码之后是得不到的,其中,为了更精确地表示这个频谱线,必须处理更多的缩放层。
频谱值的二进制表示导致(MDCT频谱值例如是振幅值)每个附加位代表频谱线的6db的精确增益。
因此每个额外的缩放层将导致所有频谱值的精确度有6db的增长。
考虑到至少在噪声信号中,听力屏蔽阈值仅在信号下大约6db,这表明位级缩放在精度方面是有问题的,这种位级缩放由现有技术中的编码器/解码器概念提供和使用,尤其是用于对将要听到的信号部分进行有效编码,也就是,例如用于根据心理声学方面量化的频谱值的较低位。
例如,如果在传输信道瓶颈的基础上,由图8中的块88输出的缩放/编码信号的最低缩放层没有被传输,这将导致6db的精度损失,在不利的情况下,这将导致解码信号中可清晰听见的干扰。
本发明的目的是提供一种可扩缩的编码/解码的概念,它将通过更好的可扩缩性来实现。
这个目的将通过根据权利要求1的可扩缩编码设备,根据权利要求17的可扩缩解码方法,根据权利要求19的可扩缩编码方法,根据权利要求20的可扩缩解码方法,或者根据权利要求21的计算机程序来获得。
本发明基于这样的思想,即频域中的心理声学屏蔽效应发生在频段级,而不是线级基础上,所以通过增加一个频段中的一个频谱线的精确度,每个频段会得到同样的精确度增益,就如在整个频段中实现精确度都提高一个有规律的部分一样,而这在缩放层的位级分割中是不可能的。按照本发明,精确缩放的细化是通过将比特层细分为次级缩放层而得到的。与现有技术相反,在现有技术中所有量化频谱值的某一次序的比特被放在一起来形成一个缩放层,而在本发明中,这个次序的比特将在第一个次级缩放层中具有创造性地被使用,仅通过一部分量化频谱值作为在所考虑的频段中的第一个次级缩放层。下一个次级缩放层然后将获得同样次序的比特,然而现在是从其他量化频谱值获得第二个缩放层,而不在第一个次级缩放层中获得。
例如,如果考虑具有m=4的量化频谱值的频段,那么在现有技术中,某个缩放层将包含在所考虑的频段中的所有四个频谱线的一个特定次序的比特。下一个频谱层将再次包括所有量化频谱线的小于1的某个特定次序的比特,这样从缩放层到缩放层会使每条频谱线的精确度增加6db。
按照本发明,确定的缩放层现在将被细分为最多m个次级缩放层。第一个次级缩放层将只包含第一频谱线的特定次序的比特,没有第二,第三和第四频谱线的比特。第二个次级缩放层将只包含第二个频谱线的特定次序的比特,却没有第一,第三和第四频谱线的比特。以同样的方式,第三次频谱层将包括第三频谱线的特定次序的比特,第四次频谱层将包括所考虑的频段的第四频谱线中的特定次序的比特。如前面已经说明的,既然屏蔽效应仅发生在频段级和非线级的基础上,每个附加的次级缩放层将提供6/mdb的精确度增益。这意味着在考虑的例子m=4时,每个次级缩放层将导致1.5db的精确度增益。
可以理解的是,在次级缩放层中,不止一个的量化频谱线的特定次序的比特可能也存在。在所考虑的例子中,如果一个次级缩放层包含两个量化频谱线特定次序的比特,每个次级缩放层的精确度增益将不再是1.5db,而是3.5db。通常来讲,选择量化频谱值的第二个数目,在第二个次级缩放层中的比特就是从这个数目出现的,使得该数目大于或等于1,并小于频段中量化频谱值的总数,频谱值的第二个数目还包含至少量化光谱值的特定次序的比特,该比特不出现于其特别存在于第一个次级缩放层中的第一个数目的量化二进制频谱值中。
按照本发明,关于哪些频谱值被选择作为下一个次级缩放层,存在多种可能的选择。如果听力屏蔽阈值例如是用线来表示的(例如,比6-db步骤更加精确),在编码器中精确地确定是可能的,这m个频谱线具有迄今最小的精确度。
相反,如果听力屏蔽阈值在频段级的基础上被重复表示(例如,在6db步骤中),在一个新层的编码开始阶段,也就是为新的比特层生成次级缩放层的时候,每个频谱线与听力屏蔽阈值相关的同一精确度被传输。当在次级缩放层中选择线的次序时,允许考虑频谱线的值,然而这些值迄今被传输。例如,如果具有小频谱值的频谱线在下面的次级层中首先被编码,会导致结果量化误差的更精确的频谱信息。
在本发明的一个优选实施例中,用心理声学量化频谱值形成次级缩放层,特定次序的比特在次级缩放层中被处理,该层持续处于包含m个频谱线的所考虑的频段之上。在心理声学量化二进制频谱值的情况下,为了进行心理声学透明编码,量化频谱值的所有比特都必须被传输。在这种情况下,尤其是具有二进制量化频谱值的低序比特,更细微的可扩缩性是具有优点的,以使根据所考虑的次级缩放层的数目缓慢降低质量的解码成为可能。
在本发明的一个替代实施例中,量化频谱值不是考虑心理声学方面而量化的,而是在量化之前的计算机计算精确度的框架中就有了。作为替代,量化频谱值用整数MDCT生成,这在“Audio Coding Basedon Integer Transforms(基于整数变换的音频编码)”,lll AESConvention,New York,2001,Geiger,Herre,Koller,Brandenburg中有所描述。
IntMDCT尤其有利,因为它包含了MDCT的吸引人的属性,例如音频信号的良好的频谱表示、严格的采样和块重叠。如前所述,IntMDCT是无损变换,也就是在前向变换过程中到整数值的取整会被后向变换中的反向取整操作所考虑,因此不会产生取整误差。
IntMDCT频谱值因此表现为无损的形式,也就是说,它们不是考虑心理声学方面量化的。
对于关于心理声学屏蔽阈值的缩放操作,最好为每个频谱值和/或每个频段至少确定心理声学屏蔽阈值的最高位比特,并且不再建立以一种绝对方式进入缩放层和/或次级缩放层的特定次序的比特,就像在以心理声学方式量化的频谱值的情况那样,但是与心理声学屏蔽阈值的相应最高位比特有关。因此在缩放层中特定次序的比特相对于心理声学屏蔽阈值被确定,例如,因为频谱值的比特将在缩放层被编码,该缩放层例如包括一个比心理声学屏蔽层的MSB大1的次序,该MSB是用于相应的频谱值和/或在心理声学阈值的频段级规定中用于该频谱值所在的频段。为在频谱值情况下定义缩放层的特定次序(该序没有考虑心理声学规则而量化)因此是与心理声学屏蔽阈值MSB相关的相对次序,其与各自的频谱值相关。
按照本发明,为了进行心理声学透明编码/解码,最好将量化频谱值的所有比特变换到包含与心理声学屏蔽阈值MSB相同次序的、或者具有比心理声学屏蔽阈值MSB的次序更高的次序的各个缩放层或次级缩放层中。
尤其是,当定义缩放层时,该缩放层包括量化频谱值的比特,具有与心理声学屏蔽层的最高位比特相同的次序,最好执行到次级缩放层的分类,以获得更好的精确缩放,可以说在干扰能听度的极限处。例如,如果整个频域或者部分频域被细分为例如每个具有四个频谱值的频段,并且如果在一个次级缩放层中总是有在次级缩放层传输的所有得到的频段的一个频谱值,则可以通过每个次级缩放层得到1.5db的精确度增加。
可以理解的是,通过设置频段的大小,可以自由选择精确缩放比例。例如,如果八个频谱值被分组为一个频段,并且如果每个次级缩放层仅包含这个频段中的一个频谱值中的比特,则可获得0.75db的精确缩放比例。
将一个缩放层细分为几个次级缩放层这一具有创造性的概念(但是其中次级缩放层可以各自独立地被抽取和解码)的一个好处在于,它与所有其他现有可扩缩性操作是兼容的。作为一个例子,应当提到频段宽度缩放,其中为了进行低比特率的音频信号的声学适应编码,通常缩减音频频段宽度,以能够用足够的精确度表示余下的频谱值。这种与信道相关的频段宽度缩放例如也可以在使用次级缩放层的本发明上下文中实现。为此目的,在第一层中,仅仅考虑具有上限的频域,由于在其他层和/或次级层中的精度增加,目前还没有考虑的更高的频域,将在分步的基础上编码。
次级缩放层的本方明概念的另一个优点在于,它也与在MPEG-4BSAC中使用的与环境相关的算术编码兼容。MPEG-4 BASC在“Coding of Audio Visual Objects,Audio(视听对象,音频的编码)”,International Standard 14496-3,2nd edition,ISO/IEC MovingPictures Expert Group,ISO/IEC JTCI/SC29/WG11,2001中有所描述。
本发明的构思的进一步优势在于,在解码器端,能够实现对量化值的任何解释。如果不是频谱的所有比特层都被传输,对每个频谱值,仅仅高次序比特在解码器中是可用的。而且,考虑到在本发明一个优选实施例中传输的听力屏蔽阈值,并且考虑到所传输的比特层的数目,可以确定该频谱值有多少比特还没有被传输。解码器必须从这个数据重建一个量化频谱值。为此可以近似地用零来替代未传输的比特。这样,通过消除缩放层,量化过程将始终导致向较小绝对值的取整。然而,这种量化将导致最小可能的平均量化误差。平均量化误差将在这种量化中通过使用替代解码器的重建策略而减少。
本发明的优选实施例将在下面通过附图来说明,在图中,图1a显示了根据本发明的编码器的方框图;图1b是具有缩放层和次级缩放层的已缩放的编码信号的示意图;图2显示了将幅度频谱细分为与听力屏蔽阈值平行的比特层中的情况;图3是图2中考虑听力屏蔽阈值的MSB的细分的示意图;图4显示了在一个连续给定的听力屏蔽阈值中选择用于下一个次级缩放层的频谱值的示意图;图5是在一个听力屏蔽阈值的频段级表示中展示下一个次级缩放层的频谱值选择的示意图;图6是根据本发明的编码器的详细方框图7是具有IntMDCT的根据本发明的解码器方框图;图8是现有技术中BSAC编码器的方框图;图9是现有技术中BSAC解码器的方框图;图10a是具有MDCT和50%重叠的现有技术中编码器的示意方框图;图10b是为了对图10a中生成的值进行解码的现有技术中解码器的方框图;图11是用于处理时间离散音频采样值以获得整数值的优选装置的方框图,整数频谱值能够由该整数值达到平衡;图12是在Given旋转和两个DCT-IV操作中分解MDCT和反向MDCT的示意图;图13是展示在旋转和DCT-IV操作中分解具有50%重叠的MDCT的示意图。
图1a示出了一个用于对包含音频和/或视频信息的信号的频谱进行可扩缩编码的设备的示意方框图,频谱由被分组为频段的二进制频谱值组成。音频和/或视频信号的二进制频谱值的频段将被送入图1a中的可扩缩编码设备的输入端100。二进制频谱值划分为频段的分组以任何给定方式进行都是有效的。如前所述,本发明基于这样的事实,即频域中的屏蔽效应发生在频段级基础上,而不是频谱值级基础上。因为这个原因,最好在频段中实现二进制频谱值的分组,例如利用频率组(临界频段)或者利用比频率组小,即比频率组包含更少的频谱值的频段,从而使一个生理声学或者心理光学频率组被分组为例如两个或更多个频段。
音频和/或视频信号的二进制频谱值频段会被送入输入端102,用于生成次级缩放层,用生成次级缩放层的装置102来生成第一个次级缩放层、第二个次级缩放层、以及(如果需要的话)其他次级缩放层。次级缩放层会从装置102被输出到输出线104a,104b…并被传输到用于对已编码的信号进行缩放的装置106,通过装置106形成所实现的编码信号,以将第一个次级缩放层(TSS)和第二个缩放层包含到在图1a显示的设备的输出端108处的编码信号中,因此第一个和第二个次级缩放层可以彼此独立地被解码。
生成次级缩放层的装置102用在频段中的第一个数目的二进制频谱值的特定次序的比特来操作,其中第一个数目大于或等于1,且小于频段中二进制频谱值的总数目。为了生成第二个次级缩放层,装置102使用第二个数目的二进制频谱值的特定次序的比特,二进制频谱值的第二个数目被选择使得其大于或等于1,且小于频段中二进制频谱值的总数目,确定二进制频谱值的第二个数目,使得它们包含至少一个未包括在第一个数目的二进制频谱值中的二进制频谱值。这意味着,每个次级缩放层,如果已经被解码,将使得解码器中所考虑的频段中至少有一个频谱值表现出比这个次级缩放层未被考虑的情况下更高的精确度。
图1b显示了作为示意比特流表示的已缩放的编码信号。代表已缩放的编码信号的比特流首先包含边信息110,可以像在BSAC标准中指定的那样实现。比特流然后包括第一缩放层111、第二缩放层112、和第三缩放层113、第四缩放层114、第五缩放层115…。仅作为一个例子,在图1b显示的缩放/编码信号中,第三缩放层113被细分为四个次级缩放层(SSL),分别表示为113a到113d。而且,仅作为一个例子,第五缩放层也被细分为次级缩放层,也就是分为次扩展层115a,115b,115c…。
第一缩放层111例如包括最高次序的比特,要么是绝对的,要么如前所述,相对于音频和/或视频信号频谱值的心理声学屏蔽阈值。作为一个完整的缩放层,第二缩放层112也包含具有小于1的次序的频谱值的比特。
总共,第三缩放层包含频谱值的次序小2级的比特,然而,作为一个不完整的缩放层,其只能被完整解码,但是为了更好的精确缩放比例,它被细分为四个可决定的次级缩放层113a,113b,113c,113d,这四层彼此分开。在图1b表示的例子中,整个频谱,也就是所有的频谱值,被细分为每个具有四个频谱值的频段。然后第一个次级缩放层113a包括分别在频段中之一的一个频谱值的次序低3级的比特。与此类似,第二个次级缩放层包括在各个频段中来自其他频谱值的同样次序的比特。第三个次级缩放层113c也包括同样次序、但也是来自一个频段中的其他频谱值的比特。这同样也应用于第四个次级缩放层。如果选中了每个包含四个频谱值的频段,每个次级缩放层具有每个频段的一个频谱值的一个比特。这意味着,在图1b表示的例子中,每个次级缩放层含有四分之一数目的比特的信息,像一个完整的缩放层,比如第一缩放层111或者第二缩放层112。
下面,在图2中描述了将幅度频谱细分为与听力屏蔽阈值平行的比特层的情况。在图2中由它们的位模式代表的频谱值例如是由IntMDCT获得的频谱值,IntMDCT将在下文详细描述。在图2中通过它们的位模式表示的二进制频谱值也可以是任意时域/频域转换算法的结果,例如FFT,以及被表示为原理上可以是任意大小的二进制整数。因此在图2中表示的二进制频谱值还没有用心理声学方面来量化。
此外,在图2中,听力心理声学屏蔽阈值被描绘为在0db处指定的连续线。
从在频谱中听力屏蔽阈值的过程,得到与听力屏蔽阈值平行的比特层,一个比特对比特层的成员反映了这个比特心理声学或心理光学的关联性。例如,从图2可以看出,指定为1的频谱值包含占据了听力屏蔽阈值之上的两个比特层的比特。相反,更大的频谱值5的特点是它包含占据了听力屏蔽阈值之上的三个比特层的更高次序的比特。相反,频谱值2,3和4仅仅包含处于听力屏蔽阈值之下的一个比特层中的比特。
对于心理声学透明度,也就是在量化基础上和/或在“忽略”低次序比特的基础上干扰的能听度,听力屏蔽阈值被称为0db线。心理声学上最高的比特层,和图2所示例子中的第一缩放层,是在12db和18db之间的比特层。这里,仅仅有数字5的频谱值提供了贡献。因此图1b的第一缩放层107将仅包含图2例子中关于频谱值5的信息。
第二比特层在6db和12db之间,也就是在图2中的第二缩放层112,仅包含关于第一频谱值和第五频谱值的比特的信息,然而没有关于其他频谱值的信息,因为它们的MSB处于较低的比特层中。
在图2所示的例子中,第三比特层113包含处于图2中0db线和+6db线之间的比特,现在仅包括关于第六、第五、和第一频谱线的信息,然而,仍然没有关于其他频谱值的信息。如果现在在图2的例子中的第三缩放层被作为一个完整的缩放层被处理,从第二缩放层到第三缩放层的精度等级变化将非常强烈,由于仅对第一和第二缩放层进行解码,而没有第三缩放层,这将导致强烈的可听干扰。相反,考虑到第三缩放层几乎不会导致任何可听见的干扰。按照本发明,会引起这个范围内的等级变化,因为形成了第三缩放层的次级缩放层,其中,在图2所示的情况下,尽管频段分割为例如m=5,仅仅两个次级缩放层就够了,而第一个次级缩放层将包含频谱值No.1的第二次序比特,第二个次级缩放层将包含频谱值No.5的第三次序比特,这些在频谱值No.1和频谱值No.5的次级缩放层中的比特具有相对于屏蔽阈值的最低位比特的同样的次序。
为了说明这些事实,下面将引用图3。图3是对图2情况的详细表述,听力屏蔽阈值不再通过实际值描述,如在图2中显示那样,而是在图3中用它的最高位表示。
根据本发明,已经发现,对于心理声学透明度,为了转化任何不利的情况,量化频谱值的多个比特需要被传输,以使最近传输的比特的次序与和此频谱值相关的屏蔽阈值是最高位比特的次序相一致。换种说法,这意味着一个频谱值的所有位,假若它存在的话,包含比与需要传输的频谱值相关的屏蔽阈值的MSB更高的次序,这也进一步意味着,包含与屏蔽阈值的MSB相同的次序的频谱值的比特将被传输。
本发明的精确缩放对心理声学屏蔽阈值具有特别的兴趣,也就是,对于具有和与频谱值有关的屏蔽阈值的MSB相同次序的频谱值的比特有兴趣。在图3所示的图中,这些比特被表示为黑边方框。
通常来讲,在图3中比特次序以垂直方向描述,意味着从MSB开始,经由MSB-1、MSB-2、MSB-3、LSB+2、LSB+1到LSB。然而,图3中的“MSB”不是指心理声学屏蔽阈值的某个特定频谱值的MSB,而是绝对MSB,就是在二进制系统中可表示的最大的二的幂。
相反,在图3描述的黑边框中,听力屏蔽阈值的MSB表示为频谱值1到6。尤其,每个方框被虚线对角线分开,有频谱值的比特在对角线上方,而在对角线的下方是对应于这个频谱值的屏蔽阈值的比特。用“1”表示的比特具有值1。用“0”表示的比特具有值0。最后,用“x”表示的比特具有值0或1。因此图3的例子中的第一缩放层和/或第一比特层包含频谱值5的比特MSB,频谱值4的比特MSB-1,频谱值3的比特MSB-2,频谱值2的比特MSB-1,以及频谱值1的比特MSB。因此在第一缩放层中的特定比特次序比屏蔽阈值的MSB所在的比特次序大3。
第二缩放层对于频谱值5,4,3,2和1将包括比特(MSB-1),(MSB-2),(MSB-3),(MSB-2)和(MSB-1)。第三缩放层对于频谱值5,4,3,2和1包含比特(MSB-2),(MSB-3),(LSB+2),(MSB-3)和(MSB-2)。最好被分割为次级缩放层的第四缩放层对于频谱值5,4,3,2和1包含图3中的黑边比特,也就是(MSB-3),(LSB+2),(LSB+1),(LSB+2)和(MSB-3)。第一、第二、第三和第四缩放层的传输将导致心理声学透明度,而如果第四缩放层被省略,将得到6db的精确度损失。
按照本发明,第四缩放层例如被细分为五个次级缩放层,在每个次级缩放层中,在包含五个频谱值的频段中会为每个频谱值提供一个频谱值比特。
每个次级缩放层因此提供6db/(m=5)=1.5db的精确度增加。
为了能够在图3所示的实施例中的解码器中跟踪比特层的过程,听力屏蔽阈值和/或唯一正确的心理声学上的重要的比特的过程,也就是听力屏蔽阈值的MSB,在边信息110内从图1b被传输到解码器。
为了这个目的,两种选择方案是最佳的。包括线级表示和频段级表示。
由于它的连续过程,听力屏蔽阈值在线级表示中通过一个具有极少系数的FIR滤波器或者多项式内插法有效地表达。这里对于每个频率响应,生成听力屏蔽阈值的一个单独的值。
在频段级表示中,参考了这样的事实,即基于听力屏蔽阈值的心理声学屏蔽效应可以在频段级基础上表达,频段划分可以与Bark比例一致,并且最好代表Bark比例的细化。这种频段级表示也用在声学适应音频编码,如MPEG-2 AAC的现有技术方法中。为了表示听力屏蔽阈值,在每个频段传输一个值就足够了。
如前所述,图2和图3代表相同心理声学重要性的比特层定义,如用IntMDCT频谱来表示。如前所述,比特在层到层的基础上被编码,从最高层开始,并被传输。当达到对应于听力屏蔽阈值(图3中的黑边比特)的比特层时,所传输的信号是心理声学透明的。其他比特层的传输,它来自图3表示的黑边方框下的比特,增了加精确度,因此也增加了到听力屏蔽阈值的安全距离。最后,如果所有可用的比特都被传输,这种方法在无损的基础上工作。如前所述,最好采用一种算术编码来减少所传输的比特的冗余。
根据本发明使用的次级缩放层基础上的精确缩放的细化可以在解码中彼此分开地处理,在听力屏蔽阈值以上、在听力屏蔽阈值上、和听力屏蔽阈值以下(相对于听力屏蔽阈值的MSB的次序)的区域内尤其有优势。没有任何精确缩放,精确度增加6db会导致IntMDCT频谱的比特的层级传输。然而,如果考虑到至少在噪声信号中,听力屏蔽阈值仅在信号下大约6db,很明显,精确度为6db步骤的缩放对于唯一正好的可听信号部分的有效编码来说往往过于粗糙。
在上面描述的1.5-b步骤的细分,如果使用具有四个频谱值的频段,并且如果在每个次级缩放层中仅设置一个频谱值,或者如果例如使用具有八个频谱值的频段,并在每个次级缩放层中考虑两个频谱值,关于精度适配的对应应该在1.5db步骤中,这也存在于MPEG-2 AAC中。这里,通过形式为20.25×n(n代表整数)的比例因子,对连续频谱值进行频段级适应性量化。如果n增加1,MPEG-2 AAC的量化精确度就变化1.5db。
本发明的概念通过将比特层细分为次级缩放层,提供了精确缩放的这种细化,通过在m个次级层上分别细分m个相邻的线得到一层的m个次级层。通过每个新传输的次级层,精确度会增加6/mdb。在1.5db步骤中m=4的分级也是可能的。与上面所说的MPEG-2 AAC方法中的量化相反,每个次级层的精确度只对于本发明概念中m个频谱线中的一个而增加。由于心理声学效应在频域中发生在频段级的基础上,而不是线级的基础上,每个频段相同的精确度增益可以通过增加频谱线的精确度得到,像在整个频段中规则地增加精确度一样。
图4和图5提到了在下一个次级层中选择m个频谱线中的哪一个进行细化的最佳模式。
图4描述了这样一种情况,其中听力屏蔽阈值在线级的基础上描述。听力屏蔽阈值被绘制为连续的线。听力屏蔽阈值的MSB以“十字”形状被绘制在上面。在图4中没有描述的位于上面的所有缩放层的解码已经完成,使得频谱值1,2,3和4用以0表示的精确度表示。以0表示的先前传输的比特因此代表在解码器中的频谱线精确度。通过将编码器中以前处理的频谱值和此频谱值的听力屏蔽阈值的值进行比较,哪个频谱值以前被以最不精确的方式传输一下子就非常清楚了。在图4的例子中,从图4可以很容易地看出,这包括频谱值2。因此第一个次级缩放层将获得频谱值NO.2的下一个比特。
用于第二个次级缩放层的下一个频谱值是频谱值No.4。紧跟着是用于第三个次级缩放层的频谱值NO.1.,最后是用于第四个次级缩放层的频谱值No.3。
因此从在前面处理的频谱值精确度和听力屏蔽阈值之间差别最大的频谱线决定下一个要编码的比特。
可以理解的是,解码器中的这个过程将会被逆转,使得解码器可以在没有任何附加的边信息的情况下得知哪一个频谱值会被次级缩放层进一步细化,以紧接着被解码,只要解码器知道心理声学屏蔽阈值的连续过程。
图5显示了听力屏蔽阈值的频段级表示的情况。从图5可以看出,频谱值2,3和4的比特可以被看作下面要处理的次级缩放层,因为与听力屏蔽阈值相比,它们相距听力屏蔽阈值的距离最大。与此相反,频谱值1的值已经位于靠近听力屏蔽阈值的位置,所以频谱值1不需要被细化,但是频谱值2,3和4需要。
原则上,频谱值2,3和4中的任何一个都可以在下一个次级缩放层被考虑。然而可以得到噪声整形,其中考虑了频谱值2,3和4的绝对值,像在编码器和/或解码器中已经处理过的一样。例如,如果发现六个较高次序的比特已经为频谱值2被传输了,意味着频谱值2非常大,这意味着,相对来说,这个频谱值已经被以一种相当精确的方式表示了。相反,如果发现频谱值NO.3是一个较小的频谱值,例如仅仅传输了一个较高次序的比特,首先,频谱值No.3,最好是根据本发明,将在一个次级缩放层中被处理,然后是频谱值2。这种认识基于这样的事实,即假定听力印象的相对精确度比绝对精确度更重要。
图6显示了根据本发明的编码器的整个方框图。时间信号将被送入编码器的输入端600,例如,通过IntMDCT602变换为频域。与此同时,心理声学模型4生效,它主要包含与图8所示的心理声学模型84相同的结构。在心理声学模型84中计算的屏蔽阈值现在不被用于量化,如图8所示,而是被用于定义604缩放层。尤其,在本发明的一个优选实施例中,装置84在每个频谱值或者每个频段级基础上提供了屏蔽阈值的MSB,以确定在图3中表示的黑边方框。装置604然后定义相对于(图3中黑方框的)屏蔽阈值的MSB的次序的缩放层。
如果缩放层和次级缩放层都会被使用的话,用于定义缩放层的装置604控制用于生成次级缩放层和/或用于生成缩放层的装置132。在图3所示的实施例中,装置102将工作,它将生成三个完整的次级缩放层,并将它们送入装置606做算术编码,然后,对于关于频谱值比特的第四层,其次序等于屏蔽阈值的MSB的次序,将它们细分为特定数目的次级缩放层。在次级缩放层算术编码以后,缩放层和次级缩放层将通过比特流形成装置608在比特流中产生,以获得主要包含图1b中所示结构的缩放/编码信号。
缩放/编码信号将被送入图7所示的解码器输入端700,装置702使图1b的比特流变形,以将边信息与次级缩放层等分开。然后抽取/编码装置704连续地对缩放层和次级缩放层进行算术编码,这样,在图7没有显示的位于解码器端的存储器中,各个频谱值的位模式一个接一个地形成。
根据传输的缩放层数目和/或根据在装置704的控制输入端处的控制信号,解码器有时会停止对其他缩放层或者次级缩放层的解码。如果所有在编码器端产生的缩放层和次级缩放层都已经在比特流中被传输和解码了,无损编码/传输/解码将发生,解码器不再需要对量化值进行任何解释。在无损或者几乎无损的编码/传输/解码之后获得的频谱值将被送入后向转换装置706,该装置例如实现反向IntMDCT(IntMDCT-1),以在输出端708处获得解码信号。例如,如果在传输信道基础上确定的缩放层或者次级缩放层被切断,或者如果由于其结构,解码器无法处理所有的缩放层或者次级缩放层,或者如果装置704被控制为只处理一定数目的缩放层或者次级缩放层,根据本发明的解码器会对前面可用的频谱值位模式进行解释。如果不是频谱的所有比特层都被传输,则只有较高次序的比特在解码器中对于每个频谱值是可用的。
知道听力屏蔽阈值和在无损情况下解码器产生的全部的比特层数目和/或可能产生的全部比特层数目,解码器现在确定对于每个单独的频谱值有多少比特层,以及多少个比特,还没有被传输。解码器由这些数据构造了一个量化的频谱值。为此最简单的方法是,用0代替未被传输的比特。在这种情况下,量化过程将永远导致向较小绝对值方向的取整。
按照本发明,最好将平均量化误差保持得尽可能小。这通过使用一种所谓的“归一中高层量化器(Uniform Midrise Quantizer)”来实现,这在N.S.Jayant和P.Noll的“Digital coding of waveform(波形的数字编码)”,Prentice-Hall,1984中有介绍。这种量化器保持在量化中采用的量化间隔不变,但是使量化值移位,也就是对量化间隔进行表示以及通过特定值对传输的比特进行解释。得到向量化间隔中心位置的移动,例如对缺少的比特通过使用位模式“1000…”。对于频谱值所缺少的低次序比特,通常最好在量化器中使用位模式以进行重建,该模式与用“000…”表示的“取整位模式”不同。换句话说,这意味着重建位模式包含至少一个1,最好重建位模式的最高有效位是1。
下面,详细提到了图6所示编码器和图7所示的解码器的功能,作为一个优选的变换算法,包括IntMDCT。IntMDCT频谱提供了对音频信号的频谱整数表示。与此同时,在图6所示的解码器中,心理声学模型计算听力屏蔽阈值。如前所述,听力屏蔽阈值由于连续的过程可以被有效地编码,并且可以以比特流来传输,例如,通过FIR滤波器的系数或者通过多项式内插法。
对每个频谱线,比特的数目在心理声学方面不重要,也就是说,频谱值的次序小于这个频谱值听力屏蔽阈值的MSB的次序的比特将由听力屏蔽阈值得到。参照图3,它们是黑边方框下面的比特。
整数频谱值的每个数量值都在位级的基础上被表示,以通过装置604定义沿着频域的相同心理声学重要性的比特层,例如,与静止的心理声学重要比特的层平行,在更重要的层中更偏爱低次序的频率。这些比特沿着重要层排序,从最高有效位开始。起始层要么从理论最大值得到,要么从有效编码的频谱包络得到,与经过编码的听力屏蔽阈值类似,或者从听力屏蔽阈值的平行位置得到,例如通过30db,其对应于5个比特。
在高重要性的层中出现“1”是不大可能的,因为只有很少的频谱线在远离听力屏蔽阈值处,例如,在图2或者图3中的频谱线5。向着低一些的层,遇到“1”的可能性增加,大约是50%。对于以这种方式排列的比特序列,最好对冗余缩减应用比特级算术编码。
在本发明的一个方面,可扩缩区域,像在MPEG-4 BSAC中那样,不仅延伸到心理声学透明性,还延伸到无损编码/解码。如果整个经过编码的比特序列和具有相应表示的频谱值的适当符号被传输,则此实施例将基于无损地操作。仅仅部分编码比特序列被传输,这将减少无关的问题。如果编码比特序列被传输到唯一正确重要比特的层,该方法仅以透明模式操作。如果传输更少的比特,将引起比特率的减少,也将导致音频/视频质量的下降。
如果除了心理声学重要层之外还传输其他层,音频信号(视频信号)将用到屏蔽阈值的额外安全距离来表示,因此让一个与后续处理步骤相比具有很大可靠性的几乎无损的表示成为可能。
用于实现透明度而需要的比特的数目在各个块之间是不同的。如果这个信息被编码为完整的无损比特流,则这个信息可以用于控制比特的分配来获得恒定比特率。这个信息的确可用,并可以用于任何需要的恒定比特率。因此,从完整的无损编码比特流,对每个特定的恒定比特率可采用一个声学适配的编码次级比特流,前者利用了局部变化比特率的功能。
最终,在边信息中比特层的传输,这是获得透明所必需的,通过将这个值与真正传输的比特层数目进行比较使得可以控制在次级比特流中传输的当前音频质量。
作为整数变换算法的例子,下面提到IntMDCT变换算法,该算法在“Audio Coding Based on Integer Transforms(基于整数变换的音频编码)”,111th AES convention,New York,2001中有所描述。IntMDCT算法尤其受欢迎,因为它提供了MDCT最有吸引力的性质,例如对音频信号的良好频谱表示、严格的取样和块重叠。
图11显示了根据本发明的优选设备的概略图,该设备用于处理表示音频信号的时间离散的采样值以获得整数值,IntMDCT整数变换算法的操作正是依赖于该整数值。时间离散的采样值然后被图11的设备窗口化,并可选地被转换为频谱表示。被送入该设备的输入端10的时间离散的采样值将由一个长度对应于2N个时间离散采样值的窗口w进行窗口化,以在输出端12处获得整数窗口化采样值,该值适合通过变换、尤其是通过执行整数DCT的装置14被转换为频谱表示。进行整数DCT来从N个输入值生成N个输出值,这与图10a的MDCT函数408相反,MDCT函数408是在MDCT等式的基础上,仅从2N个窗口化采样值生成N个频谱值。
为了对时间离散的采样值进行窗口化,首先在装置16中选择两个时间离散采样值,它们共同表示一个时间离散采样值的向量。一个被装置16选择的时间离散采样值被放在窗口的头一个四分之一处。另一个时间离散采样值被放在窗口的第二个四分之一处,这在图13中阐述得更加详细。装置16产生的向量现在被提供一个2×2维的旋转矩阵,这个操作不是被直接执行,而是通过几个所谓的提升矩阵来进行。
一个提升矩阵具有这样的属性,它仅包含一个元素,该元素取决于窗口w,并且不等于“1”或“0”。
在提升步骤中小波变换的因式分解在技术文献“FactoringWavelet Transforms Into Lifting Steps(将小波变换因式分解为提升步骤)”,Ingrid Daubechies and Wim Sedldens,Preprint,BellLaboratories,Lucent Technologies,1996中有介绍。通常,提升方案是在包含相同低通和高通滤波器的完美重建滤波器对之间的简单关系。每对互补滤波器可以被因式分解为提升步骤。尤其,这也适用于Givens旋转。考虑多端矩阵是一个Givens旋转的情况。则下面的等式有效cosα-sinαsinαcosα=1cosα-1sinα0110sinα11cosα-1sinα01---(1)]]>在等式右边的这三个提升矩阵中的每个都有值“1”作为主对角线元素。另外,在每个提升矩阵中,一个辅助对角线元素等于0,一个辅助对角线元素取决于旋转角a。
现在向量将与第三个提升矩阵相乘,也就是上面等式中最右边的提升矩阵,得到第一个结果向量。在图11中通过装置18表示了这个过程。按照本发明,现在第一个结果向量将通过把实数量映射为整数量的任何取整函数来进行取整,该函数在图11中通过装置20来描述。在装置20的输出端处得到了取整后的第一个结果向量。这个取整后的第一个结果向量被送到装置22中,将其与中间的一项,也就是第二项相乘,以得到第二个结果向量,然后再用装置24对其进行取整,得到取整后的第二个结果向量。现在取整后的第二个结果向量被送至装置26,将其与上述等式最左边一项的提升矩阵,也就是第一项相乘,以得到第三个结果向量,它最后再次用装置28取整,最后在输出端12处得到整数窗口采样值,最后需要用装置14对其进行处理,如果希望用一个频谱对其进行表示,以在频谱输出端30处得到整数频谱值的话。
最好装置14实现为一个整数DCT或整数DCT。
根据长度为N的类型4(DCT-IV),离散余弦变换用下式给出Xt(m)=2NΣk=0N-1x(k)cos(π4N(2k+1)(2m+1))---(2)]]>DCT-IV的系数形成一个标准正交的N×N矩阵。每一个标准正交的N×N矩阵可以分解成N(N-1)/2个Givens旋转,如技术文献“Multirate Systems And Filter Banks(多率系统和滤波器组)”,P.P.Vaidyanathan,Prentice Hall,Englewood Cliffs,1993中所述。可以理解的是,也可以存在其他的分解方式。
关于各种DCT算法的分类,可以参考H.S.Malvar的“SignalProcessing With Lapped Transforms(利用重叠变换的信号处理)”,Artech House,1992。一般来说,DCT算法根据它们的基函数来类型区分。然而本发明中优选的DCT-IV中包含非对称的基函数,即1/4余弦波、3/4余弦波、5/4余弦波、7/4余弦波等等。这种离散余弦变换,如II类(DCT-II),具有中心对称和点对称的基函数。第零级基函数有一个直流分量,第一级基函数是半个余弦波,第二级基函数是整个余弦波等等。由于在DCT-II中特别考虑直流分量,在视频编码中也使用直流分量,但在音频编码中则与视频编码相反,不采用直流分量,因为音频编码中的直流分量是不相关的。
下面做了特别参考来解释Givens旋转的旋转角α是如何依赖于窗口函数的。
窗口长度为2N的MDCT可以缩减至长度为N的IV类离散余弦变换。这可以通过在时域内明确执行TDAC变换,然后应用DCT-IV来实现。在50%的重叠中,块t左边一半窗口与前面的块,即块t-1的右边一半窗口重叠。这两个连续块t-1和t的重叠部分在时域内进行预处理,即在转换之前,如下也就是在图11的输入端10和输出端12之间处理x~t(k)x~t-1(N-1-k)=w(N2+k)-w(N2-1-k)···w(N2-1-k)w(N2+k)xt(N2+k)xt(N2-1-k)---(3)]]>标有波浪线的值包含图1的输出端12处的值,而在上面等式中没有任何波浪线的x值包含输入端10和/或装置16后面的将要选择的值。连续指数k取值范围从0到N/2-1,w代表窗口函数。
从窗口函数w的TDAC条件可知下面关系有效w(N2+k)2+w(N2-1-k)2=1---(4)]]>对于某些角度αk,k=0、1、……、(N/2)-1,这个在时域内的预处理可以写成Givens旋转,如前所述。
Givens旋转的角度α依赖于窗口函数如下α=arctan[w(N/2-1-k)/w(N/2+k)](5)可以理解的是,只要符合TDAC条件,可以使用任意的窗口函数w。
下面,通过图12描述了一个级联的编码器和解码器。由一个窗口共同窗口化的从x(0)到x(2N-1)的离散时间采样值被图11的装置16选中,使得采样值x(0)和采样值x(N-1),也就是来自窗口的第一个四分之一的采样和来自窗口的第二个四分之一的采样,被选中,以在装置16的输出端处形成向量。交叉的箭头表示对装置18,20和/或22,24和/或26,28提升相乘和相继取整,以在DCT-IV块的输入端处得到整数窗口化采样值。
如上所描述,当第一个向量已经被处理时,从采样值x(N/2-1)和x(N/2)中进一步选出第二个向量,即又一个来自窗口第一个四分之一的采样值和来自窗口的第二个四分之一的采样值,由图1中所述的算法处理。与此类似,所有其他来自第一个和第二个四分之一窗口的采样值对都将被处理。第一个窗口的第三和第四个四分之一被同样地处理。2N个窗口化整数采样值现在出现在输出端12处,现在它们将被送入DCT-IV变换,如图12所示。尤其第二和第三个四分之一处的整数窗口采样值将被送入DCT。第一个四分之一窗口处的窗口化整数采样值将与前一个窗口的第四个四分之一处的窗口化整数采样值一起在前述的DCT-IV处理。类似地,图12中第四个四分之一处的窗口化整数采样值和下一个窗口的第一个四分之一处的窗口化整数采样值一起被送入DCT-IV变换。图12中所示的中心整数DCT-IV变换32提供了从y(0)到y(N-1)的N个整数频谱值。现在这些整数频谱值仅进行熵编码,不需要任何中间量化,因为根据本发明的窗口化和变换提供了整数输出值。
在图12的右半边示出了一个解码器。这个解码器包含反向变换和反向窗口化,它对于编码器来说是在反向工作。众所周知,对于DCT-IV的反向变换来说,可以使用如图12所示的反向DCT-IV。图2所示的解码器DCT-IV 34的输出值现在用根据本发明的前面的变换和/或后继变换的相应值来反向处理,以从在装置34和/或前面的变换及后继变换的输出端处的证书窗口化采样值来生成时间离散的音频采样值x(0)到x(2N-1)。
输出端操作通过反向Givens旋转反向进行,也就是说,使得块26,28和/或22,24和/或18,20在相反的方向上通过。这需要通过等式1的第二个提升矩阵更详细地描述。如果(在编码器中)当第二个结果向量通过将取整后的第一个结果向量与第二个提升矩阵(装置22)相乘得到的时候,有以下的表达式(x,y)→(x,y+xsinα)(6)等式6右边的值x,y是整数。然而这不适用于值sinα。这里,需要介绍一下取整函数r,它以如下的等式表示(x,y)→(x,y+r(xsinα))(7)
装置24执行了这个运算。
(在解码器中的)反向影射可以定义如下(x′,y′)→(x′,y′-r(x′sinα))(8)由于在取整运算之前的减号,显而易见,提升阶段的整数近似可以被反向,而不引入任何误差。在这三个提升步骤中任何一个应用这种近似都导致了Givens旋转的整数近似。取整旋转(在编码器中)可以被反向(在解码器中),而不引入误差,即以相反的顺序通过反向取整提升阶段,也就是说,如果图1的算法在解码时是自下向上实现的。
如果取整函数r是点对称的,反向的取整旋转与角-α的取整旋转是相同的,如下cosαsinα-sinαcosα---(9)]]>解码器的提升矩阵,即为了进行反向Givens旋转,在这种情况下可由等式(1)通过仅仅将表达式“sinα”替换为“-sinα”而直接得到。
在下面,具有重叠窗口42到46的普通MDCT的分解再次被通过图13来表示。窗口40到46中的每个窗口具有50%的重叠。每个窗口,Givens旋转首先在第一个和第二个四分之一窗口内和/或第三个和第四个四分之一窗口内执行,如箭头48所示。然后,旋转值,即经过窗口化的整数采样值,被送入一个N到N的DCT,使得一个窗口的第二和第三个四分之一窗口和/或下一个窗口的第四个和第一个四分之一窗口总是通过在频谱表示的DCT-IV算法共同执行。
按照本发明,通常的Givens旋转被分解为提升矩阵,这些矩阵被依次执行,其中在每次提升矩阵相乘之后,执行一个取整的步骤,使得浮点数在它们产生后就立即被取整,所以,在每次结果向量与提升矩阵相乘前,结果向量只包括整数。
因此,输出值总是整数,其中最好使用整数输入值。这不代表任何限制,因为任何PCM采样值,由于它们存储在一张CD上,是整数值,它们的值域根据比特宽度而变化,也就是说,取决于时间离散的数字输入值是十六位值还是二十四位值。然而,如所阐述的一样,通过以反向顺序执行反向旋转,整个过程是可以反向的。按照本发明,存在一个用于完美重建的MDCT整数近似,也就是无损变换。
本发明的变换提供了整数输出值而不是浮点值。它提供了一个完美的重建,这样当执行一个前向变换、然后执行一个后向变换的时候,不会引入误差。按照本发明的一个优选实施例,这个变换是对修正离散余弦变换的替换。其他变换方法也可在整数的基础上执行,只要能够分解为旋转并将旋转分解为提升阶段。
按照本发明,整数MDCT具有MDCT的大部分优良特性。它具有重叠的结构,由此可得到比在无重叠块变换中更好的频率选择性。在TDAC函数的基础上,当变换前进行窗口化的时候已经开始考虑这个函数,维持了严格的采样,使得代表一个音频信号的所有频谱值等于输入采样值的总数。
与另一种普通的提供浮点采样值的MDCT相比,本发明的整数变换,与普通的MDCT相比,表现为噪声只在仅有很小信号强度的频谱区域内增加,而这种噪声增加在重要信号层不会被注意到。为此目的,本发明的整数处理适用于有效的硬件实现,因为只使用了乘法步骤,而乘法可以很容易地分解为移位/加法步骤,这两种算法在硬件基础上都是很容易很快实现的。
本发明的整数变换提供了音频信号的良好的频谱表示,并且仍然保留在整数区域。如果应用于一个音频信号的音调部分时,会导致良好的能量集中。因此,一个有效的无损编码方案仅仅通过用如图1所示简单级联的本发明的窗口化/变换就可以实现。特别地,使用逸出值的堆栈编码对本发明是很受欢迎的,像在MPEG AAC中使用的一样。最好通过使用特定幂方来缩减所有的值直到它们满足一个需要的码表,然后对忽略的最低有效位进行额外编码。与使用更大码表的替代方案相比,这个方案对于存储码表所需要的存储消耗更为便宜。仅仅通过省略某些最低有效位,就可以获得一种近似于无损的编码器尤其对于音调信号,整数频谱值的熵编码可以获得高编码增益。对于信号的瞬态部分,编码增益很低,即在瞬态信号的平坦频谱基础上,即在一小部分等于或几乎等于0的频谱值基础上。如在J.Herre,J.D.Johnston的“Enhancing the Performance of Perceptual AudioCoders by Using Temporal Noise Shaping(通过使用临时噪音成形(TNS)增强知觉音频编码器的性能)”,101stAES Convention,LosAngeles,1996,preprint 4384中所描述,然而这种平坦性可通过使用频域内的线性预测而被利用。一种替代方案是用开环来预测,还有一个替代方案是用闭环来预测。第一个替代方案,即采用开环的预测器,被称为TNS。预测的量化导致结果量化噪声适配于音频信号的时间结构,并避免了心理声学音频编码器中的前向回波。对于无损音频编码,第二个替代方案更适合,即闭环的预测器,因为闭环的预测允许输入信号的精确重建。如果这个技术被应用于一个根据本发明生成的频谱,在每级预测滤波器后必须采用一个取整步骤来使之保留在整数范围内。通过使用反向滤波器和相同的取整函数,初始频谱可以被精确地再现。
为了利用数据缩减中的两条信道之间的冗余,如果使用一个π/4角度的取整旋转,在无损的基础上可以使用中间-旁边(middle-side)编码。与计算立体声信号左右声道之间的和与差的替代方案相比,这种取整旋转的好处是能够保持能量。使用所谓的联合立体声编码的技术可以打开或关闭每个频段,如同在标准MPEG AAC中实现的。也可考虑其他的旋转角度,以能够更加灵活地减小两个信道之间的冗余。
根据实际环境,根据本发明的编码器概念和/或根据本发明的解码器概念可以通过硬件或软件实现。实现在数字存储介质上有效,尤其在具有电子可读控制信号的软盘或者CD上,它们可以与可编程的计算机系统协同工作,以实现相应的方法。通常,本发明还包含具有存储在机器可读载体上的程序代码的计算机程序产品,用于当计算程序产品在计算机上执行时实现本发明的编码方法或本发明的解码方法。换句话说,当计算机程序在计算机上执行时,本发明因此代表了具有能够执行解码方法和/或能够执行编码方法的计算机代码的计算机程序。
权利要求
1.用于对包含音频和/或视频信息的信号频谱进行可扩缩编码的设备,其中频谱包含二进制频谱值,该设备包括装置(102),用于利用在频段中的第一个数目的二进制频谱值的特定次序的比特生成第一个次级缩放层,其中第一个数目大于或等于1,且小于在频段中的二进制频谱值的总数,以及用于利用第二个数目的二进制频谱值的特定次序的比特来生成第二个次级缩放层,实现用于生成的装置(102)以选择二进制频谱值的第二个数目,使得这个数目大于或等于1,且小于频段中二进制频谱值的总数,并进一步确定频谱值的第二个数目,使得该数目包含至少一个不包括在第一个数目的二进制频谱值中的二进制频谱值;和装置(106),用于形成编码信号,实现用于形成的装置以将第一个次级缩放层和第二个次级缩放层包含在编码信号中,使得第一和第二个次级缩放层(113a,113b)可以彼此独立地被编码。
2.如权利要求1所述的设备,还包括用于在频段中使用具有与特定次序不同的次序的所有比特来生成一个完全缩放层的装置,以及进一步实现用于形成的装置(106),以把完全缩放层包含在比特流中,使得它可以独立于第一和第二个次级缩放层(113a,113b)被编码。
3.如权利要求1或2所述的设备,其中二进制频谱值被量化,该设备还包括用于为频段计算心理声学屏蔽阈值的最高有效位的次序的装置(84),以及用于定义二进制频谱值的比特的缩放层的装置(604),具有包含二进制频谱值位的缩放层,其次序与心理声学屏蔽阈值最高有效位的次序具有特定的差,或者其次序与这些频段的心理声学屏蔽阈值的最高有效位的次序相等。
4.如权利要求3所述的设备,其中实现用于生成第一和第二个次级缩放层(113a,113b)的装置(102),以将其用作二进制频谱值的比特的特定次序的比特,其与在频段中的心理声学屏蔽阈值最高有效位的次序的差等于“+1”,“0”和/或“-1”。
5.如权利要求3或4所述的设备,其中实现用来计算心理声学屏蔽阈值最高有效位的次序的装置(84),以为频段中的每个频谱值确定最高有效位的次序,或者为整个频段确定心理声学屏蔽阈值的最高有效位的次序。
6.如权利要求3到5中任一项所述的设备,其中进一步实现用于形成的装置(106),以将在心理声学屏蔽阈值上的信息,如边信息(110)包括到编码信号中。
7.如前面任一项权利要求所述的设备,其中第一个次级缩放层在第二个次级缩放层之前被解码,并且其中实现用于生成第一和第二个次级缩放层的装置(102),以为第一个数目的二进制频谱值选择频谱值,通过它可获得频段的最大的精确度增益。
8.如权利要求1至7中任一项所述的设备,其中第一个次级缩放层在第二个次级缩放层之前被解码,并且其中实现用于生成第一和第二个次级缩放层的装置(102),以为第一个次级缩放层使用二进制频谱值,它通过较高缩放层的比特来表示,包括与频段中的频谱值的心理声学屏蔽阈值的最大差值。
9.如前面任一项权利要求所述的设备,其中实现用于生成第一和第二个次级缩放层的装置(102),以为第一个次级缩放层使用二进制频谱值,它通过较高缩放层的比特来表示,是频段中的最小量化频谱值。
10.如前面任一项权利要求所述的设备,其中通过整数MDCT从信号的时间采样值生成频谱值。
11.如权利要求1或2所述的设备,其中使用心理声学和/或心理光学模型(82)来量化频谱值。
12.如权利要求11所述的设备,其中实现用来生成第一和第二个次级缩放层的装置(102),以使用频段中的特定恒定次序的比特。
13.如权利要求11或12所述的设备,其中特定次序包括经过量化的二进制频谱值的比特的最低有效次序。
14.如前面任一项权利要求所述的设备,其中一个频段包含m个频谱值,m大于或等于2,并且其中实现用于生成第一和第二个次级缩放层的装置(102),以计算次级缩放层的第一和第二个数目,使得它们最大等于m、最小等于1,其中,在存在m个次级缩放层的情况下,每个次级缩放层包括恰好一个频谱值的特定次序的一个比特,对于该特定次序在一个次级缩放层中仅存在一个频谱值。
15.如权利要求14所述的设备,其中m等于4。
16.如前面任一项权利要求所述的设备,其中实现用于生成第一和第二个次级缩放层的装置(102),以对特定次序的量化频谱值的第一个和/或第二个数目的比特进行算术编码。
17.用于对包含第一和第二个次级缩放层的编码信号进行扩缩解码的设备,第一个次级缩放层包含一个频段中第一个数目的二进制频谱值的特定次序的比特,第二个次级缩放层包含频段中第二个数目的二进制频谱值的特定次序的比特,第二个数目包含至少一个不包括在第一个数目中的频谱值,该设备包括用于从编码信号抽取第一个次级缩放层和从编码信号抽取第二个次级缩放层的装置(704);以及用于处理第一个次级缩放层和第二个次级缩放层的装置,以确定在频段中的二进制量化频谱值的特定次序的比特。
18.如权利要求17所述的设备,其中为第一个次级缩放层选择第一个数目的二进制频谱值,以为频段获得最大精确度增益,其中实现用于抽取的装置(704),以在第二个次级缩放层之前抽取第一个次级缩放层。
19.用于对包括音频和/或视频信息的信号频谱进行可扩缩编码的方法,频谱包括二进制频谱值,该方法包括以下步骤利用在频段中的第一个数目的二进制频谱值的特定次序的比特生成(102)第一个次级缩放层,第一个数目大于或等于1,且小于在频段中二进制频谱值的总数,利用第二个数目的二进制频谱值的特定次序的比特生成第二个次级缩放层,其中实现用于生成的装置(102),以选择第二个数目的二进制频谱值,使得此数目大于或等于1,且小于在频段中二进制频谱值的总数,并进一步确定频谱值的第二个数目,这个数目包含至少一个不包括在第一个数目的二进制频谱值中的二进制频谱值;形成(106)一个编码信号,实现用于形成的装置,以将第一个次级缩放层和第二个次级缩放层包括到编码信号中,使得第一和第二个次级缩放层(113a,113b)可以彼此独立地被编码。
20.用于对包含第一个和第二个次级缩放层的编码信号进行扩缩解码的方法,第一个次级缩放层包含在频段中第一个数目的二进制频谱值的特定次序的比特,第二个次级缩放层包含在频段中第二个数目的二进制频谱值的特定次序的比特,其中,第二个数目包含至少一个不包括在第一个数目中的频谱值,该方法包括以下步骤从编码信号抽取(704)第一个次级缩放层和从编码信号抽取第二缩放层,并且处理第一个次级缩放层和第二个次级缩放层,以确定在频段中的二进制量化频谱值的特定次序的比特。
21.一种计算机程序,当程序在计算机上执行时,具有用于实现权利要求19或权利要求20所述方法的程序代码。
全文摘要
本发明涉及一种用于对包含音频和/或视频信息的信号的频谱进行扩缩编码的设备。其中频谱包含分组为频段的二进制频谱值。所述设备包括一个用于用于生成第一个次级缩放层和第二个次级缩放层的装置(102),以及用于形成编码信号的装置(106),以将第一个次级缩放层和第二个次级缩放层包含在编码信号中,使得第一个和第二个次级缩放层可彼此独立地被解码。与完全缩放层相比,局部缩放层仅仅包括频段中的一部分二进制频谱值的特定次序的比特,这样通过对局部缩放层进行额外解码,可以得到更好的可控和更好的可扩缩精确度增益。
文档编号G10L19/032GK1675683SQ03819055
公开日2005年9月28日 申请日期2003年8月4日 优先权日2002年8月9日
发明者拉尔夫·盖格, 托马斯·斯波尔, 拉尔勒赫恩兹·布兰登堡, 朱尔根·赫尔, 朱尔根·科勒尔, 杰拉尔德·舒勒 申请人:弗兰霍菲尔运输应用研究公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1