[转]音频动态压缩第三层(MPEG Audio Layer-3 即 mp3)

音频动态压缩第三层(MPEG Audio Layer-3)

引言

    MP3是现在非常流行的一种数字音频的压缩技术,它能够用12:1的压缩比将高保真的数字音频进行压缩,使得一张MP3光盘上能够放下十几张激光唱片的歌曲,而保证回放质量依然和激光唱盘一样。现在不光是计算机能够播放MP3,国内不少超级VCD厂家也纷纷推出了具有播放MP3碟片功能的超级VCD。下面综合一些外文资料,对MP3做一些简单地介绍。

目录

MP3的历史

声音质量

感知音频编码的基础

MP3的常见问题

MP3的历史

    1987年,IIS开始在EUREKA项目EU147框架下的数字声音广播(DAB)中的感知音频编码问题上进行研究工作。在Erlangen大学(Dieter Seitzer教授)的协作下,最终IIS设计出了一个非常好的,压缩比很大的算法,这就是后来被指定为ISO-MPEG音频压缩第三层(MP3)标准的算法。(IS 11172-3 and IS 13818-3)。
    没有数据的损失,典型的数字音频信号由高于实际音频带宽(如激光唱盘采用44.1kHz)两倍以上的采样频率所采集的样本记录组成。所以你最终需要用1.400M位的空间来表示具有CD声音质量的立体声音乐中仅仅一秒的内容。通过使用MPEG音频编码,你可以用1:12的压缩比来大大缩减CD上的原始声音数据而不会影响声音质量。即使是1:24甚至更高的压缩比也依然能够保持声音质量,比你靠降低采样频率来获得你的样本要好的多。基本上,这由从事人耳能感知的声音波形的感知编码技术所实现。
    利用MPGE音频,你可以得到很好的数据压缩而依然保持CD声音质量的原样。

1:4

第一层(符合384kbps立体声信号)
1:6…1:8 第二层(符合256..192kbps立体声信号)
1:10…1:12 第三层(符合128..112kbps立体声信号)

    为了加强立体声效果和限制音频带宽,编码计划应该在一个足够低的位速率(bitrates)下达到一个能接受的声音质量。MPEG第三层是MPEG音频编码家族中压缩功能最强的一个成员。对一个给定的音频质量水平,他只要求最低的位速率或者一个给定的位速率,就能达到最高的音频质量。

声音质量

    一些MPEG第三层数据的典型性能:

声音质量 带  宽 模  式 位速率 压缩比
电话声音 2.5kHz 单声道 8kbps* 96:1
高于短波的质量 4.5kHz 单声道 16kbps 48:1
高于调幅的质量 7.5kHz 单声道 32kbps 24:1
类似调频广播 11kHz 立体声 56..64kbps 26..24:1
接近CD 15kHz 立体声 96kbps 16:1
CD质量 >15kHz 立体声 112..128kbps 14..12:1

*使用的非ISO的MPEG第三层来提高压缩质量(MPEG 2.5)

     在所有的国际收听测试中,MPEG第三层在1:12的压缩比下(每一个声道64kbps)依然保持原始的声音质量,充分证明了他的高超性能。如果应用系统能够容忍10kHz的带宽限制,那么可以采用1:24的压缩比来获得立体声信号的声音质量。
     对于象每声道60kbps位速率的广播应用系统那样要采用低位速率的应用的地方,ITU-R推荐使用MPEG第三层(ITU-R doc.BS.1115)。

感知音频编码的基础

导言

    音频压缩、音频编码和音频解码这几个概念目前定义还有些混乱,这一部分将对音频编码究竟是什么做一个简要地介绍。

音频压缩的目的

    直到音频压缩出现以前,高品质的数字音频数据要耗费很多的磁盘空间来存储或者要更多的频道带宽来传输。
    我们来看一个小例子。你想把把你喜欢的一首一分钟长的歌采样下来并存储到你的硬盘上。你希望获得的是CD那样的音乐品质,所以你要采用44.1kHz的采样频率,立体声,量化精度采用每个样本16位来表示。
    44.1kHz意味着每秒将有44,100个值从你的声卡或声音文件中传进来,由于是双声道立体声,所以要乘以2,由于量化精度是16位,也就是两个字节,所以还要再乘一个2,于是这首歌要用你磁盘上
    44,100样本/秒*2频道*2字节/样本*60秒/分钟 = 大约10M字节
的存储空间.如果你要从因特网上下载,假如调制解调速率是28.800,他将耗费你
    10,000,000字节*8位/字节/(28.800位/秒*60秒/分) = 大约49分钟。
                 仅仅为了下载一分钟的立体声音乐
    数字音频编码(本文中他和数字音频压缩是同一个概念)是音频数据所需要的压缩存储空间或频道带宽的压缩艺术。现代感知音频编码技术(如MPEG 第三层或MPEG-2 AAC)能够用12:1的压缩比来大幅度缩减数据量而不损失或者只是很小地损失了声音能够感知的质量,其失真度是人耳所不能(或不易)察觉的。
    因此,这种方案是高质量低位速率的应用的技术关键。这种应用包括CD-ROM游戏的声音轨道,声音晶体存储器,因特网声音,数字音频广播系统等。

音频压缩的两个部分

    音频压缩确实包括两个部分。第一个部分是编码,他将用WAVE文件表示的声音信号转变成高压缩形式的位流或音频数据编码。如果要在声卡上播放这个位流,你需要第二个部分—解码部分。解码将处理位流使得他还原成WAVE文件。

如何工作的?

  高效率的编码在于去掉冗余信号以及人的听音系统并不能感受到的频率范围中的不必要的信号。
    所有的编码器用相同的基本结构。编码方案可以描述成“感知噪音形态”或“感知子带(subband)/变换编码”。编码器通过对声音信号的光谱组成分析,计算出转换的过滤带,并且通过一个心理分析模型,来估计出刚好能被人感知的噪音的级别。在他的量化和编码进程中,编码器试图分配适当的数据位数量,使得在某种程度上能够符合位速率和需求屏蔽的需要。
    解码器的复杂度要小的多。他唯一的任务就是根据光谱组成的编码,合成声音信号。

压缩比,位速率和质量

    这些问题只到现在还没有明确论及:在编码和解码之后得到的最终声音文件不再和以前的声音文件一样了,因为所有的多余信息(精确一点讲是声音信号中的多余部分和人无法感知到的无关部分)都被排除掉了。重新组合出来的WAVE文件和原始的WAVE文件是有区别的,但是他们的声音是同样的。区别的大小要看他的压缩比如何了。
    因为压缩比在某种情况下是比较难度量的,所以在讨论对声音的压缩能力的时候专家采用位速率的概念。位速率表示一秒钟声音数据将要使用的平均位数量。位速率通常的单位是kbps,即每秒多少k位(1k=1024)。
    对于CD中的数字音频信号,其位速率是1411.2kbps。近似CD的声音质量采用了96kbps。

MP3常见问题

问:是的,MP3显然是很多应用的关键。那MP3有什么局限性呢?
答:MP3是感知音频编码的方案,他是为人耳设计的一种声音工具,他力图维持原始声音质量。
    相比较而言,专门的语音多媒体数字信号编码器是嗓音领域的一种工具,他要力图维持语音信号的可理解度。高级的语音编码方案(比如CS-ACELP[LD-CELP]被ITU规定为标准化为G.723.1[G.728])在低到5.3kbps的位速率下达到了可用的语音再复制,其多媒体数字信号编码器的延迟低于40ms。在这样低的位速率下,他们的在纯语音信号处理中表现要比MP3好,他们提供的低延迟很适合完全的语音通话场合。
    在MPEG-4方案中,一种综合处理语音信息和感知音频编码的可升级的方案被设计出来。

问:你提出的多媒体数字信号编码器,我可以了解的更多一点吗?
答:标准中给出了一些理论上的最小延迟:

  • 第一层:19ms(<50ms)

  • 第二层:35ms(100ms)

  • 第三层:59ms(150ms)

    实际值要比理论值大。由于实际值依赖于具体的执行,所以不了能给出精确值。括号内的值只是一个大概的数值,真正的多媒体数字信号编码将显示更高的器值。一般只有特定的应用不能忍受这种延迟,如远程通讯中的反馈链。对大多数其他应用对这种延迟都能容忍。

问:什么是MPEG?
答:MPEG是“运动图像专家组”(Moving Picture Experts Group)在国际标准化组织(ISO)和国际电工委员会的联合指导下开展工作。这个小组的工作主要针对运动图像和音频的编码标准。MPEG有他自己的主页,提供关于这个标准的很多方面的信息。

问:MPEG-3和MPEG第三层是一样的吗?
答:不一样。第三层是一个功能强大的编码方案他是MPEG标准中的一个。第三层是已经有的几个国际标准中关于声音的一个,这几个标准还包括MPEG-1和MPEG-2。但是并没有所谓的MPEG-3的定义。

问:如何得到MPEG文档?
答:你可以到ISO站点上去查询。

问:有可用的公共C语言源代码吗?
答:在很多站点上有公共C语言源代码,比如ftp://ftp.iis.fhg.de/pub/layer3/public c/。这个代码仅仅只是为了说明问题,所以不要指望他有多好的性能。

问:谈论关于MPEG音频,我总是听到“第一、二、三层”。他们是什么意思?
答:MPEG描述的是用高性能的感知编码方案进行的音频信号的压缩。在这个音频编码方案家族中有三个方案,简称为第一层、第二层和第三层。从第一层到第三层,编码器的复杂度和性能(每位速率的声音质量)都在提高。
    这三种多媒体数字信号编码器在分层结构上是兼容的,也就是说第N层的解码器可以解码第N层和低于N层的编码器编码的位流。

问:我们有了3个声音编码方案的家族,那MPEG的准确定义是什么?
答:对于每一层,标准详细说明了位流的格式和解码器。为了适应以后的发展,他没有特别定义编码器,但是每一层都有一个章节给出编码器实现的一个例子。

问:这三个音频层次的共同点是什么?
答:所有的层次用相同的基本结构。编码方案可以描述成“感知噪音形态”或“感知子带(subband)/变换编码”。编码器通过对声音信号的光谱组成分析,计算出转换的过滤带,并且通过一个心理分析模型,来估计出刚好能被人感知的噪音的级别。在他的量化和编码进程中,编码器试图分配适当的数据位数量,使得在某种程度上能够符合位速率和需求屏蔽的需要。
    解码器的复杂度要小的多。他唯一的任务就是根据光谱组成的编码,合成声音信号。
    所有的层用相同的分析过滤带(有32个子带的多个相)。第三层加上一个MDCT转换来增加频率分析。所有的层在其位流中用相同的信号头,以支持标准的层次结构。
    所有的层有相似的位错误敏感;都支持在他们的音频数据位流中增加和程序相关联的信息;都用32,44.1或者48kHz采样频率;都允许在相似的位速率下工作(第一层从32kbps到448kbps;第二层32kbps到384kbps;第三层从32kbps到320kbps)

问:从全局看,这三层之间的主要区别是什么?
答:从第一层到第三层,复杂程度在增加(主要是编码器上),总体上看,多媒体数字信息编码器的延迟时间在增加,性能也在增长(每个位速率的声音质量)。

问:在音频部分,MPEG-1和MPEG-2之间的主要区别是什么?
答:MPEG-1和MPEG-2用同一个家族的声音多媒体数字信息编码器,不管是第一层,第二层还是第三层。MPEG-2的新的音频特性是“低采样频率的扩展”和“多声道扩展”。“低采样频率的扩展”是指为那些限制了带宽需求的位速率非常低的应用系统服务的场合,新的采样频率是16,22.05或24kHz,位速率扩展到8kbps以下。“多声道扩展”是指服务于那些拥有5个主要声道(左、右、中置、左环绕和右环绕)的环绕声系统,有的环绕声系统甚至还要额外加一个低频增进声道来处理低频音信号,对这种系统,“多声道扩展”允许包含直至7个声道。

问:所有的兼容是相互的吗?
答:或多或少有一点。说有,是基于低采样频率的扩展上说的。显然,一个纯粹的MPEG-1解码器不能处理新的采样频率。

问:你的意思是兼容?包括所有额外的声道?请解释。
答:在MPEG-2的定义阶段,兼容性是个主要的课题。主要的思想是采用和MPEG-1一样的基本位流格式,主要的数据域象以前那样运载左右声道的信号,附加的数据域运载扩展的多声道信息。在细节上没有什么太大的区别,在这里有两个术语要做解释:“向前兼容”:MPEG-2的解码器可以接受MPEG-1的音频位流(他只有单声道或双声道);“向后兼容”:MPEG-1的解码器至少能够解码MPEG-2的音频位流中的主数据域的两个声道的信息,而MPEG-2的音频位流矩阵能够将环绕信息溶入到左右声道中,其方法是:左声道=左声道信号+a*中置信号+b*左环绕信号;右声道=右声道信号+a*中置信号+b*右环绕信号。这样MPEG-1解码器就能够全面地再现所有5个声道的信息了。一个MPEG-2解码器用多声道扩展信号(多余3个的音频信号)来再现5个环绕信道。

问:在你的脚注中,你指出为了在比如8kbps的单声道这样极低的位速率下能获得很好的性能,你们采用了一种叫MPEG2.5的非ISO扩展的多媒体数字信号解码器,对这一点你有什么说明的吗?
答:哦,是的,作为低采样频率的扩展,MPEG-2标准允许位速率低到8kbps。在这样低的位速率下,有效的音频带宽被限制了,比如到3kHz,因此实际的采样频率可以下降,比如到8kHz。采样频率越低,频率的解析就越好,相反,时间解析就越差,而控制信号和在位流格式中的音频有效载荷之间的比值就越好。由于MPEG-2标准定义16kHz作为最低的采样频率,我们建议更多的扩展应该建立在对MPEG-2的采样频率不断2分的基础上,也就是说我们建议8,11.025和12kHz,我们称这种扩展为MPEG2.5。

问:我看了你关于“类似CD”性能的说明,你说,在第一层数据压缩比可以达到4:1(或者384kbps的总位速率),在第二层压缩比为6..8:1(或256..192kbps总位速率),在第三层压缩比为12..14:1(或128..112kbps总位速率),你能更详细低解释一下吗?
答:好的,每一个层次都在一定的程度上有所改进。最简单的形式是第一层,他主要是针对DCC(数字小型盒式录音机)来设计的,主要采用384kbps。第二层是针对复杂性和性能均衡来设计的。他能够在位速率下降到192kbps的情况下保证声音质量。再往下声音质量就会受到影响。而第三层正是从此开始专为低位速率设计的,他在第二层的基础上增加了一些“高级的特色”:频率的解析提高了18倍,这使得第三层的编码器能够在屏蔽极限内更好地适应量化噪音。只有第三层采用熵编码来更好的减少冗余,也只有第三层采用一个位蓄积来减少人为的因素,同时第三层采用更先进联合立体声编码方案。

问:哦。现在请告诉我们更多的有关声音质量的东西,你们如何评定声音质量的?
答:现在不可选择的要用昂贵的听音测试了。在ISO-MPEG制定过程中,一个由很多经过训练的试听者组织的一系列国际性的听音测试已经进行过了。所有的这些测试采用了“三元刺激,隐蔽鉴定”的方法和“CCIR(国际无线电咨询委员会)损伤等级”来评估声音的质量。听力序列采用“ABC”,A=原始的,BC=一对原始/编码信号的随机序列,试听者必须用一个1.0到5.0之间的数对A和B进行评估。这个值的含义是5.0=透明(这就是原始数据),4.0=可察觉的,但不让人讨厌的(第一个能注意到的差别),3.0=稍微讨厌点的,2.0=讨厌的,1.0=非常讨厌的。

问:听音测试确实非常昂贵,他真的不可选择吗?
答:至少现在是这样的。以后也许不一样。为了对感知的多媒体数字信号编码器进行声音质量评定,所有常规的“质量”参数(如信噪比,失真度,带宽)就无效了,只要多媒体数字信号编码器的引入噪音和失真不影响感觉声音的质量就行。所以听音测试是必须的,而且如果精心准备和执行,他们能得到可靠的结果。

    然而,IIS也在致力于声音质量评估工具的标准和发展的研究。并且有了第一个可用的产品,一个实时衡量工具能够精细地提供对感知声音多媒体数字信息编码器的分析。

问:好的,回到听音测试和性能评估上来,下面告诉我们一些有关结果
答:你可能要学习很多关于AES文件和MPEG文档的细节的知识。对于MPEG第三层,主要结果是他总能在低位速率(每声道64kbps或更低)下获得好的性能。还不止这个,虽然第三层采用和第二层一样的工具集,但是有了一些针对非常低位速率的译码附加的高级译码特性。一个很好的例子是ISO-MPEG听音测试94年9月在日本完成的(doc. ISO/IEC JTC1/SC29/WG11 N0848, 11, Nov. 94)。另一个有趣的结果是ITU-R内部的TG 10/2任务小组得出的结论,他们在数字声音广播应用系统建议使用低位速率的音频译码。(ITU doc. BS. 1115)。

问:很有意思!能更详细的谈谈这一建议吗?
答:TG 10/2任务小组在93年10月完成的这个任务。该建议定义了三个领域的广播应用,建议每频道180kbps的第二层应用于发行和投稿领域(20kbps带宽,能在5层的多媒体数字信号编码器中听不到任何损伤),建议每频道128kbps的第二层应用于发射领域(20kHz带宽),建议MPEG第三层使用60(120)kbps应用于单声道(立体声)信号于实况报道领域(15kHz带宽)。

问:在哪能得到更多的信息?
答:在大约10年之间,感知音频编码在很多的学术会议上是一个长久的话题:例如AES(音频工程协会)组织每年两次的常规会议。你将发现下列有帮助的论文:

  1. Brandenburg, Stoll, et al.: "The ISO/MPEG-Audio Codec: A Generic
    Standard for Coding of High Quality Digital Audio", 92nd AES, Vienna Mar. 92, pp. 3336; revised version ("ISO-MPEG-1 Audio: A
    Generic Standard...") published in the Journal of AES, Vol.42, No.10, Oct. 94
  2. Eberlein, Popp, et al.: "Layer-3, a Flexible Coding Standard", 94th AES, Berlin Mar. 93, pp. 3493 3) Church, Grill, et al.: "ISDN and ISO/MPEG Layer-3 Audio Coding: Powerful New tools for
    Broadcast and Audio Production", 95th AES, New York Oct. 93, pp.
    3743
  3. Grill, Herre, et al.: "Improved MPEG-2 Audio Multi-Channel
    Encoding", 96th AES, Amsterdam Feb. 94, pp. 3865
  4. Witte, Dietz, et al.: "Single Chip Implementation of an ISO/MPEG
    Layer-3 Decoder", 96th AES, Amsterdam Feb. 94, pp. 3805
  5. Herre, Brandenburg, et al.: "Second Generation ISO/MPEG Audio
    Layer-3 Coding", 98th AES, Paris Feb. 95
  6. Dietz, Popp, et al.: "Audio Compression for Network Transmission", 99th AES, New York Oct. 95, pp. 4129
  7. Brandenburg, Bosi: "Overview of MPEG-Audio: Current and Future
    Standards for Low Bit-Rate Audio Coding, 99th AES, New York
    Oct. 95, pp. 4130
  8. Buchta, Meltzer, et al.: "The WorldStar Sound Format", 101st AES, Los Angeles Nov. 96, pp. 4385
  9. Bosi, Brandenburg, et al: "ISO/IEC MPEG-2 Advanced Audio
    Coding", 101st AES, Los Angeles Nov. 96, pp. 4382

    要注意的是这些论文并没有可以使用的电子版。你必须直接到AES去订阅正常出版的文本。

你可能感兴趣的:(小知识)