使用网格降低mpeg-2高级音频编码的比例因子传输成本的制作方法

文档序号:2821474阅读:232来源:国知局
专利名称:使用网格降低mpeg-2高级音频编码的比例因子传输成本的制作方法
背景技术
典型的变换和滤波器组音频编码技术,诸如MPEG-1的1到3层,Dolby AC3(也称为Dolby Digital)(Dolby、Dolby Digital和Dolby AC-3是Dolby实验室许可公司的商标)和MPEG-2高级音频编码(AAC)通过在时域和频域动态地分配比特以消除音频信号中听不见的冗余来降低传输数据速率。该比特的动态分配典型地基于与信号相关的心理声学原理。Dolby AC3的进一步细节可以在1994年11月10日批准的数字音频压缩(AC-3)标准、(Rev 1)1995年4月12日增加的附件A、(Rev 2)1995年5月24日增加的13个勘误以及(Rev 3)1995年12月20日增加的附件B和C中找到。AAC的更进一步细节可以在“ISO/IEC MPEG-2 Audio Coding by Bosi et al,presented at the 101st Convention 1996 November 8-11,Los Angeles,Audio Engineering Society Preprint 4382)找到。
在AAC中,使用比特流所包含的全局增益参数和比例因子来实现比特分配。使用众所周知的修改的离散余弦变换(MDCT)即通常所知的时域混叠消除(TDAC)(参见Princen et al,“Analysis/synthesisfilter bank design based on time domain aliasing cancellation”,IEEETrans. Acoust.,Speech,Signal Processing,Vol. ASSP-34,pp.1153-1161,October 1986)转换的音频频谱,被划分为大约一半临界带宽的频带,并且相乘地应用比例因子。比例因子和全局增益联合表示1.5dB步长或大约四分之一比特增量的比特分配(根据音频信号的随机特征获得准确的比特分配,并进一步被结合在AAC的非线性量化器复杂化)。增加频带中的比例因子,通过分配更多的比特到频带,有效地降低该频带中的量化噪声。相反地,减少比例因子,通过减少分配到特定频带的比特,增加了该特定频带的量化噪声。
因为AAC是前向自适应音频编码系统,所以比例因子被传递到解码器。这通过对比例因子差分编码然后对该差进行霍夫曼编码来实现的。AAC标准中定义的霍夫曼码,频带到频带的比例因子参数的很大的变化,导致边信息形式的可用比特的过份消耗,这使比例因子推导变得复杂,如下节所述。
比例因子计算由于改变比例因子实现的噪声分配的不确定性和使用非线性量化器台阶,计算AAC编码器中的比例因子是非常困难的问题。在AAC中通常使用两种技术以计算比例因子,即分析综合法和直接从掩蔽模型(masking model)估计法,这在以下将介绍。虽然比例因子的选择可以是任意的,但是在由标准提出的一些限制中这两种技术是最公知的。
使用分析综合法计算比例因子使用分析综合法的比例因子计算是通过两种嵌套循环实现的,负责量化和比特计算的内循环和分析内循环的结果并相应地改变比例因子的外循环。
内循环改变AAC比特流包含的全局增益参数以确保用来编码音频频谱的比特数不超过可用比特的数。全局增益被设置为初始值,频谱被量化。然后计算使用的比特数。如果使用的比特数大于可用比特数,那么全局增益被增加,频谱被再一次量化,并且使用的比特数被重新计算。重复该过程直到使用的比特数小于可用比特数。因为内循环控制编码比特速率,所以内循环通常被称为“速率循环”。
外循环分析由内循环得到的结果并改变比例因子,使得在每个频带的量化噪声尽可能地满足心理声学需求。外循环开始于所有比例因子被设置为零,内循环被调用来量化该频谱。然后计算每个频带的失真(量化噪声),并将其与由心理声学模型计算的每个频带的噪声要求相比较。如果在任何频带的失真大于心理声学模型计算的允许的失真,那么那个频带的比例因子被增加。使用调整的比例因子再一次调用内循环,重复该过程直到(1)所有频带的失真小于心理声学模型计算的掩蔽级别或者(2)所有的比例因子已经被增加。
分析综合技术遭遇几个问题;首先该技术非常复杂,因而不适合复杂度受限的应用。此外,上述的双循环处理不能保证收敛于最佳解决方案;然而,在较高的数据速率,它已经显示了产生极好的结果。
从掩蔽级别估计比例因子通过假设在频带中将比例因子增加一个单元导致在该频带中量化失真减少1.5dB(信噪比的增加)(全局增益和比例因子都以1.5dB的步长量化),比例因子可以直接从“Increased efficiency MPEG-2AAC Encoding”,by Smithers et al,Audio Engineering SocietyConvention Paper,Presented at the 111thConvention,2001September 21-24,New York描述的掩蔽模型中推导。对于该技术,比例因子首先直接从掩蔽模型计算,例如,通过使用下面等式1的表达式,其中si是第i个频带的比例因子,mi是心理声学模型计算的第i个频带的掩蔽级别。
si=-2log10(2)·log10(mi)]]>(等式1)然后该频谱被前一部分描述的内循环(或速率循环)量化,从而消除对高复杂性外循环的需求。虽然该技术比前面描述的分析综合技术简单的多,从而适合复杂度受限的系统,但是从掩蔽模型计算比例因子产生的比例因子,其比2循环分析综合技术产生的比例因子示出了较高的频带到频带的变化。因为该比例因子被差分编码,然后被霍夫曼编码(较大的差意味着较长的霍夫曼码字),比例因子的高变化意味着传输比例因子的比特成本非常高,这降低了掩蔽级别技术的比例因子估计的性能。

发明内容
本发明提供了一种方法,用来降低采用自适应比特分配的感觉音频编码器的总比特成本,其中音频信号的时域表达被分为连续的时间块,每个时间块被分割为频带,为每一个频带分配一个比例因子,其中表示每个块所需的比特数随着比例因子值的增加而增加,并随着频带到频带的比例因子值的变化的增加而增加。确定每一个频带的初始比例因子,并优化每一个频带的比例因子,该优化包括对于一个或多个频带,将比例因子的值增加到大于的初始比例因子值的值,使得所述增加导致的比特成本的增加等于或小于因为一个或多个频带的比例因子的增加所导致的频带到频带的比例因子值的变化的减少而导致的比特成本的减少。
上述计算AAC中比例因子的技术中没有一个明确地考虑到传输比例因子到解码器的成本。特别地,较简单的直接推导技术能使得比例因子传输成本超过整个可用于音频传输的数据速率的10%(在立体声素材的128kbps),因此降低了解码性能。为了解决该问题,本发明采用动态编程优化技术,包括,例如,格子和维特比搜索算法,以减少在AAC(MPEG-2/4高级音频编码)传输比例因子信息的比特成本。本发明最小化了成本函数,在传输比例因子的成本和从初始比例因子计算技术得到的初始值改变该比例因子的成本之间折衷。具体地,为了减小从一个比例因子频带到下一个的比例因子值的变化的范围,具有比其他比例因子更低的值的比例因子可以被改变到更高值。虽然比例因子值的增加引起更多的比特分配到比例因子频带,但是因为频带到频带的差被霍夫曼编码使得码长随着频带频带的变化的增加而增加,所以降低频带到频带的比例因子比例因子的变化程度,节省了总比特量。总比特节省使得更多比特可用于量化器以分配到这样的比例因子频带,这些频带不同于那些其中为了减小频带到频带的变化而增加比例因子值的频带,因此引起了感觉音频质量的改进。
虽然本发明可用于在量化器中采用2个嵌套循环的AAC形式以获得初始比例因子,所述的2个嵌套循环是内迭代循环和外迭代循环(在上述Bosi et al的论文中所描述的),但是当采用其中省略了使用分析综合法计算量化误差和推导比例因子的外循环的AAC形式,并且使用由AAC编码器的感觉模型部分推导的掩蔽阈值估计初始比例因子时,本发明特别有用。该修改的AAC形式在上述的Smithers et al的会议论文中描述。根据本发明的动态编程技术在计算复杂度方面基本上比省略外循环的低,但是产生了具有与采用两个嵌套循环的AAC编码器产生的编码信号基本上相同质量的编码信号。


图1是根据本发明的结合了动态编程比例因子优化的编码处理的功能性示意方框图。
图2是显示将维特比搜索算法应用到本发明优选采用的类型的比特成本等式的简化流程图。
图3是在直接比例因子估计技术产生初始比例因子和根据本发明的比特成本优化产生的被调整比例因子的情况下,示例性比例因子值相对于比例因子频带的图。
图4是示例性波形图,该波图形显示直接比例因子估计技术产生的每个帧的比例因子的比特成本和从根据本发明的比特成本优化产生的调整的比例因子的比特成本。
具体实施例方式
图1显示了根据本发明的结合了动态编程比例因子优化的AAC编码过程的简单的、高级示意图。该图显示了结合从上述模型信息直接比例因子估计的根据本发明的比例因子优化。虽然使用本发明的技术可以改进其他比例因子推导技术,但是本发明尤其适合于使用该直接估计技术。
在图1中,输入音频使用MDCT2转换,接着是预处理4(例如时域噪声整形(TNS),立体声应用中的预测和中间侧面编码(MS))。该输入也能传递给心理声学模型6,其计算掩蔽级别。如上所述,掩蔽模型被直接用来计算每个频带的比例因子(“比例因子计算”8)。虽然该技术推导的初始比例因子十分接近地估计了心理声学需求,但是高的频带到频带的比例因子值的变化导致了高传输成本。为了最小化该成本,根据本发明的比例因子优化10在将初始比例因子应用在速率循环12中的MDCT频谱和无噪声编码(差分霍夫曼编码)14之前处理初始因子。
假设在频带中将比例因子值增加一个单元将在该频带中使用的比特数每个MDCT系数增加1/4比特。虽然由于信号未知的随机特性以及AAC使用的非均匀量化器,这并不总是精确的,但是平均来说这是合理的假设。进一步假设,初始比例因子已经被分析综合或直接掩蔽估计技术确定用于合适的心里声学性能。以下成本公式折衷了比例因子传输的成本和应用更多比特到特殊频带的成本。以下等式2给出成本函数。
C=Σi(αi(s~i-si)4Bi+D(s~i-s~i-1)-D(si-si-1))]]>(等式2)在等式2中,C是改变比例因子的总成本,为了减少比例因子传输的相对成本,C尽可能的设为负。符号si表示例如为了心理声学的考虑由上述的任一技术推导的初始比例因子。此外, 是等式2中新的一组比例因子,Bi是第i个比例因子频带的系数的个数。函数D()是差分编码比例因子的霍夫曼查找。每个频带比例αi是0到1之间的值,其估计要被量化为非零值的MDCT系数的数量。参数αi是比例因子值的函数,是可选择的(如果省略的话,其被等于1的常数值代替)但是如果精确估计的话其能大大地改进算法的性能。在这个等式中,如果该比例因子只是从初始值轻微地修改,则假设αi是常数。为了简便起见,这可以通过计算具有大于某预定阈值的绝对值的频带中的MDCT系数的数量的获得。
对于等式2中的比例因子比特成本,新的比例因子只被允许采取大于或等于初始值的值,因此如果增加的比例因子产生的附加比特比比例因子差分编码成本要低,则该系统不能减少分配到频带的比特,而只能增加比特的数量。函数D(si-si-1)是应用于初始比例因子组的差分编码的比例因子的霍夫曼查找,在等式2中是常数,并在实践中可以被删除。
期望优化每个比例因子频带的比例因子值,以最小化所需比特的总数量。一个合适的优化可以这样实现,即通过增加格子(有时被称为“网格”),使得它的在每个连续的级或级别处的节点(比例因子频带“i”)是该级的可能的状态(比例因子“k”),并且通过使用合适的搜索算法来获得,诸如维特比搜索算法,其是尤其适合于格子的最小成本搜索技术。在本文中,维特比算法确定了通过格子的最小比特路径,因此优化了每个比例因子频带的比例因子。该维特比算法通过从前一个节点(比例因子值)发现最好扩展(最低比特率)来计算到每一级(比例因子频带)的每个节点(比例因子值)的最佳(最便宜的)路径。为每一级(比例因子频带)执行这样的计算直到最后一级。在每一级(比例因子频带),该算法跟踪(1)到每个节点(比例因子值)中的最佳路径,和(2)直到该节点(比例因子值)的累积成本。知道到一个节点中的最佳路径等于知道在每个节点(比例因子)值的最佳在先节点(比例因子)值,因此确定通过该格子的最佳路径并最小化所需比特的总量。对于数字音频的每个连续帧(块)优化每个比例因子频带的比例因子。该维特比搜索算法是众所周知的。例如参见Chapter 15(“Tree and Trellis Encoding”)of Vector Quantization andSignal Compression by Allen Gersho and Robert M.Gray,KluwerAcademic Publishers,Boston,1992,pp.555-586。
更具体地,为了最小化等式2中的成本函数,可以如下采用动态编程优化技术,诸如维特比算法。格子或网格是使用第i级的第k格表示为Sk,i的状态构建,在任何状态k和级i的累积成本表示为Ck,i。网格中每个状态表示了在优化之后设置的新比例因子的可能值。然后使用下面两步计算该算法1)初始化i=0和Ck,i=02)对于所有使得Sk,i>si的k(si是初始比例因子组)找出Ck,i=min(αi(Sk,i-si)4Bi+D(Sk,i-Sl,i-1)+Cl,i-1)∀l]]>(等式3)3)如果i<比例因子频带的数量,i=i+1,返回到步骤2该新的一组比例因子 是通过网格的路径,使得Ck,i在最后一级被最小化。维特比搜索算法是公知的,有效实现技术是广泛可用的。维特比搜索算法的替代算法可以是例如其他网格优化技术。
等式3的维特比搜索算法的应用实例现在结合图2的流程图描述。
图2显示了采用维特比搜索算法以为每个数字音频帧最小化等式3的成本函数的处理的流程图。如块102所示,首先,考虑心理声学的需求估计每个比例因子频带的比例因子。这可以通过例如上面提到的Smithers et al的论文中描述的方法实现。
每个比例因子频带的比例因子表示为阵列,SF[i],其中变量“i”的范围可以是0到N-1,其中N是音频帧中的比例因子频带的数量。第二阵列,Cost[k],表示通过网格的路径的累积成本。矩阵,History[i][k],存储到格子中的一个级(比例因子频带)中的每个节点(比例因子值)的最便宜路径。变量“k”(比例因子值)的范围可以是从0到MAX-1,其中MAX是比例因子值的数量。
级(比例因子频带)计数器“i”在初始化块104中被初始化为0,其除了将比例因子频带“i”初始化为0,还将History[i][k]初始化为0,Cost[k]初始化为0。该级计数器在块116中被增加,直到判决块114确定所有的比例因子频带i被处理。
对于格子中的每一级(比例因子频带)i,确定到该级中的每一节点(比例因子值)k的最便宜路径。这使用两个嵌套的循环,即循环108和循环110来实现。
判决块118中的变量k被块116初始化为0,并被第一嵌套循环108即“k”循环的块128增加,直到由第i级(第i个比例因子频带)的节点表示的所有可能的比例因子值被使用第二嵌套循环110,“m”循环来检查成本。在块130,如果第i个比例因子频带的比例因子值大于或等于该比例因子频带的初始比例因子估计值(块102),那么第二嵌套循环110根据等式3计算从第i-1级(第i-1比例因子频带)到第i级(第i比例因子频带)的累积路径成本。如果比例因子不是大于或等于该比例因子频带的初始比例因子,那么该比例因子频带的累积成本被设置为例如任意大的值以确保通过该格子的路径是不可能的。判决块124的编码m被块122初始化为0,并被第二嵌套循环110的块132增加。变量m(过去的路径的节点数量)的范围可以是0到MAX-1,其中MAX是过去的路径节点的数量。
每个过去的路径节点的组的累积成本被存储在临时的阵列,TempCost[m],其值由下式给出TempCost[m]=Cost[m]+Alpha[i]*(k-SF[i])*B[i]/4+D(k-m),其中Alpha[i]是每个比例因子频带比例用于补偿0量化MDCT系数(参见等式3的αi),B[i]是比例因子频带(参见等式3的Bi),D()是比例因子传输成本的霍夫曼查找表(参见等式3)。在块130计算和存储过去的路径图节点m的所有可能值的临时累积成本。一旦计算了从每个可能的过去路径m转换到现在节点k的累积成本,如判决块124确定,那么就在块126找到最小成本并将其存储在Cost2[k]中。此外,在块126到第i级和第k节点的最便宜的路径被存储矩阵在History[i][k]中。
一旦在第i级的所有现在的节点k已经被处理,如被判决块118确定,那么在块120,阵列Cost2[k]被复制到嵌套的i循环阵列Cost[k]中,并重复处理直到所有的比例因子频带被处理。
一旦所有的频带被处理,如被判决块114确定,阵列Cost[k]包括通过格子的每个路径的累积成本。阵列Cost[k]的最小值由块134确定,并且到该值(L)的索引标识最后比例因子频带(i=N-1)的新的被调整的比例因子值。“i”计数器然后从i=N-1开始被第二(非嵌套的)i循环112的块140重复地递减。矩阵History[i][k]用来随着比例因子频带i从N-1退回到0通过格子追溯以发现沿着最便宜路径的每个在先节点,从而为每个比例因子频带识别最佳比特成本比例因子值,其被提供在输出146。这通过在循环112中的块140中重复递减i并在块142中为每个比例因子频带i确定历史最佳比例因子值k来实现。块144随着i从N-1递减到0为每个向后连续比例因子频带识别新的、被调整的比例因子值。
图3显示了将本发明的比例因子优化应用到通过对单个AAC音频帧的直接估计技术获得的初始比例因子的效果。图3中圆圈代表未调整的比例因子;加号绘出的点代表根据本发明的应用方法调整过的比例因子。根据本发明的该比例因子优化技术大大减小了比例因子的变化。此外,被调整的比例因子总是被增加,不仅仅节省比特总量,而且作为总比特节省的结果降低量化噪声,这不仅仅发生在比例因子增加的频带,还发生在其它频带(从而允许更多的比特分配到其他频带)。比特节省通过图4所示的技术获得,其绘出了使用和不使用根据本发明的优化技术单个音频片断的每个帧的比例因子的传输成本。图4中上面的一条线是不应用本发明的传输成本,而底下的那条线显示了使用本发明的比特传输成本。从图4中,可以看出用于比例因子传输的每帧的比特成本被本发明大大地减少了。
应当理解,本发明的其他变换和修改的实现和其各个方面对于本领域的技术人员来说是清楚的,本发明不是由上述的具体实施例所限定。因此可以预期本发明覆盖任何的和所有的落在公开的和这里要求保护的基本原理的真实精神和范围内的修改、变化或等价物。
本发明和它的各个方面可以作为在数字信号处理器、可编程通用数字计算机和/或专用数字计算机中的执行的软件功能实现。模拟和数字信号流之间的接口可以在合适的硬件和/或作为软件和/或固件的功能执行。
权利要求
1.一种降低采用自适应比特分配的感觉音频编码器的总比特成本的方法,其中音频信号的时域表达被分割为连续的时间块,每个时间块被分割为频带,为每一个所述频带分配比例因子,其中表示每个块所需的比特数随着所述比例因子值的增加而增加,并随着频带到频带的比例因子值的变化的增加而增加,所述方法包括确定每一个所述频带的初始比例因子,以及优化每一个所述频带的所述比例因子,所述优化包括对于一个或多个所述频带将所述比例因子的值增加到大于所述初始比例因子值的值,使得所述增加导致的比特成本的增加等于或小于因为一个或多个所述频带的比例因子的增加所导致的频带到频带的比例因子值的变化的减少而导致的比特成本的降低。
2.如权利要求1所述的方法,其中所述优化步骤包括最小化比特成本函数。
3.如权利要求2所述的方法,其中所述最小化步骤将通过格子的路径的比特成本最小化,其中所述格子的节点是每个连续的比例因子频带的可能的比例因子值。
4.如权利要求3所述的方法,其中所述最小化步骤由维特比搜索算法执行。
5.如权利要求1-4任何一个所述的方法,其中所述感觉音频编码器对相邻频带的比例因子值之间的差进行霍夫曼编码,其中频带到频带的比例因子值的变化的增加增加了所述霍夫曼编码所需的比特数。
6.如权利要求1-5任何一个所述的方法,其中所述为所述每个频带推导初始比例因子的步骤采用至少一个迭代循环。
7.如权利要求6所述的方法,其中所述感觉音频编码器产生掩蔽模型,并且所述推导步骤采用一个迭代循环并基于所述掩蔽模型计算比例因子。
全文摘要
感觉编码器将音频信号划分为连续的时间块,每个时间块被分割为频带,为每一个频带分配一个比例因子。每个块的比特随着比例因子值的增加而增加,并随着频带到频带的比例因子值的变化的增加而增加。确定每一个频带的初始比例因子,并优化每一个频带的比例因子,该优化包括对于一个或多个的频带将比例因子的值增加到大于初始比例因子值的值,使得所述增加导致的比特成本的增加等于或小于因为一个或多个频带的比例因子的增加所导致的频带到频带的比例因子值的变化的减少而导致的比特成本的减少。
文档编号G10L19/02GK1735925SQ200380108172
公开日2006年2月15日 申请日期2003年12月16日 优先权日2003年1月2日
发明者马克·S.·温登 申请人:杜比实验室特许公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1