- 相关推荐
音频压缩的成功者——感知编码
音频压缩的成功者——感知编码
2004年中南地区省级电视台技术年会论文二等奖近年来,随着现代通信的发展,数字化日益渗透人们的日常生活,人们对各种多媒体业务的需求日益增长,我们正享受着数字化带来的方便和快捷,卫星电视、数字电视、各种数码音乐产品正改变着我们的生活。于是便要求得到更多更好的音频产品和服务。数字声音作为一种存储、处理和传输高保真声音的方法,在消费电子、专业声音等众多领域已得到广泛应用。但是如果没有通用有效的高质量音频编解码方案,数字存储和传输技术的进一步发展将会受到严重的束缚。在音频数字压缩技术中,当前比较成功的编码方式被称为“感知型编码( Perceptual Coding )”,现在比较常用的 MP3 、 MD 等都是感知编码原理。
一般来说,数据压缩有两种方法。一种方法是利用信号的统计性质,完全不丢失信息的高效率编码法,称为平均信息量编码或熵编码。第二种方法是利用接收信号的人的感觉特性,省略不必要的信息,压缩信息量,这种方法称为感觉编码。
因为熵编码可通过解码完全再现编码前的数据,故应用范围广泛 ,例如可用于磁盘压缩、文件压缩等,在保存信息方面,完全不用担心劣化。不过遗憾的是,仅依靠熵编码不能将音频信号进行大幅度的数据压缩。这是因为在音频信号中会有白噪声信号,这种完全随机的信号,根据信息论是决不能用熵编码进行压缩的。因此在音频压缩中,必须同时采用感知编码 。
感知编码是利用人耳听觉的心理声学特性(频谱掩蔽特性和时间掩蔽特性)、人耳对信号幅度、频率、时间的有限分辨能力,凡是人耳感觉不到的成分不编码,不传送,即凡是对人耳辨别声音信号的强度、音调、方位有贡献的部分(称为不相关部分或无关部分)都不编码和传送。对感觉到的部分进行编码时,允许有较大的量化失真、并使其处于听阈以下,人耳仍然感觉不到。简单的说感知编码是建立在人类听觉系统的心理声学原理为基础,只记录那些能被人的听觉所感知的声音信号,从而达到减少数据量而又不降低音质的目的。
目前音频压缩编码已成为标准的是 MPEG-1 ( ISO/IEC11172-3 )、 MPEG-2 ( ISO/IEC13818-3 )和美国大联盟的 AC-3 。他们都是感知编码。
一、为什么压缩
了解数字音频首先要提到 脉冲编码调制 PCM ( Pulse Code Modulation ),它 是概念上最简单、理论上最完善的编码系统,是最早研制成功、使用最为广泛的编码系统,但也是数据量最大的编码系统。 PCM 指模拟音频信号只经过采样、量化、编码,模数转换成 PCM 信号,得到标准的数字音频码流,而未经过任何编码和压缩处理。
根据奈奎斯特采样定律,通常其采样频率至少应当是信号中的最高频率分量的两倍。对于高质量的音频信号,其频率范围是从 20Hz ~ 20kHz 。所以其采样频率必须在 40kHz 以上。在 CD 中采用了 44.1kHz 的采样频率。普通 CD 线性 PCM 的取样频率为 44.1kHz ,量化精度为 16bit ,动态范围为 98db 。(在对模拟信号采样以后,还必须对其幅度上加以分层。在 CD 中,其分层以后的幅度信号用 16 bit 的二进制信号来表示,也就是把模拟的音频信号在幅度上分为 65536 ( 2 16 )层。这样,它的动态范围就可以达到 96 分贝( 6 分贝 / 比特)。)
PCM 的编码原理比较直观和简单,它的原理框图如图所示。
在这个编码框图中,它的输入是模拟声音信号,它的输出是 PCM 样本。图中的“防失真滤波器”是一个低通滤波器,用来滤除声音频带以外的信号;“波形编码器”可暂时理解为“采样器”,“量化器”可理解为“量化阶大小 (step-size) ”生成器或者称为“量化间隔”生成器。
那么这种未经压缩的 PCM 信号的数据量具体有多大呢?以 CD 音质的信号为例,它的单通道的采样率是 44.1k Hz ,每个样值是 16bit 的量化,而立体声 CD 音质信号,有两个通道,它每秒的码流是 44.1K × 16 × 2 ≈ 1.4Mbit/s 。(数字信号传输率 = 取样频率 × 量化比特 × 通道数)一张 CD 唱片的容量约为 680MB ,可以容纳约 1 小时的双声道 PCM 数字音频节目,由于这种编码方式所产生的数据量太大,存储和传输都既不方便也不经济,有时甚至是行不通的。对于电视广播来说,数据传输速率越高,每套节目所需的频宽就越大,在频带资源日趋紧张的今天,过宽的频带是不能允许的,同时对于有形载体(激光碟、磁带等),每种载体的记录密度都是有限的(受当时技术发展程度的制约),增大数据量就意味着缩短节目长度。因此需要开发一种新的编码方式,它应该使用较少的数据量,而又不会导致音质的主观听感有明显的下降。
二、 感知编码原理
1 、理论基础——闻域和临界频段
音频压缩理论是建立在心理声学模型基础上,从研究人耳的听感系统开始的。
人耳实际上可看成一个多频段的听感分析器,在接收端的最后,它对瞬间的频谱功率进行了重新分配,这就为音频的数据压缩提供了依据。
众所周知,声源振动的能量通过声波传入人耳,使耳膜发生振动,人们就产生了声音的感觉。但是人耳能听到的振动频率约在 20 Hz 到 20KHz 之间,低于 20 Hz 或高于 20K Hz 的振动,不能引起人类听觉器官的感觉。心理声学模型中一个基本的概念就是听觉系统中存在一个听觉阈值电平,低于这个电平的声音信号就听不到,因此就可以把这部分信号去掉。听觉阈值的大小随声音频率的改变而改变,各个人的听觉阈值也不同。大多数人的听觉系统对 2kHz ~ 5kHz 之间的声音最敏感。一个人是否能听到声音取决于声音的频率,以及声音的幅度是否高于这种频率下的听觉阈值。 这就是说在听觉阈值以外的电平可以去掉,相当于压缩了数据。另外, 听觉阈值电平是自适应的,即听觉阈值电平会随听到的不同频率的声音而发生变化。也许你有这样的体验,在一安静房间里的普通谈话可以听得很清楚,但在播放摇滚乐的环境下同样的普通谈话就听不清楚了。声音压缩算法也同样可以确立这种特性的模型来取消更多的冗余数据。
2 、 掩蔽 效应
心理声学模型中的另一个概念是听觉掩饰特性—— 掩蔽效应,即 一种频率的声音阻碍听觉系统感受另一种频率的声音的现象称为掩蔽效应。前者称为掩蔽声音 (masking tone) ,后者称为被掩蔽声音 (masked tone) 。
掩蔽效应探讨的基础是 感知编码中的一个重要的概念——临界频段,即人耳对不同频率段声音信号的反应灵敏程度有所差别。 人耳中包含了约 3 万个毛细胞,它们能够检测到基膜的振动,通过生理脉冲将音频信息传到大脑,但这些细胞在不同频率的敏感程度不同,在低频区域对几赫兹的差异都能分辨出来,而在高频区域,必须要有几百赫兹的差别才能分辨。所以,一般毛细胞会对其周围的强刺激作出反应,这就是临界频段。实验结果表明,在低频区域临界频段比在高频区域临界频段窄,在低频段临界频段很窄,频段宽度只有 100 Hz 到 200 Hz ,在高于 5000 Hz 以后的临界频段的宽度有 1000 Hz 至几万 Hz 的频段宽度。 3/4 临界频段低于 5Khz ,人耳可以接收到的低频信息高于高频信息。
掩蔽可分成频域掩蔽和时域掩蔽。
所谓频域掩蔽是指掩蔽声与被掩蔽声同时作用时发生掩蔽效应,即较强的声音信号可以掩蔽临近频段中 同时发声的 较弱的信号。 这种特性称为频域掩蔽,也称同时掩蔽 (simultaneous masking) 。 这时,掩蔽声在掩蔽效应发生期间一直起作用,是一种较强的掩蔽效应。换言之,如果在某一频段中出现了一个较强的信号,那么该频段中所有低于某一门槛值的信号都将被强信号掩蔽掉,成为人耳不可闻的信号。掩蔽特性与掩蔽音的强弱,掩蔽音的中心频率,掩蔽音与被掩蔽音的频率相对位置等有关。通常,频域中的一个强音会掩蔽与之同时发声的附近的弱音,弱音离强音越近,一般越容易被掩蔽;反之,离强音较远的弱音不容易被掩蔽。滤除这一弱信号将不会对音质产生不良影响,而且能减少编码后的数据量,所以可以把它们作为噪声信号来对待。
除了同时发出的声音之间有掩蔽现象之外,在时间上相邻的声音之间也有掩蔽现象,并且称为时域掩蔽。 所谓时域掩蔽是指掩蔽效应发生在掩蔽声与被掩蔽声不同时出现时,又称异时掩蔽。 时域掩蔽又分为超前掩蔽 (pre-masking) 和滞后掩蔽 ( post-masking) , 若掩蔽声音出现之前的一段时间内发生掩蔽效应,则称为导前掩蔽;否则称为滞后掩蔽。 产生时域掩蔽的主要原因是人的大脑处理信息需要花费一定的时间。一般来说,超前掩蔽很短,只有大约 5 ~ 20 ms ,而滞后掩蔽可以持续 50 ~ 200 ms 。 异时掩蔽也随着时间的推移很快会衰减,是一种弱掩蔽效应。
如上图左图所示,当有黑线所示的某频率信号存在时,靠近它的本来可以听见的噪声 B就变得听不见了,这种现象叫做频率掩蔽效应。而如右图所示,当某时刻有黑线所示的信号存在时,位于其后面的比它小一些的本来可听见的噪声E也变得听不见了,这种现象称为时间掩蔽效应。这些两种效应合成的结果,就形成了实际的可闻阈。如下图所示:
三、感知编码器
1 、感知编码器的特点
感知编码器首先分析输入信号的频率和振幅,然后将其与人的听觉感知模型进行比较。编码器用这个模型去除音频信号的不相干部分及统计冗余部分。尽管这个方法是有损的,但人耳却感觉不到编码信号质量的下降。感知编码器可以将一个声道的比特速率从 768kb/s 降至 128kb/s ,将字长从 16 比特 / 取样减少至平均 2.67 比特 / 取样,数据量减少了约 83% 。
感知编码器的有效性部分源自采用了自适应的量化方法。在 PCM 中,所有的信号都分为相同的字长,感知编码器则是根据可听度来分配所使用的字长。重要的声音就分配多一些位数来确保可听的完整性,而对于轻言细语的编码位数就会少一些,不可听的声音就根本不进行编码,从而降低了比特速率。编码器的压缩率是输入的比特数与输出的比特数之比。一般常见的压缩率是 4 : 1 , 6 : 1 或 12 : 1 。
一般感知编码采用两种比特分配方案。一种是前向自适应分配方案,所有的分配都在编码器中进行,这个编码信息也包含在比特流中。前向自适应编码的一个突出优点是在编码器中采用了心理声学模型,它只是利用编码数据完全地重建信号。当改进了编码器中心理声学模型时,可利用现有的编码器来重建信号。这种方法的一个缺点是需要占用一些比特位来传递分配信息。在后向自适应分配方案中,比特分配信息可以直接从编码的音频信号中推导出来,不需要编码器中详细的分配信息,分配信息也不占用比特位。然而在解码器中的比特分配信息是根据有限的信息推导出来的,精度必然会降低。另外解码器相应也比较复杂,而且不能轻易地改变心理声学模型。
感知编码有一定的抗噪性。在 PCM 中误差引入了宽带噪声,而对于许多感知编码器,根据预编码信号的典型带宽,噪声被限定在窄带内,因而限制了其强度。误差仅仅引入了一个低电平的噪声。感知编码系统还对目标噪声进行校正,例如对于极弱的声音、比较强的声音给予更多的保护。象任何编码系统一样,感知编码系统也是综合存储量、传输速率等因素来考虑的合适的误差校正方案。
由于感知编码器根据人耳的灵敏度来编码,它也可以输出放音系统所要求的响度。实况播送的音乐不通过放大器和扬声器而直接进入耳朵但是录制的音乐必须通过放音系统。由于感知编码器去除了不可听的信号成分,从逻辑上讲,加强了放音系统传送可听音乐的能力。简言之,感知编码器很适合对需要经过音频系统的音频信号编码。
2 、压缩的实现——子带压缩技术
子带压缩技术是以子带编码理论为基础的一种编码方法。
子带编码理论的基本思想是将信号分解为若干子频带内的分量之和,然后对各子带分量根据其不同的分布特性采取不同的压缩策略以降低码率。
子带编码是将一个短周期内的连续时间取样信号送入滤波器中,滤波器组将信号分为多个(最多 32 个)限带信号,以近似人耳的临界频段响应。对于这些子带,利用 FFT 将信号变换到频域分析其能量,利用心理声学模型来分析这些数值,给出这组数据的合成掩蔽曲线。编码器通过分析每个子带的能量来判断该子带是否包含可听信息。计算每个子带的平均功率,用来计算当前子带及邻接子带的掩蔽级,最后根据最小闻域推导出各个子带最后的掩蔽级。每个子带的峰值功率与掩蔽级的比率由所作的运算来决定,并根据信号振幅高于可听曲线的程度来分配量化所需的比特数。
由于在子带压缩技术中主要应用了心理声学中的声音掩蔽模型,因而在对信号进行压缩时引入了大量的量化噪声。 当重建信号时,每个子带的量化噪声被限制在该子带内,由于每个子带的信号会对噪声进行掩蔽,所以子带内的量化噪声是可以容忍的。 因为根据人耳的听觉掩蔽曲线,在解码后,这些噪声被有用的声音信号掩蔽掉了,人耳无法察觉;同时由于子带分析的运用,各频带内的噪声将被限制在频带内,不会对其它频带的信号产生影响。因而在编码时各子带的量化阶数不同,采用了动态比特分配技术,这也正是此类技术压缩效率高的主要原因。在一定的码率条件下,此类技术可以达到“完全透明”的声音质量( EBU 音质标准)。
3、子带编码的典型应用—— MPEG-1 音频压缩
在音频压缩标准化方面取得巨大成功的是 MPEG-1 数字音频压缩方案。
在 MPEG-1 压缩中,按复杂程度规定了三种模式即 MPEG Audio Layer-1 、 Layer-2 和 Layer-3 。目前广泛使用的 VCD 的音频压缩方案为 MPEG Audio Layer-1 ,它的典型的码流为每通道 192Kbit/S 。 Layer-2 即称掩蔽模式通用子带集成编码与多路复用,典型的码流为每通道 128 Kbit/S ,广泛应用于数字音频广播、数字演播室等数字音频专业的制作、交流、存储和传送。我们最熟悉的是 Layer-3 ,也就是常说的 MP3 ,是综合于层Ⅱ的优点提出的混合压缩技术, MP3 的压缩比率更大,可以达到 1 ∶ 10 ~ 1 ∶ 12 的比例,而 MP1 和 MP2 分别只有 1 ∶ 4 和 1 ∶ 6 ~ 1 ∶ 8 的压缩比例。这也就决定了 MP3 格式的文件尺寸更加适合存储空间小的随身听使用。但 MP3 的复杂度相对较高,编码不利于实时,典型码流为 64 Kbit/S ,在低码率下有高品质的音质,所以成为网上音源的宠儿。
MPEG-1 的压缩技术方案是子带压缩,子带分割的实现是通过时频映射,采用多相正交分解滤波器组将数字化的宽带音频信号分成 32 个子带;同时,信号通过 FFT 运算,对信号进行频谱分析;子带信号与频谱同步计算,得出对各子带的掩蔽特性,由于掩蔽特性的存在,减少了对量化比特率的要求,不同子带分配不同的量化比特数,但对于各子带而言,是线性量化。另上 CRC 校验码,得到标准的 MPEG 码流。在解码端,只要解帧,子带样值解码,最后进行频——时映射还原,最后输出标准 PCM 码流。其原理方框图如图 1 所示:
整个编码工作过程大致是:
1. 进行时域到频域的映射。利用 FFT 将时域数据转换到频域,这样可以计算精确的掩蔽域值。
2. 确定最大声压级。在每个子带内根据比例因子和频谱数据进行计算。
3. 确定安静域值。安静域值也称绝对域值,它形成了最低掩蔽边界。
4. 识别音调和非音调成分。由于信号中的音调和非音调成分的掩蔽域值不同,首先要识别音调和非音调成分,然后分别来进行处理。
5. 计算掩蔽域值。每个子带噪声的掩蔽域值由信号的掩蔽曲线决定。当子带相对于临界频段比较宽时,选择最小域值;当其比较窄时,将覆盖子带的域值进行平均。
6. 计算全局掩蔽域值。全局掩蔽域值通过对相应的各子带掩蔽域值和安静域值求和得到。
7. 确定最小掩蔽域值。基于全局掩蔽域值来确定每个子带的最小掩蔽域值。
8. 计算信号掩蔽率( SMR )。最大信号电平和最小掩蔽域值之间的差异决定了每个子带的 SMR 值,这个值将用于比特分配。
四、结论
传统的音频编码是表述和度量的问题,感知编码是生理和感知的问题。传统的音频技术存在于客观世界,而感知编码技术则存在于不可知的心理声学世界。到目前为止,随着数字信号处理的出现,音频工程师们可以利用软、硬件与人耳一样来“听”声音。但是在任何情况下,所有与这个主题相关的问题都必须从人耳的构造出发 。
【音频压缩的成功者——感知编码】相关文章:
视音频素材的编码转换08-06
噪声图像的分形压缩编码研究08-06
LHARC中的动态限长编码压缩算法08-06
Video Object编码技术08-06
对整体感知 整体把握的感知与把握08-17
成功者的食谱08-17
成功者的语录01-05
汉字的动态编码与显示方案08-06
《数字编码》教学反思04-28