用DSP实现MPEG音频层III压缩的加速方法
发布时间:2008/5/27 0:00:00 访问次数:555
【关键词】dsp mpeg 压缩编码 huffman
1 概述
数字音频压缩技术给人们提供了一种更为有效的音频存储、传输方法。音频压缩的技术有很多种,它们的复杂度、音频压缩质量、以及压缩比都有很大的差别。如:μ-law音频压缩算法,其特点是简单,但压缩比很低,但音质一般。根据ccitt g.711建议,采用自然对数的量化过程,在输入幅度比较小的时候能够提供比较大精度的量化,而对于出现概率比较小的大幅度信号,量化噪声相对而言则较大。这种量化方式使得8 bit的数字量化信号在量化噪声效果上等同于14 bit的线性量化。而adpcm压缩编码则充分利用了相邻的抽样值幅度变化比较小的特点,编码输出结果是当前抽样值与预测值的差值。虽然adpcm编码的保真度较高,但其压缩比却比较小,只能够达到4/1的压缩比。改进的adpcm编码方法有ima (interactive multimedia association)提出的改进算法,ccitt的g.721,g.723建议等[1]。
mpeg(motion picture expert group)音频压缩标准提供了一种高保真度,高压缩比的压缩算法。在iso11172-3标准中,描述了具有不同复杂度和性能的子带音频编码方案,以适应各种高音质数字音频的应用。根据编码计算复杂度及编码效率的不同,分为层i,层ii和层iii三种标准。
mpeg音频标准最初来源于被分为四种类型的算法草案,它们是音频频域感觉熵编码aspec(audio spectral perceptual entropy coding),掩蔽模式通用子带集成编码与多路复用musicam(masking-pattern universal sub-band integrated coding and multiplexing),子带adpcm sb/adpcm(sub-band adaptive difference pcm)。经过一系列的客观和主观音质测试,考虑到不同比特率下的音质,对传输比特错误的敏感性,编码/解码复杂度,以及编解码延时等因素,在大约100 kbit/s低码率下,aspec和musicam表现出最好的音质效果。在低码率(64 kbit/s)时,aspec表现出更为出色的音质,而musicam则在编码解码的复杂度和延时上略胜一筹。根据aspec的若干算法,对 musicam进行改进,加大了计算复杂度,但获得了更好的压缩比及音质,这就是iso11172-3音频层iii的标准。
层i是最简单的一种算法。如philips公司的数字盒式录音机dcc(digital compact cassette)便是利用层i的压缩算法,其应用的比特率为192 kbit/s每通道。
层ii具有中等的编码复杂度,适用比特率大约为128 kbit/s每通道。广泛应用于数字音频广播dab(digital audio broadcasting)的音频编码及视频cd中。
层iii是最复杂的编码算法,但是在相同的比特率下,它所提供的音质也是最好的。典型的比特率为64 kbit/s,最适合于isdn上的音频传输。
1998年4月22日,apt(audio processing technique)公司利用apt-x100系统,通过isdn线路,成功地转播了北京—东京—上海的“国际地球日”大型广播音乐会。但是,这次转播占用了3条(即6个b)的isdn线路,以保证22 khz频响的立体声传送,这是由于apt-x100系统采用的是sb/adpcm音频压缩方法[2]。然而,如果使用mpeg层iii音频压缩方法,只需要一条isdn线路,就可以实现22 khz频响的立体声传送。由于mpeg层iii音频压缩编码复杂度太高,运算量太大,难以用一般的dsp(digital signal processor)单片实现,所以在目前的音响设备中很少使用这一算法。为了能用较低的成本实现mpeg层iii这一高效音频压缩算法,我们对这一算法进行了全面分析,提出了适用于dsp实现的编码加速方案。
2 mpeg音频层iii压缩编码流程及特点
mpeg音频层iii压缩编码流程如图1所示,相对于层ⅰ和层ⅱ而言,其特点在于:
图1 mpeg音频层ⅲ编码流程图(单声道模型)
(1)利用独立于信号频率及声压级的耳蜗扩散函数(cochlea spreading function)—modified rounded 类扩散函数,计算人耳听觉的掩蔽门限。
(2)增加了mdct模块,以提高频率分辨率。
(3)通过控制环,对非均匀量化率进行迭代分配,以保持相对恒定的信噪比。并且,采用不定长熵编码—huffman编码,对量
【关键词】dsp mpeg 压缩编码 huffman
1 概述
数字音频压缩技术给人们提供了一种更为有效的音频存储、传输方法。音频压缩的技术有很多种,它们的复杂度、音频压缩质量、以及压缩比都有很大的差别。如:μ-law音频压缩算法,其特点是简单,但压缩比很低,但音质一般。根据ccitt g.711建议,采用自然对数的量化过程,在输入幅度比较小的时候能够提供比较大精度的量化,而对于出现概率比较小的大幅度信号,量化噪声相对而言则较大。这种量化方式使得8 bit的数字量化信号在量化噪声效果上等同于14 bit的线性量化。而adpcm压缩编码则充分利用了相邻的抽样值幅度变化比较小的特点,编码输出结果是当前抽样值与预测值的差值。虽然adpcm编码的保真度较高,但其压缩比却比较小,只能够达到4/1的压缩比。改进的adpcm编码方法有ima (interactive multimedia association)提出的改进算法,ccitt的g.721,g.723建议等[1]。
mpeg(motion picture expert group)音频压缩标准提供了一种高保真度,高压缩比的压缩算法。在iso11172-3标准中,描述了具有不同复杂度和性能的子带音频编码方案,以适应各种高音质数字音频的应用。根据编码计算复杂度及编码效率的不同,分为层i,层ii和层iii三种标准。
mpeg音频标准最初来源于被分为四种类型的算法草案,它们是音频频域感觉熵编码aspec(audio spectral perceptual entropy coding),掩蔽模式通用子带集成编码与多路复用musicam(masking-pattern universal sub-band integrated coding and multiplexing),子带adpcm sb/adpcm(sub-band adaptive difference pcm)。经过一系列的客观和主观音质测试,考虑到不同比特率下的音质,对传输比特错误的敏感性,编码/解码复杂度,以及编解码延时等因素,在大约100 kbit/s低码率下,aspec和musicam表现出最好的音质效果。在低码率(64 kbit/s)时,aspec表现出更为出色的音质,而musicam则在编码解码的复杂度和延时上略胜一筹。根据aspec的若干算法,对 musicam进行改进,加大了计算复杂度,但获得了更好的压缩比及音质,这就是iso11172-3音频层iii的标准。
层i是最简单的一种算法。如philips公司的数字盒式录音机dcc(digital compact cassette)便是利用层i的压缩算法,其应用的比特率为192 kbit/s每通道。
层ii具有中等的编码复杂度,适用比特率大约为128 kbit/s每通道。广泛应用于数字音频广播dab(digital audio broadcasting)的音频编码及视频cd中。
层iii是最复杂的编码算法,但是在相同的比特率下,它所提供的音质也是最好的。典型的比特率为64 kbit/s,最适合于isdn上的音频传输。
1998年4月22日,apt(audio processing technique)公司利用apt-x100系统,通过isdn线路,成功地转播了北京—东京—上海的“国际地球日”大型广播音乐会。但是,这次转播占用了3条(即6个b)的isdn线路,以保证22 khz频响的立体声传送,这是由于apt-x100系统采用的是sb/adpcm音频压缩方法[2]。然而,如果使用mpeg层iii音频压缩方法,只需要一条isdn线路,就可以实现22 khz频响的立体声传送。由于mpeg层iii音频压缩编码复杂度太高,运算量太大,难以用一般的dsp(digital signal processor)单片实现,所以在目前的音响设备中很少使用这一算法。为了能用较低的成本实现mpeg层iii这一高效音频压缩算法,我们对这一算法进行了全面分析,提出了适用于dsp实现的编码加速方案。
2 mpeg音频层iii压缩编码流程及特点
mpeg音频层iii压缩编码流程如图1所示,相对于层ⅰ和层ⅱ而言,其特点在于:
图1 mpeg音频层ⅲ编码流程图(单声道模型)
(1)利用独立于信号频率及声压级的耳蜗扩散函数(cochlea spreading function)—modified rounded 类扩散函数,计算人耳听觉的掩蔽门限。
(2)增加了mdct模块,以提高频率分辨率。
(3)通过控制环,对非均匀量化率进行迭代分配,以保持相对恒定的信噪比。并且,采用不定长熵编码—huffman编码,对量
上一篇:DSP在动液面深度测试中的应用