版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、1. 综述1.1 背景早期的声音是用模拟信号的方式进行记录, 并存储在磁盘和唱片上, 这种方 式能够准确地记录原声源的特性,并重放,但此方式不利于长期存储和复制。随着数字化音频编码技术的产生, 可以将原始模拟信号进行数字化离散处理, 再保存,在保证声音的音质同时,减小存储空间。发展过程中,越来越多的标准 被制定出来。如(MP3)、AAC Dolby AC-3 WMA等,其中MPEG组织制定的一 系列音频编码标准占据主要地位,成为商业领域最广泛的音频编码技术, AAC是 具有代表性的编码技术。MPEG先进音频编码技术(Advaneed Audio Coding,简称 AAC)是在 MP3 (MP
2、EG -1 Layer 3基础上发展而来,出现于 1997年,基于 MPEG-2的音频编 码技术。由Fraunhofer IIS杜比实验室、AT&T Sony (新力)等公司共同开发。 具有压缩比高、 重建音质好、 编码和解码过程高度模块化、 以及声道配置灵活等 特点。目前已被广泛应用于多媒体、信息通讯、网络广播电视等领域。1.2 数字音频编码概述音频编码压缩算法是为了保证在重构的音频信号不失真的前提下, 以尽量少 的位数来描述原始音频信号, 以便于有限地存储或传输高音质的音频信号。 根据 压缩编码原理的不同, 可将音频编码方式分为四种, 分别是波形编码、 参数编码、 混合编码和感知编
3、码。 对于不同的音频编码方式, 其运算复杂度、 重构信号的质 量、压缩率、 编码和解码的延迟等都会有很大的不同, 因此它们的应用场合也不 会相同。其中,感知编码主要是利用人耳听觉系统的心理声学特征, 即人耳对音频信 号的时间和频率的分辨能力是有限的, 凡是人耳不能感知的成分不进行编码和传 输,而人耳能够感知的部分运用心理声学原理进行压缩编码, 并且在量化噪声低 于掩蔽阈值的前提下允许有较大的量化失真。 感知编码一方面运用信号的统计特 性移除了信号之间的冗余度, 另一方面利用了心理声学中的掩蔽特性去掉了人耳 系统无法感知的部分, 从而使信号得到进一步的压缩。 这种编码方式尽管损失了 一些音频成分
4、,但它并没有影响音频信号的质量, 因此它能够达到较高的压缩比。AAC 音频编码属于感知编码, 它是利用人耳听觉系统的掩蔽特性, 编码过程 中去除了人耳不能感知的那部分音频信号, 量化时允许有较大的量化失真, 并将 其控制在掩蔽阈值之下,从而提高音频信号的压缩比。2. AAC编码技术2.1 AAC概述MPEG-2和MPEG-4中均提供了 AAC编码,MPEG-4 AAC在 MPEG-2基础上添 力卩了 PS和SBR技术。AAC是新一代的音频有损压缩技术,它通过一些附加的编码技术(比如PS,SBR 等),衍生出了 LC-AAC,HE-AAC,HE-AAC三种主要的编码,LC-AAC就是比较传统 的
5、AAC,相对而言,主要用于中高码率(>=80Kbps,HE-AAC相当于AAC+SBR主要 用于中低码(<=80Kbps)而新近推出的HE-AACV2相当于AAC+SBR+P主要用于低 码率(v=48Kbp9,事实上大部分编码器设成<=48Kbps自动启用PS技术,而>48Kbps 就不加PS就相当于普通的HE-AAC2.2 AAC规格AAC共有9种规格,以适应不同的场合的需要:表1 AAC规贝U文件规格MPEG-2 AAC LC低复杂度规格(Low Complexity)MPEG-2 AAC Ma in主规格MPEG-2 AAC SSR可变米样率规格(Scaleabl
6、e Sample RateMPEG-4 AAC LC低复杂度规格(Low Complexity)MPEG-4 AAC Ma in主规格MPEG-4 AAC SSR可变米样率规格(Scaleable Sample RateMPEG-4 AAC LTP长时期预测规格(Long Term Predicitior)MPEG-4 AAC LD低延迟规格(Low Delay)MPEG-4 AAC HE咼效率规格(High Efficiency)其中:MPEG-2 AAC LC比较简单,无增益控制,但提高了编码效率,在中等码率的编码效率以及音质方面,都能找到平衡点。MPEG-4 AAC LC常用于MP4文件
7、中的音频编码MPEG-4 AAC Main包含了除增益控制之外的全部功能,其音质最好MPEG-4 AAC HE适合用于低码率编码目前使用最多的是LC和 HE适合低码率)。流行的Nero AAC编码程序只支持LC,HE, HEv2这三种规格,编码后的AAC音频,规格显示都是LC HE其实就是AAC (LC +SBR技术,HEv2就是 AAC ( LC) +SBR+P技术。图1. HEv1与HEv2比较HE: “High Efficiency (高效性)。HE-AAC v1(又称 AACPIusVl SBR)用容器 的方法实现了 AAC( LO +SBF技 术。SBR其实代表的是 Spectral
8、 Ba nd Replication® 段复制)。音乐的主要频谱集中在低频段,高频段幅度很小,但决定了音质。如果 对整个频段编码,若保护高频就会造成低频段编码过细以致文件巨大;若是保存低频的主要成分而失去高频成分就会丧失音质。SBRm频谱切割开来,低频单独 编码保存主要成分,高频单独放大编码保存音质,解决了此矛盾。HEv2用容器的方法包含了 HE-AAC v和PS技术。PS指“parametric stereo”(参数立体声)。原来的立体声文件文件大小是一个声道的两倍。但是两个声道 的声音存在某种相似性,根据香农信息熵编码定理,相关性应该被去掉才能减小 文件大小。所以PS技术存储了一
9、个声道的全部信息,然后,花很少的字节用参 数描述另一个声道和它不同的地方2.3 AAC特点(1) AAC是一种高压缩比的音频压缩算法,但它的压缩比要远超过较老的 音频压缩算法,如AC-3 MP3等。并且其质量可以同未压缩的 CD音质相媲美。(2) 同其他类似的音频编码算法一样,AAC也是采用了变换编码算法,但 AAC使用了分辨率更高的滤波器组,因此它可以达到更高的压缩比。(3) AAC使用了临时噪声重整、后向自适应线性预测、联合立体声技术和 量化哈夫曼编码等技术,这些技术的使用都使压缩比得到进一步的提高。(4) AAC支持更多种采样率和比特率、支持1个到48个音轨、支持多达15 个低频音轨、具
10、有多种语言的兼容能力、还有多达15个内嵌数据流。(5) AAC支持更宽的声音频率范围,最高可达到 96kHz,最低可达8KHz远宽于MP3的16KHz-48kHz的范围。(6) 不同于MP3及WMA, AAC几乎不损失声音频率中的甚高、甚低频率 成分,并且比 WMA在频谱结构上更接近于原始音频,因而声音的保真度更好。(7) AAC采用优化的算法达到了更高的解码效率,解码时只需较少的处理 能力。3. AAC编码器基本原理AAC编码具有多种规格以适用于不同应用场合, 相对于其他类型而言,类型 的运算量较小,算法复杂度较低并具有较高的编码质量已被广泛的应用于实时编 码研究中,因而将以其类型为原型对其
11、编码框架进行分析。下图则为MPEG-4 AAC L编码器的基本框图:输出AAC码率失H-控制整化器尤噪声编码图2 MPEG-4 AAC LC编码器的基本框图3.1 心理声学模型心理声学模型是利用心理声学原理对输入的音频信号进行频谱分析, 计算出 掩蔽阈值、 信掩比和感知熵等一些心理声学参数, 以便于供编码器的其他模块使 用,是AAC编码器的核心部分。心理声学模型输入 1024 点的 PCM 信号,其处理块的长度为 2048 点和 256 点,时域上与上一块有 50的重叠。心理声学模型的计算结果用于滤波器组和量化模块。根据当前FFT频谱与前一帧FFT频谱之间的差异来决定滤波器组模块中 MDCT模
12、块使用什么类型的窗 函数。如果差别超过限度,表明音频信号处于非平稳状态,则采用短窗;反之则 采用长窗。 心理声学模型同时还向量化模块提供信息, 以决定量化模块如何来量 化音频信号的频域样值。量化的形式要求和人耳的听觉特性最大限度地相适应。实验证明, 人耳可分成 24 个频带。当信号中有一个较强的单音, 该单音会 掩蔽其所在的临界频带中的弱信号, 使之不为人耳所察觉, 这就是我们所利用的 “掩蔽效应”。掩蔽效应允许对临界频带中的弱信号进行相当粗糙的量化,而不 会引入听觉失真。 AAC 采用比例因子段来近似临界频带。 心理声学模型分析 FFT 频谱,判断当前的临界频带中是否有主单音的存在。 当主单
13、音存在时, 计算相应 的掩蔽阈值。根据该掩蔽阈值可以得出可分配给量化因子频带的比特数的上限。由于对于音频信号中的谐音分量和类噪声的非谐音分量来说, 其掩蔽能力是 不同的,因此声学模型首先要区分出这两种不同类型的信号分量。 AAC 采用的心 理声学模型 2 不直接区分出谐音分量和非谐音分量,而是把频谱数据变成“分 区”区域,分区区域有着与临界频带空间差不多的线性关系。 对于1个FFT频谱 线或 1/3 临界频段中的较宽者提供一种近似的解决方案。 在低频,一个 FFT 的单 谱线将构成一个计算分区。 在高频, 多条频线将被合并成一个计算分区。 并且把 频域的幅度值转化为能量值来表示。 按照标准计算
14、并通过测量频谱随时间的不可 预测性确定频谱线是否为谐音成份, 即把每个分区频谱线的不可预测性作为每个 计算分区的谐音索引值, 这个索引值就是一个判断标准, 来判断这个分量是更接 近于谐音或者噪声。 谐音成分的可预测性好, 因此它的谐音索引值相对要高一些。 由于这一过程的计算需要较多的数据, 因此它比模型 1 对谐音成分和非谐音成分 的分辨要好一些。 由于一个给定信号的掩蔽能力可以跨越它周围的整个临界带宽, 为了更有效地利用这个掩蔽能力,模型 2 使用扩展函数经过扩展卷积来决定噪 声掩蔽阈值。然后根据分区的能量和不可预测性计算出每个分区的谐音索引值, 再经过内插就可以得到每个分区的信掩比(SMR
15、)。任何特定分区掩蔽阈值等于 分区能量乘以衰减系数。由于在 AAC 中考虑了预测回声的控制问题,因此基于 现行计算方法得出的掩蔽阈值, 要通过与前两个计算分区的掩蔽阈值以及绝对掩 蔽阈值比较,得出较大的阈值,整个阈值才是该分区的实际掩蔽阈值。心理声学模型具体涉及以下算法过程:( 1)计算扩展函数 由于各临界频带内的掩蔽效应并不仅局限于一个频带内, 也会在频带之间产 生一种可预先估定的掩蔽效应,称为扩展掩蔽效应,计算函数如下:?>? ?=?3?.0?( ?- ?)? ?=?1?.5?(?-? ?)? I 、 # ?=?8 ? min ?(?( ?-?0?.5) 2 - 2(?-?0?.5)
16、,0)?=?15.811389 + 7.5( ?+?0?.474) - 17.5(1.0 + (?+?0?.474)2)0.5? ?<?-?1?0?0 ?( ?,)?=? 0? ?(?,)?=?1?0?(?+?)/?1?0? 、# ( 2)计算输入信号的复倒谱将新输入的 1024点采样信号与前一帧合并,组成 2048点的处理块 ?(?)?,给这个处理块加Hann窗得到???2?= ?(0.5- 0.5cos?+ 0.5)/1024)对?)?故FFT变换,得到处理块的复倒谱? ?,分别代表幅度部分和 相位部分。再由前两个处理块的结果计算出本处理块的可预测部分: ?_?=?2?.0?(?-
17、1)- ?(?- 2)?_?=?2?.0?(?- 1)- ?(?-?2)式中 t-1 表示前一块数据。( 3)计算不可预测性 根据预测值及本帧的频谱值,可以得到不可预测的度量:(?) = (?(?) ?cos(?(?) - ?_?(?) ?cos(?_?(?)?)?2+ (?(?)?sin(?(?) - ?_?(?)?sin(?_?(?)?)?2)0.5)/?(?) + ?(?_?(?)此公式用于短块的计算, 对长块,最低频 6 个系数使用该公式, 高频部分全 取 0.40。然后对每一个掩蔽域值区域计算分区能量e(b)以及不可预测的能量部分c(b),号,其中b是区域的序号,不同的采样率对应不同
18、的区域划分,在低频时,一条频线 就组成一个区域,而在高频时,多条频线才组成一个区域,标准中提供了各种采 样率的区域划分参数。对每一个分区,e(b)和c(b)的计算公式如下:max ?(?= 刀 ?(?)?=min ?max ?(?= V ?(?)? ?(?)?=min ?(4) 用扩展函数卷积分区能量和不可预测度相邻区域之间相互影响,修正得到ecb(b)和 ct(t):max ? =V?) ? ?-(??)?*?(?)?=0max _? =V ? ? ?(?)?=0不可预测度ct(b)是经过信号能量加权的,需要将其重新归一化得到cb(b)? = ?/?(?)由于扩展函数的非归一化属性,ecb(
19、b)也需要归一化,得到en (b):? = ?/?少?莎?(?)、/,、丿(5) 计算音调索引tb(b)及信噪比SNR(b)? = -0.299 - 0.43 ln(?)? = ? ? ? + (1 - ?) ? ? / V /A 1 V / /式中TMN(b)为噪声掩蔽音调值,固定为 6dB。NMT(b)为音调掩蔽噪声值, 固定为18 dB。(6) 计算实际的能量阈值:? = ? 10-?(?)/10该值将用于后面的联合立体声编码。为了进行前回声控制,并考虑到安静阈值qsthr(b), nb(b)值作如下的修正:? = max (孑???? (?, ?_?>?>? ?)式中nb_
20、l(b)表示上一帧对应的nb值,rpelev在短块时值为1,长块时值为2。(7) 计算感知熵及决定编码采用块模型:max ?PE= V - ?_?T?- ?_? ?ig H? + 1?=0 '(' ?如果PE大于给定值则采用短窗,反之则采用长窗。如果上一帧使用长块而 本帧判断为短块,就采用长起始窗,反之使用短起始窗。(8) 计算信掩比SMR(n)定义swb为比例因子段的索引,swb_offset_long/short_window 为比例因子 的频谱的偏移量。对每个比例因子段:?= ? ?= ? ?/?力?(???_? = ?_?/?_?_?(?1w_low(n)和w_high
21、(n)值可以从标准提供的表中查出3.2 滤波器组AAC的分析滤波器组使用改进的离散余弦变换(MDCT),把时间域上的输入音 频数据变换成频域信息。滤波器组把输入的时间样本作为块,并乘以窗函数,然后执行MDCT。输入信号的每个块都由前一块和当前块的50%叠加组成。变换块的长度为 2048或256个样本。由于窗函数对滤波器的频率响应有很大影响,滤波器组设计成允许 改变窗形状以适应信号的改变。根据输入信号的特征将滤波器的分辨率设为每块2048或256个样本,长块的频域分辨率高、编码效率高,而过长的窗函数又会使时域分辨率下降,产生严重的“预回声”。“预回声”的产生原因是由于存在冲击信号或类似的时域事件
22、。 有效地抑制“预回声”的措施是使用短窗切换的标准根据心理声学模型的计算结 果确定。为了平滑过渡,长短块之间的过渡不是突变的,中间引入了过渡窗。女口 下图。由于余弦变换在边界处存在固有的不连续性,因此在块边界处可能产生很大 的噪声。相邻块的米样值在时间上重叠, 有利于消除这种噪声,这种技术称为时 域混叠抵消(TDAQ技术。MDCT和IMDCT都采用TDAC技术,在分析过程中引 进混叠失真,可以在合成过程中抵消。下图则是TDAC技术在MDCT和IMDCT中 应用说明:量化、编码IMDCT图4 TDAC示意图MDCT表达式为?-1 2? 1?(?=刀?(?)?(?)。吃(??+ ?)(?+ ) ?
23、O?< ?/2?=0 解码器中使用的IMDCT表达式为?/2-12 2?1?(?) 刀?(?)?(?)c0s (?+ ?)(?+) ?O?< ???=0 2其中w(n)为窗函数,AAC提供了两种窗函数:正弦窗和凯塞一贝赛尔窗(KBD? / 2+1窗)。no =,是一个固定时间偏移量。正弦窗使滤波器组能较好地分离出相邻的频谱分量,适合于具有密集谐波分量(频谱间隔 v140Hz)的信号。对于频谱成分间隔较宽(220HZ时采用KBD窗。AAC系统允许正弦窗和 KBD窗之间的连续无缝切换3.3 瞬时噪声整形(TNS瞬态噪声整形(TNS Temporal Noise Shaping模块是可选
24、模块,它用来对量化 噪声进行整形,消除预回声现象。在音频编码过程中,当音频信号的频谱变化很 快时,就会造成量化误差在整个块之中扩散,出现预回声现象。而时域噪声整形 就是一种抑制预回声现象特别有效的技术, 它是控制量化噪声的时域波形的一种方法。在音频信号处理中,人们经常用时域预测的方法来改变噪声的频域分布, 使噪声能量集中在人耳不敏感的部分。TNS采用时域一一频域的对偶性的结论, 对于时域较平稳的信号,频域上就变化较剧烈,反之时域上变化剧烈的信号,频 谱上就较平稳。瞬态噪声整形技术的具体方法是,在每个变换窗内将一个基于滤波器组的量 化器的量化噪声置于实际信号以下, 平滑使用该工具的信号的瞬态包络
25、, 控制量 化噪声的瞬态精细结构,使瞬态噪声合理被掩蔽。模块中采用了 Levinson-Durbin 算法进行线性预测计算,在子带的编码增益超过标准规定的阈值时,对这个子带进行TNS处理,最后,对反射系数进行量化,截取一部分转化为现行预测编码器 的系数,用这个编码器对频谱值进行编码,输出TNS信息和编码结果。3.4 感知噪声替代模块(Perceptual Noise Substitution)感知噪声替代模块也一个可选模块,其目的是为了能够在低码率情况下进一 步提高一的编码效率。其原理是当一种噪声信号类似于另一种噪声信号且该噪声 信号对于整个音频信号的主观感知影响很小时, 在编码过程中将不对该
26、噪声信号 的实际频谱成分进行处理而只是简单的作个标记说明这一频率范围内存在一个 类似某种噪声的信号并在该频段内的总功率上增加一些附加信息进行说明,然后在解码过程中根据附加信息中标记的内容把一个随机生成的噪声插入相应的频 谱区域。通过这种方式可以有效地减少对噪声信号的分析和处理过程,提高编码效率。3.5 立体声编码(Stereo Coding)(1) M/S立体声M/S联合编码应用于按对匹配的音频声道,例如左声道与右声道、左环绕声 道与右环绕声道。在声道对中,前面的声道称为“左”,后面的声道称为“右”, 左右声道具有一定的相关性,M/S联合立体声编码可以消除这些相关性。 这个编码步骤不会带来附加
27、的噪音,属于无噪编码过程。M/S方法使用M, S声道来代替原来的L, R声道。对于每一个编码带,计算M/S信号:L+ R2不是每个频带都需要使用 M/S联合立体声编码,只有左、右声道相关性较 强的子带才使用M/S,分别计算L/R以及M/S量化编码后所需的比特数,选取所 需比特数小的方式。(2)强度立体声使用强度立体声(IS)编码是为了充分消除匹配声道高频区域之间的相关性。 它利用了人耳听觉系统双耳的定位对左右声道在 4kHz以上频率的强度差比较敏 感,而对相位差不敏感的特点 ,对某个频带以上的各子带使用左声道表示两个声 道的联合强度,右声道谱线置为 0,不再参与量化和编码。具体过程是,在每一
28、个比例因子子带内,求出该子带的强度位置信息,再计算出频谱系数强度信号。 最后将左声道的频谱系数用强度信号取代,右声道的相应信号则全部置为 0,这 样得到的信号送入后面的量化和编码模块。3.6 量化和编码本模块的量化不同于模拟信号的量化, 其输入信号是时频变换的输出, 已经 是数字量。 之前模块处理只是为量化做预处理, 真正的压缩是在量化模块中进行 的,再对这些信息进行量化是为了压缩信息量, 以便用更小的幅度来表示原来较 大的取值范围, 之后再用较小范围内的值进行编码, 从而减少所用比特数, 达到 规定输出码率的要求。频域信号经过处理后, 量化模块按心理声学模块输出的掩蔽阈值把限定的比 特数分配
29、给输入频谱, 要尽量使量化所产生的量化噪声低于掩蔽域值, 达到不可 闻的目的。 量化时需计算实际编码所用的比特数, 量化和编码是结合在一起进行 的。 AAC 在量化前先将 1024 条谱线分成数 10 个比例因子频带, 然后对每个子 频带采用 4/3 次方非线性量化、起到幅度压扩作用,提高小信号时的信噪比和 压缩信号的动态范围,有利于哈夫曼编码。AAC中采用迭代循环确定每个比例因 子波段内的精度策略和比例因子。 再利用比例因子工具和非均匀量化器先后对频 域信号进行噪声整形和量化。 最后,利用无噪编码工具对量化后的信号进行无噪 声编码,最后形成 AAC 码流。迭代循环模块采用了三层结构:最上层称
30、为循环 控制模块,它调用外层循环模块,外层循环模块又调用内层循环模块。内部迭代循环量化计算每个量化因子带的量化噪声保存每个量化因子带的量化因子计算比特数改变步长步长=0?N调整全局比例因子YNY重建量化因子在允许范围内放大 每个量化因子量化因子均被放大?均在最小限以下?有超出失真范围?返回j图5量化流程图图6外部迭代循环流程图图7内部迭代循环流程图(1) 量化量化开始之前需要设置很多的变量,其中有一个是全局比例因子CommonScalefactor又称Global Gain,因为所有子带的比例因子通常都大于100,因此每个比例因子至少需要用8比特来保存,造成浪费,所以 AAC设置了这个全局比
31、例因子。每个子带的比例因子加上这个全局比例因子才是该子带的真实量化因子, 这样就可以减少比例因子耗用的比特数。 在每次量化开始之前都需要设置这个全 局比例因子,这个因子是量化循环中的重要变量,如果选取的值不合适,容易造成循环次数的增加。AAC采用了一种很保守的方法,因为AAC规定量化值必须小于8191。所以如果全频带最大的 MDCT系数被量化为8191,则所有的谱线 值都符合要求。因此,全局比例因子的初始值如下公式所示,在整个量化过程中 全局比例因子都不能小于这个值。16max _?_0?com mon scalefac = ? log2 (=)38191得到全局比例因子后,再将各子带比例因子
32、置零。计算出该帧的比特数后, 进入量化循环内层循环是比特控制循环,调整量化步长以使输出的位数小于可用的位数。 外层循环是失真控制循环,计算每个比例因子段的失真,如果大于允许的失真, 则放大比例因子段并重新调用内循环, 控制在内层循环中量化频域行而产生的量 化噪声。( 2) 编码在AAC音频编码器中,输入到无噪声编码模块的是一组 1024点量化的频谱 系数。由于无噪声编码是在量化模块的内层循环中完成的, 因此它属于内层循环 的一部分。内层循环是在量化后编码所需的比特数不超过分配比特数时进行收敛, 并退出循环程序。无噪声编码过程分为以下五个环节:频谱限幅、分区、分组和 交叉、比例因子、霍夫曼编码。
33、1 ) 频谱限幅首先对频谱进行一种无噪声的动态范围压缩限制。 最多可以一次以 4个模值 为单位对谱系数的幅度值进行编码, 对于大于 1 的谱系数的幅度值, 将在量化系 数的数组中保留一个 +1 或者-1 作为相应的符号位。将最低频率的“限幅”系数 所处的比例因子带序列号编入传送的比特流中。 每个被“限幅”后的谱系数编码 包含两部分:超出1 的模值和偏移量, 其中偏移量是以前面相邻比例因子频带为 基址。因此对于长块来说, 比例因子频带划分及其各子带的频谱排序不必考虑窗 函数序列类型。一种常见的频谱限幅方法就是将高频段中幅度绝对值大于 1 的谱 系数进行限幅工作。 由于传输限幅系数的辅助信息需要额
34、外的比特消耗, 因此只 有在整体效果能够达到良好的情况下才使用无噪声压缩。2) 分区在无噪编码中,把一组 1024点的量化谱系数值分成若干区,这样每个区便 能使用一个单独的霍夫曼编码。 出于对编码效率的考虑, 所分区的边界必须位于 比例因子频带的边界处, 从而各分区可以按比例因子频带为基本单位传送该区的 长度以及该区所使用的霍夫曼码本序列号。分区过程是动态的, 典型的情况是随着块的不同而变化, 这样可以使整组量 化谱系数编码所需要的比特数达到最少。在 AAC音频编码标准中,分区的实现 使用贪婪合并算法, 从最靠前的码本序号段开始, 按照参与合并的区尽可能多的 原则执行, 但要保证每个分区所使用
35、的码本序列号尽可能的小。 如果分区的合并 能够减少总比特的消耗, 则进行分区的合并。 如果被合并的各分区所使用霍夫曼 码本不同,则合并后的分区采用序列号较高的霍夫曼码本。在对量化谱系数编码的过程中, 可能会出现分区中某个谱系数全部为零。 例 如,如果输入的音频信号频率最高为 20kHz,或者是更低,则在高频段上的谱系 数全部为零。 这种分区将使用霍夫曼零号码本进行编码。 霍夫曼零号码本是一种 溢出机制, 它表明分区内所有的谱系数全为零, 并且不需要为该区传送霍夫曼码 字。3) 分组和交叉如果分析滤波器组的窗序列是由 8 个短窗序列组成,那么输入的一组 1024 个系数实际上就是一个8X 128
36、的谱系数矩阵,代表了音频信号在 8个短窗期间 的时频映射。虽然分区的灵活性很大, 可以有效地表示 8个全零区, 但是分组和 交叉能够提供更高的编码效率。 正如先前所述, 把与相邻短窗中的谱系数进行分 组操作,那么所有比例因子频带中的谱系数就可以在同一个组内共享比例因子, 而且同一个组内的谱系数可以通过互换比例因子频带和窗口顺序来进行交叉编 组。需要详细说明的是,假设交叉前一组 1024个谱系数c为:cgwbk。其 中, g 为组索引, w 为组内窗口序列号索引, b 为相应窗内比例因子频带索引, k 相应比例因子频带的谱系数索引。而且最右边的索引变化最快。交叉以后,谱 系数为: cgbwk 。
37、这样可以使高频段的比例因子频带排列在一起, 即可以把 出现全为零的分区合并在一起。4) 比例因子 在频谱量化过程中,每一个数据帧内各比例因子频带都有自己的比例因子,其值大小不同, 另外,在量化过程中还增添了一个全局增益, 它是用来对所有的 比例因子进行归一化处理。 为了进一步提高压缩比, 在编码过程中忽略掉所有比 例因子为零的比例因子频带, 并且不对这些频带进行传输。 全局增益和比例因子 将以 1.5分贝的步长进行量化。然后将全局增益编码成一个 8位无符号整数,而 比例因子与相邻比例因子进行前差分编码,最后对差分码进行霍夫曼编码。5) 霍夫曼编码霍夫曼编码中的码字表示 n重组量化谱系数,其码字
38、是从11个霍夫曼码本 中选取的。一个码字索引对应于 2 个或 4 个频谱系数,且各组内的频谱系数是 按照从低到高的顺序排列。表 2 列出了每个霍夫曼码本所能表示的最大绝对值, 以及每个码本中单个码 字索引所对应的谱系数个数。表2霍夫曼码本码本索引码字索引对应的谱系数个数最大绝对值带符号值00141是241是342否442否524是624是727否827否9212否10212否11216 (溢出)否每个最大绝对值有两个码本,这两个码本分别表示了截然不同的概率分布函 数。为了获得最高编码增益,在编码过程中应选择最合适的一个码本进行编码。 为了节省码本所占用的存储空间(这是为了降低批量生产解码器的成
39、本而考虑 的),大部分码本用无符号值来表示。利用这些码本对量化谱系数的绝对值进行 霍夫曼编码,如果谱系数值是非零的,则在编码的码字后面添加上符号位。两个码本-码本0和码本11的使用需要引起特别的注意。正如前面所述, 0 号码本表示某分区内所有的谱系数均为零。11号码本表示某分区内谱系数的最 大绝对值大于或等于16。如果在某码字索引对应的谱系数中存在最大绝对值大 于或等于16的情况,那么就采用一种特殊的溢出编码机制来表示这些值。(3)比特池缓冲技术AAC可以实现一定程度的变码率调整,这一技术称为比特池。每个音频帧编 码所需的比特数是不一样的,当一帧所需的比特数少于平均比特数时,可把余下 来的比特
40、存入比特池中。以后,当某些帧所需的比特数多于平均数时,AAC从比特池中取出存下的比特分配给该帧, 使该帧得到额外的比特。从总体上来说,每 帧平均比特数是由采样率和码率而定的,而对具体的每一帧其比特数可以变化很 大。使用比特池技术有一些限制,一是前面的帧不能向后面的帧借比特, 即一定 要在时间上是因果的 ;第二,比特池的大小受到解码缓冲存储器大小的限制, AAC 规定码流缓冲区的最小值,每个独立声道码流缓冲区的最小尺寸是 6144 比特。 相应编码器中比特池的最大值是 6144 比特减每声道平均比特数。多声道之间可 共用一个比特池,但编码器必须保证每一个声道的帧长不超过解码器中每声道码 流缓冲区
41、的最大值。4. AAC 编码文件最后要把各种必须传输的信息按 AAC标准给出的帧格式组成 AAC码流,使 得解码器能够正确解码。首先是头信息,AAC提供两种头信息格式,分别是音频数据交换格式(ADIF, Audio Data In tercha nge Format)和音频数据传输格式(ADTS Audio Data Tran sport Stream)。前者在一个编码文件里只有一个头信息, 为此节省比特数,但是一旦数 据出错, 就无法保证继续正常解码, 这种格式主要面向数据交换。 而后者在每帧 都有数据头, 这样即使一帧数据出错也不影响以后的解码, 主要是考虑到流媒体 播放的需求。 目前基本
42、上都使用 ADTS 格式。除此以外, 还有变换块类型, 窗类 型,全局比例因子,分区信息码本,信息比例因子编码,量化频谱编码和各模块 的标志位及边信息等。ADTS中,一帧数据固定对应时域上1024和采样点。ADIF和 ADTS头中含有 以下信息。Adif_header()adif_id32bitcopyright_id_present1bitif(copyright_id_present)copyright_id72bitoriginal_copy1bithome1bitbitstream_type1bitbitrate23bitnum_program_config_elements4bitf
43、or(i=0;i< num_program_config_elements+1;i+)if(bitstream_type ='0')adif_buffer_fullness20bitprogram_config_element()Adts_fixed_header() 一 一syn cwordID layer protecti on _abse nt Profile_ObiectType sampli ng_freqe ncy_in dex private_bit cha nn el_c on figurati on origi nal/copy home emphasisAdts_variable_header ()12 bit1 bit2 bit1 bit2 bit4 bit1 bit3 bit1 bit1 bit2 bitcopyright_ide ntificati on _bit copyright_ide ntificati on _start a
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026年江西省庐山市高三物理下册期末考试模拟检测卷带答案
- 2026年河南省荥阳市高三生物下册期末考试模拟考试卷含答案
- 2026年安徽省宁国市高一化学上册期末考试测试卷附参考答案(完整版)
- 2026年浙江省义乌市高三生物上册期末考试模拟试卷含答案
- 2026年山西省侯马市高一化学上册期末考试模拟卷(综合题)附答案
- 五年级数学下册 第3课时 求一个数是另一个数的几分之几
- 基于栅格邻域可视性的最优路径问题深度剖析与算法优化
- 基于机器视觉的嵌入式道岔缺口检测系统:原理、应用与展望
- 基于机器学习的CDN-P2P文件分发网络用户需求预测模型构建与实践
- 基于有限元的球磨机结构强度精细化解析与优化策略研究
- 2026年中煤一局集团有限公司招聘成熟人才(技术技能岗位)(21人)笔试备考试题及答案详解
- 2026年版高中英语(外研社版)单词大全
- 河道管理范围内建设项目防洪评价报告编制导则
- 2026广东河源市连平县事业单位随军家属招聘工作人员2人重点基础提升(共500题)附带答案详解
- 烘焙营销方案模板范本(3篇)
- 加油站油罐安装施工方案
- 中小学内部控制相关制度
- 文件会签审批制度及流程
- 探索openEHR模型:原理、方法与系统实现的深度剖析
- 中华传统文化教学课件(共8章)第三章 感受传统文学之美
- 菜鸟驿转让合同协议书
评论
0/150
提交评论