APP下载

MPEG-4 AAC 音频编码中量化模块的改进✴

2012-07-01刘红甫张聪梁瑞凡

电讯技术 2012年4期
关键词:频带编码器音频

刘红甫,张聪,梁瑞凡

(武汉工业学院数学与计算机学院,武汉430023)

MPEG-4 AAC 音频编码中量化模块的改进✴

刘红甫,张聪,梁瑞凡

(武汉工业学院数学与计算机学院,武汉430023)

MPEG-4 AAC音频编码标准中的量化过程采用了Brandenburg提出的双循环模式,取得了较好的编码质量和压缩比例。但在实际编码时,该方法由于迭代次数过多,会出现收敛速度较慢,甚至死锁的情况。在深入分析MPEG-4 AAC量化算法的基础上,提出了一种快速计算每个比例因子频带的改进算法。该算法通过有效减少外循环计算过程,并确保每个比例因子频带的量化失真低于允许值,从而减少量化模块的计算量。实验结果表明,在不影响音频编码质量的前提下,该算法能有效地提高编码效率。

音频编码;量化模块;比例因子;编码效率

1 引言

音频编码是数字音频广播和互联网等多媒体应用的关键技术之一。作为有损变换域编码的一种,感知音频编码器是目前主流编码器,其利用人耳的听觉感知特性,对编码噪声进行感知整形,以较高的编码压缩比获得感知质量下较少的编码效果[1]。其中MPEG-4 AAC[2]作为一种重要的主流感知音频编码器,提供了非常高效的音频压缩算法,在移动通信、数字广播、互联网等领域得到了广泛应用。

MPEG-4 AAC音频编码性能很大程度上取决于量化模块中有限比特的利用效率和运算复杂度,前者影响音频感知质量,后者决定编码的实时性。MPEG-4 AAC的量化模块采用的是双循环搜索进行失真率控制,其中外循环控制量化失真,内循环控制比特率。该算法已被证实运算量大,并且比特分配非最优判决,尤其在低码率时,造成MPEG-4 AAC编码性能偏低[3]。

MPEG-4 AAC并未把量化模块的优化方案标准化,近年来产生了很多与此相关的新技术。比如文献[4]提出了一种基于子带量化噪声统计模型的量化技术,文献[5]提出了一种动态谱线分组减少量化噪声的技术,这些技术在一定程度上优化了量化模块的计算复杂度。

在上述研究的基础上,通过对量化模块原理的研究,发现在量化模块迭代循环过程中,外层循环通过不断地调整比例因子频带的比例因子,使最终计算的量化失真低于允许值。在外层循环开始计算之前,每个频带的比例因子都初始化为0,这个值与最终的比例因子值相差比较大,这就造成了循环次数过多。因此,找到一个与最终值相差比较接近的值进行初始化,这样就可以减少循环迭代过程。本文通过对外层循环和量化失真计算公式的研究,提出了一种能减少迭代循环过程的算法。

图1 外层循环流程图Fig.1 The flow chart of outer circulation

在MPEG-4 AAC音频编码过程中,音频数据经过MDCT变换实现由时域到频域的映射,得到音频的频谱;同时,音频数据也经过心理声学模块计算得到音频数据的掩蔽阈值,然后这些数据被传送至量化模块进行迭代计算。

在进入双层迭代循环之前,所有变量均需重置。首先计算全局增益的初始值,这样全部量化后的MDCT频谱数据能够经无噪声编码加入到比特流中,计算公式如下所示:

其中,max-mdct-line是当前数据帧中谱系数值最大的一个;ceiling()是正无穷方向舍入最近整数的函数;MAX-QUANT是可以编码如比特流的最大量化值,定义为8 191。在迭代过程中,全局公共缩放因子common-scalfac不能小于初始值start-commonscalefac。然后,必须将所有比例因子全部置零。

音频频谱的量化公式如下所示:

2 MPEG-4 AAC量化模块的计算

MPEG-4 AAC的量化模块整体上依然沿用了Brandenburg与1987年在OCF中提出的双循环结构[6]。内层循环控制编码时所需的比特数,当比特数超出了分配的限量,就统一地加大所有量化阶(即加大统一缩放因子),务求降低比特数,得到所需的最小量化阶;而外层循环控制量化误差,它对经过循环量化后的频谱进行量化误差检测,当某一个子带的量化误差能量超过掩蔽门限,就减少相应的量化阶(即加大子带缩放因子)且步长为1,然后再进入内循环。

MPEG-4 AAC音频编码的量化模块外层循环流程图如图1所示。

MAGIC-NUMBER定义为0.405 4,SF-OFFSET定义为100,mdct-line是MDCT计算出来的某个频谱值。

为了在迭代循环里使用,比例因子“sf-decoder”分成两个变量:除非输入的频谱数据全部为零,否则都要经过量化双循环结构的处理。外层迭代循环为量化噪声控制循环,负责控制在内层迭代循环中由于对频谱数据进行量化而引起的量化噪声,如下式所示:

在进行量化之前,将各谱线与其所属的比例因子频带的比例因子相乘,完成所谓的噪声染色(噪声谱的不均匀化),即噪声能量在不同频率段上的重新分配。如图1所示,外层循环要先调用内层循环,内层循环包含三大元素,即经由相应比例因子频带的比例因子缩放的谱系数mdct-scaled(i),全局公共缩放因子common-scalefac以及当前可用于编码的比特数。

首先,计算MDCT谱系数的量化值:

然后,计算在当前条件下实际编码所需的比特数,如果按照ISO标准规定,取全局公共缩放因子的初始值为start-common-scalefac,则在第一轮循环之后,所需比特数通常要大于可用的比特数。因此,在第一次循环后,我们往往需要对全局公共缩放因子common-scalefac作出相应的调整,即以某一量化阶为基础逐渐增大因子的取值,重新计算所需的比特数,直到满足条件为止,便跳出内层比特率控制循环。

接下来就要计算各比例因子频带的量化噪声,如下式所示:

如若某一比例因子频带的量化噪声超出该子带的掩蔽阈值xmin(sb),便对该比例因子加1调整,对应子带的所有谱系数须根据上式重新计算。

通常情况下,若所有比例因子频带的量化噪声都不超过上限值(即掩蔽阈值),便可跳出外循环。然而并非所有场合下都能达到这一条件,这时有必要引入如下的外循环异常终止条件,即所有的比例因子频带都已经被放大过,或相邻的两个比例因子频带的比例因子之差超过了60。倘若是由于上述两个原因使得循环被终止,则需恢复先前循环过程中存储的比例因子,以得到正确的输出。

3 MPEG-4 AAC量化模块的改进

从理论上说,标准算法中针对于量化模块环节所提出的内、外嵌套的循环结构是一种近似最优的算法结构,通过内循环和外循环反复地交替工作,使得编码器在比特数使用和噪声控制方面取得最佳平衡。但是,这样的最佳平衡是以较高的运算复杂度和较多的循环迭代次数为代价的。在实际应用中,我们自然不希望编码器耗费太多的功耗,浪费太多的运算时间。幸运的是,AAC标准仅仅给出了一个编、解码的参考算法标准,设计者完全可以根据自己的需要,在不改变其算法基本框架的基础上做出一定程度的优化和改进工作,而且可以肯定地说,这方面工作的上升空间很大。目前,世界上已有不少机构和学者对其提出了自己的优化、改进算法和结构,并达到了预期的结果。

通过前一节的分析我们不难发现:在外循环过程中,主要是用公式(6)来计算量化后的量化噪声,并要求所得的值不能超过该子带的掩蔽阈值xmin(sb),否则要进行循环,直到满足要求为止。通过研究该计算公式以及它与整个量化模块的关系,寻求一个能使计算得到的量化噪声低于该子带的掩蔽阈值xmin(sb)的方法,减少该计算过程。

AAC标准中对于谱线的非均匀量化公式为

其中,scalefactor即为各比例因子频带的比例因子,而common-scalefac则为所有尺度因子带所共享的公共缩放因子。不难看出,量化步长的大小是由各比例因子频带的比例因子和所有比例因子频带的公共缩放因子所决定。为了方便化简,我们需要对公式进行取整操作,即设取整误差为e,同时令q= 0.405 4+e,于是可将量化公式化简为

由量化模块的外层循环流程图(如图1)可知,首先进行的是内层循环,内层循环结束后我们可以得到满足要求所有比例因子频带的公共缩放因子common-scalefac值,由公式(16)可知,在commonscalefac一定的前提下,等号成立时scalefactor(sb)的取值是最大的,即该比例因子频带的比例因子最大,使得最终各个比例因子频带的压缩比达到最大值。因此,外层循环可以利用公式(16)和(17)直接求出各比例因子频带的最佳比例因子。计算公式中的变量xmin(sb)在进入循环过程前都已经得到,x-quant(i)是内层循环计算得到的最终结果,这些使得计算scalefactor的计算更加简单和准确。

MPEG-4 AAC量化模块的改进流程图如图2所示。

图2 改进的外层循环流程图Fig.2 The improved flow chartof outer circulation

在外层循环过程中,通过内层循环传出的量化频谱,以及在迭代循环前所求得的允许的最小掩蔽阈值能量来计算每个比例因子频带的比例因子。这时候所求得的各频带的比例因子其实已经是最佳的数值,从而减少了外层循环的迭代次数,节省了编码时间。

4 实验结果

实验采用开源FAAC编码器,该编码器是MPEG -4 AAC参考代码的改进版本且已广泛应用于互联网的音频。实验是在低复杂度框架下,对48 kHz、16 bit采样的MPEG双声道音频测试序列进行测试。用FAAC编码器和改进的FAAC编码器对同一组音频数据进行编码处理,计算编码所需要的时间,实验结果如表1所示。

表1 音频测试序列编码时间Table 1 The encoding time of audio test sequence

由表1的测试结果可以看出,改进后的编码器相对于原编码器有较大的提高,节省了编码时间。

另一个需要考虑的是此方法的改进对音频的音质是否造成影响。因此,实验还对原编码器和改进后的编码器生成的音频文件进行解码,通过Adobe Audition 3.0软件对两种编码器生成的文件波形、频谱、相位、相位谱等进行对比。以测试序列Es01为例,FAAC编码器解码后音频文件的频谱图如图3所示。

图3 FAAC解码的音频频谱图Fig.3 The audio spectrum diagram of decoding FAAC

改进FAAC编码器解码后音频文件的频谱图如图4所示。

图4 改进FAAC解码的音频频谱图Fig.4 The improved audio spectrum diagram of decoding FAAC

由图3和图4可知,改进FAAC编码器与原FAAC编码器对音频文件编码效果基本相同,并没有影响音频文件的音质,达到了算法改进的目标。因此,该算法的改进是可行的,能有效地提高编码效率。

5 结论

通过对MPEG-4 AAC音频编码器量化模块的研究,实现了一种减少量化时间的算法。通过实验证明了该算法的可行性,该算法是在不影响音频质量的前提下提出的,与文献[4]和文献[5]的思路和方法有很大的不同,该算法对实时音频编码具有重要的研究意义,能够提高编码效率。该算法的提出只是针对外层循环的计算过程,而内层循环的计算没做任何改进,因此,如何有效地改进内层循环将是下一步研究的内容。

[1]Painter T.Perceptual coding of digtalaudio[J].Proceedingsof the IEEE,2000,88(4):451-513.

[2]ISO/IEC IS-14496(Part 3,Audio),Information technology -coding of audio-visual objects[S].

[3]Aggarwal A.Near-optimal selection of encoding parameters for audio coding[C]//Proceedings of2001 International Conference on Acoustics,Speech,and Signal Precessing.Salt Lake City,UT,USA:IEEE,2001:3269-3272.

[4]Olivier Derrien.A new quantization optimization algorithm for the MPEG advanced audio coder using a statistical subbandmodelof the quantizationg noise[J].IEEETransactions on Audio,Speech,Langage Processing,2006,14(4):1328-1339.

[5]Ali M T,Saleem M.Improved audio quality at 48 kbits/s for MPEG-4 AAC[C]//Proceedings of 2008 International Conference on Electrical Engineering.Hongkong:IEEE,2008:1-8.

[6]Brandenburg K.OCF-A new coding algorithm for high quality sound signals[C]//Proceedings of1987 IEEE International Conference on Acoustics,Speech,and Signal Processing.Dallas,TX:IEEE,1987:141-144.

LIU Hong-fu was born in Kaifeng,Henan Province,in 1983. He received the M.S.degree in 2009.He is now a graduate student.His research concerns audio decoding technology.

Email:hb-wh-zc@163.com

张聪(1968—),男,上海人,博士,教授、硕士生导师,主要研究方向为音频编解码技术与通信;

ZHANG Cong was born in Shanghai,in 1968.He is now a professorwith the Ph.D.degree and also the instructor of graduate students.His research concerns audio decoding technology and communication.

梁瑞凡(1988—),男,湖北汉川人,硕士研究生,主要研究方向为音频编解码技术。

LIANG Rui-fan was born in Hanchuan,Hubei Province,in 1988.He is now a graduate student.His research concerns audio decoding technology.

Improvement of Quantization M odule in MPEG-4 AAC Audio Encoding

LIU Hong-fu,ZHANGCong,LIANGRui-fan
(Mathematics and Computer College,Wuhan Polytechnic University,Wuhan 430023,China)

The quantization process of MPEG-4 AAC audio coding standard uses double circulation patterns proposed by Brandenburg and a better coding quality and compression ratio can be obtained.But in the process of actual coding,because of toomany iteration times of themethod,there will be slower convergence speed,and even deadlock situations.Based on the analysis of MPEG-4 AAC quantization algorithm,this paper proposes a fast improved algorithm which can calculate frequency band ofeach scale factor.By reducing the process of the external circulation effectively and ensuring the quantization distortion of each scale factor band below the allowable value,the algorithm reduces the calculation of the quantizationmodule.The experiment results show that the algorithm can improve the coding efficiency effectively without affecting the audio coding quality.

audio encoding;quantizationmodule;scale factor;coding efficiency

The National Natural Science Fundation of China(No.60832002);Key Project of Educational Commission of Hubei Province of China(No.20101704);2009 Graduate Innovation Fund ofWuhan Polytechnic University(09cx026)

TN911

A

10.3969/j.issn.1001-893x.2012.04.022

刘红甫(1983—),男,河南开封人,2009年获学士学位,现为硕士研究生,主要研究方向为音频编解码技术;

1001-893X(2012)04-0534-05

2011-11-15;

2012-02-27

国家自然基金重点项目(60832002);湖北省教育厅科研重点项目(D20101704);武汉工业学院2009年研究生创新基金项目(09cx026)

猜你喜欢

频带编码器音频
Wi-Fi网络中5G和2.4G是什么?有何区别?
单音及部分频带干扰下DSSS系统性能分析
必须了解的音频基础知识 家庭影院入门攻略:音频认证与推荐标准篇
基于Daubechies(dbN)的飞行器音频特征提取
基于FPGA的同步机轴角编码器
双频带隔板极化器
音频分析仪中低失真音频信号的发生方法
基于PRBS检测的8B/IOB编码器设计
Pro Tools音频剪辑及修正
JESD204B接口协议中的8B10B编码器设计