音频信号经数字化编码后,面临的最大难题之一是海量数据存储与传输的问题。数字音频信号的压缩技术是数字电视广播系统中非常重要的一个环节。压缩效率和压缩质量直接影响着数字电视广播的传输效率和音视频的传输质量。本文主要对数字音频压缩技术做了浅要的分析。
相比模拟信号,数字信号具有很明显的优势,但数字信号也有自身相应的缺点,即对存储容量需求以及对传输时信道容量要求的增加。音频压缩技术指的是对原始数字音频信号流(PCM编码)运用适当的数字信号处理技术,在不损失有用信息量,或所引入损失可忽略的条件下,降低(压缩)其码率,也称为压缩编码。它必须具有相应的逆变换,称为解压缩或解码。一般来讲,可以将音频压缩技术分为无损数据压缩及有损数据压缩两大类。
无 损 数 据 压 缩
使用无损压缩方案可以在解压缩后逐位恢复原始数据信息。他们通过预测过去样本中的值,消除存在于音频信号中的统计冗余。可以实现小压缩比,最好大约2:1,取决于原始音频信号的复杂性。时域预测编码技术使无损压缩成为可行,要归功于时域预测码技术。他们是:
1.差分算法
音频信号包含重复的声音,还有大量的冗余和感知的不相关声音。重复的数据信息在编码过程中被删除,在解码时又被重新引入。音频信号首先分解为若干包含离散音调的子频带。然后使用合适于短期定期信号的预测器应用DPCM。这种编码是自适应的,它查看输入信号能量以修改量化步长。这就引出了所谓的自适应DPCM(ADPCM)。
2.熵编码器
利用量化子频带系数表示形式中的冗余来提高熵编码效率。这些系数以逐渐增加的频率顺序发送,在低频产生较大的值,在高频产生较小后接近零值的长行程。VLC取自与低频值和高频值的统计最一致的不同的哈夫曼表。
3.块浮点系统
来自A/D转换过程的二进制值分组为数据块,要么是在时域内,通过在A/D转换传输出端采用相邻的样本;要么是在频域内,通过在FDCT输出端采用相邻的频率系数。然后数据块中的二进制值按比例增大,以使最大的值仅低于完全换算值。该换算因子称为指数,对块中所有的值都通用。
因此,每个值都可用一个尾数(一个样本值)和指示正数决定。位分配计算从HAS模型派生,实现数据速率压缩的方法是每个数据块发送一次指数值。编码性能很好,但噪音与信号内容有关。屏蔽技术有助于减少这种听得见的噪音。
有 损 数 据 压 缩
实现有损数据压缩的方法是,将两个或更多的处理技术相结合,以利用HAS的无法检测到其他高振幅中的特定频谱分量这一特性。这样一来,就可以获得高性能数据压缩方案和从2:1到20:1的高得多的压缩比,具体取决于编码/解码过程的复杂性和音频质量要求。
有损数据压缩系统使用感知编码技术。基本原理是,放弃低于阈值曲线的所有信号以消除音频信号中的感知冗余。因此,这些有损数据压缩系统还称为感知无损。感知无损压缩之所以可行,归功于若干技术的结合,如:
1.信号分量的时间和频域屏蔽。
2.量化每个可听得见的音调的噪音屏蔽
通过分配足够的位,确保量化噪音级别总是低于屏蔽曲线。在接近听得见的信号的频率下,20或30DB的SNR是可以接受的。
3.联合编码
该技术利用了多通道音频系统中的冗余。已发现在所有通道中存在大量的相同数据。因此,通过一次编码这些相同的数据可以得到数据压缩,并向解码器指示在其他通道中必须重复这些数据。
音频解码过程的实现
最重要的屏蔽效果出现在频域内。为了利用该属性,音频信号频谱按照与HAS临界带宽匹配的时间和频率分辨率分解为多个子频带。
感知编码器的结构,由以下几个部分组成:
1.多带滤波器
通常称为滤波器组,其作用是将频谱分解为子频带。
2.比特分配器
用于估算屏蔽阈值并以音频信号频谱能量和心理学模型为依据来分配比特。
3.换算和量化处理器
4.数据复用器
用于接收已量化的数据和添加解码过程的副信息(位分配和换算因子信息)。
3.1 滤波器组 (有三种类型的滤波器组)
(1)子频带组。信号频谱被分为等宽频率子频带。这类似于频率分析的HAS过程,后者将音频频谱分为临界频带。临界子频带的宽度可变。低于500Hz的带宽为100Hz,在10KHz,在10KHz以上的带宽增加到几KHz。低于500H在的子频带包含若干临界频带。子频带滤波器有小重叠,通常用于相邻时间样本。每个子频带信号然后用该子频带的位分配统一量化,以保持正的屏蔽噪音比(MNR)。当屏蔽曲线在噪音曲线之上时,该比率为正。
(2)转换组。已修改的DCT(MDCT)算法通常用于将时域音频信号转换为大量的子频带(256到1024)。这种滤波器组中也存在一些重叠。
(3)混合滤波器组。它们由子频带滤波器后跟MDCT滤波器组成。这种组合提供了更精细的频率分辨率。
3.2 感知模型、屏蔽曲线和位分配
输入PCM信号的精确心理学分析是就其频率和能量内容执行的,使用的工具是快速傅里叶变换的算法。从听力阈值和HAS的频率屏蔽属性计算出屏蔽曲线。该屏蔽曲线的形状和级别与信号内容有关。频谱信号封装与屏蔽曲线的差值确定了编码音频信号的所有频谱分量所需要的最大比特数(以每位6dB为基础)。这种比特分配过程确保了量化噪音低于听得见得阈值。
从屏蔽曲线中导出了每个子频带的屏蔽阈值。每个阈值确定了每个子频带中可以接受的最大量化噪音能量,在阈值处于对于感知无损压缩系统噪音开始能够听见。
3.3 换算器和量化器
来自每个子频带滤波器输出样本通过两种方法换算和量化:
(1)块浮点系统。该系统将数据块中的最大值标准化为完全换算值。此块换算因子在数据流内传输,解码器使用它向下换算块中的所有数据值。在MPEG第一层中,数据块由12个连续样本组成音频时间由384个样本组成(32个子频带,每个子频带12个样本)。所有数据块的值然后被量化量化步长值由比特分配器来确定。
(2)噪音分配和标量量化。前面方法中,每个子频带有不同的换算因子。
第2种方法对于具有大约临界带宽的几个频带采用相同的换算因子。此换算因子的值不从标准过程中导出,而是噪音分配过程的一部分。这里不执行位分配。估算每个子频带屏蔽阈值后,用换算因子来修改换算因子频带中所有的量化步长值,以便修改量化噪音结构,更好地与阈值的频率线相匹配。不统一的量化处理用于使量化噪音以优化的方式与信号幅度相适应。接下来是用哈夫曼编码对音频频谱值进行编码,并得到更好的数据压缩。
3.4 数据多路复用器
来自每个量化器输出的12个数据样本的块与其他相应的换算因子及比特分配信息多路复用,以形成已编码位流中的音频帧。也可以将可选的辅助数据插入到该位流中。MPEG标准没有指定能够传输的数据类型以及这些数据类型在位流中的格式化方式。