LinuxSir.cn,穿越时空的Linuxsir!

 找回密码
 注册
搜索
热搜: shell linux mysql
查看: 2085|回复: 3

[多媒体]常见数字音频格式介绍

[复制链接]
发表于 2005-12-14 10:21:12 | 显示全部楼层 |阅读模式
转载自:http://it.enorth.com.cn/system/2005/08/22/001099688.shtml  
原题:教你玩转MP3之一:主流音频格式全接触
__________________

  说起MP3,我们就不得不考虑音源问题,一台好的MP3播放器,加上好的音源,才能给我们带来更高的音乐享受。现在我们就来看看目前比较流行的音频格式以及它们的特点。

  [color="Red"]什么是数字音频格式?
  数字音源,也就是数字音频格式,最早指的是CD,CD经过压缩之后,又衍生出多种适于在随身听上播放的格式,这些压缩过的格式,我们可以分为两大类:有损压缩的和无损压缩的。这里所说的压缩,是指把PCM编码的或者是WAV格式的音频流经过特殊的压缩处理,转换成其他格式,从而达到减小文件体积的效果。有损/无损,是指经过压缩过后,新文件所保留的声音信号相对于原来的PCM/WAV格式的信号是否有所削减。(注意:不是相对于自然声音,因为数字音频,相对于自然声音来说,只能无限接近无损,要达到真正的无损是不可能的,所以约定俗成,以PCM作为最高的保真水平。)既然有有损压缩,那么,相对的,就必定有无损压缩了。

[color="Red"]有损压缩

  有损压缩的音源,其实我们都比较熟悉,目前流行的有损格式主要有MP3, WMA, OGG, MP3pro, AAC, VQF, ASF等。

  [color="Blue"]MP3格式
  MP3格式是最为大家所熟知的了,目前使用的用户最多,网上最流行的音乐文件绝大部分也是MP3格式的。MP3全称是MPEG Audio Laye-3,它诞生于1993年,其“父母”是德国夫朗和费研究院(Faunhofe IIS)和法国汤姆生(Thomson)公司。

  早期的MP3编码技术并不完善,很长的一段时间以来,大多数人都使用128Kbps的CBR(固定编码率)格式来对MP3文件编码,直到最近, VBR(可变编码率)和ABR(平均编码率)的压缩方式出现,编码的比特率最高可达320Kbps,MP3文件在音质上才开始有所进步,而LAME的出现,则为这一进步带来了质的飞跃,一会我们会介绍如何用LAME这个优质MP3压缩软件来制作高质量MP3。

  [color="Blue"]WMA格式
  在绝大多数的MP3播放器上,最基本支持的两种格式是 MP3和WMA。这说明WMA格式也是非常重要的。WMA,Windows Media Audio,明眼人一眼就能看出这是微软的杰作。WMA相对于MP3的最大特点就是有极强的可保护性,可以说,WMA的推出,就是针对MP3没有版权保护的缺点来的。自从Napste破产以来,微软更是对WMA大肆宣传,大有想推翻MP3的意思。就目前看来,WMA可能是最受唱片公司所欢迎的格式了。除有版权保护外,WMA与MP3音质和体积上的对比特点,可以总结为:低比特率(<128Kbps)时,WMA体积比MP3小,音质比MP3好;而在高比特率(>128K)时,MP3的音质则比WMA好。

  [color="Blue"]MP3pro格式
  在WMA刚开始流行的时候,还没有高品质的MP3,所以当时MP3的地位真的有点动摇了,于是Thomson公司在2001年6月,携手 Faunhofe IIS,发布了一种新的格式——MP3pro,这是对MP3格式的改良,编码算法比MP3要复杂得多,简单的说,就是分两层编码,在MP3的基础上,再与另外一种技术(SB频段复制技术)混合编码。MP3pro与原来的MP3兼容,文件扩展名同为.mp3,这种格式在低位率的时候,压缩效率非常高,所以在一般音质情况下,同位率的MP3pro的体积要比MP3甚至WMA都小得多,而音质却是三者中最好的。从技术上讲,MP3pro是一种非常优秀的编码方式,但是它高昂的专利费,使它没有真正流行起来,而目前据笔者所知,也只有Thomsn的机器才能真正支持MP3pro格式的文件。

  [color="Blue"]OGG格式
  随着MP3播放器的流行,MP3播放器的品牌和厂家越来越多,竞争也越来越激烈,再加上MP3手机的压挤,许多上游MP3随身听厂商纷纷寻找出路,有的在外观上创新,有的在做工上求精,有的推出众多大容量机型,有的则在解码芯片上做文章,还有的改进解码功能,支持新的文件格式。在众多的新格式当中,OGG以其免费、开源的特点,赢得了MP3播放器厂商的青睐。

  这里说的OGG全称应该是OGG Vobis。OGG并不是一个厂商的名字,而是一个庞大的多媒体开发计划的项目名称,将涉及视频音频等方面的编码开发。Vobis则是某音乐作品中一个人物的名字,这里只是借用它,来代表OGG Vobis是关于音频方便的。OGG Vobis有一个很出众的特点,就是支持多声道,随着它的流行,以后用随身听来听DTS编码的多声道作品将不会是梦想。OGG Vobis在压缩技术上比MP3好,但稍逊于MP3pro,但它的多声道,免费,开源这些特点,使它很有可能成为一个流行的趋势,这也正是一些MP3播放器对其支持的原因。

  至此,我们已经了解了四种流行的有损音源格式,对于MP3播放器来说,这4种格式的音源已经完全够用了,至于ASF,A,VQF,AAC等等这些,虽然各有优点,但目前并不流行,支持的随身听非常有限,笔者也不再浪费笔墨去详谈了,下面是他们的简单介绍

  ASF是Windows Media所使用的一种流媒体格式,与Windows Media紧密相连,理论上最为稳定;A即ealAudio,是eal和Sony合作的产品,具有Atrac3的特性,文件小,适与在线播放;VQF是雅玛哈公司的产品,压缩比高,但同样不开放源代码,没有太多的流行能力;AAC,Advance Audio Coding,高级音频编码技术,杜比实验室的产品,支持的量化级和采样率都很高,支持多声道,音质好,但对硬件要求相对高些,所以没多少MP3厂商愿意对其支持,目前就只有iPod对其支持,但也仅限于很普通的音乐文件。

[color="Red"]无损压缩

  音频的无损压缩,大家可能还比较陌生,但这并不意味着无损压缩技术发展得不好,相反,在无损压缩领域,早就有许多很出色的作品,比如APE, FLAC,WavPack,LPAC,WMALossless,AppleLossless,La,OptimFOG,Shoten等。今天,笔者将向大家介绍几款能够(或者最有可能可以)在MP3播放器上播放的无损压缩格式,希望可以通过本文,使大家对无损压缩有一个认识,也在一定程度上可以让大家以后选购MP3播放器时有所借鉴。

  [color="Blue"]FLAC
  首先为大家介绍一下FLAC吧,因为目前已经有好几款机子支持FLAC格式了。FLAC(Fee Lossless Audio Codec),全称应该叫OGG FLAC,因为它是OGG计划的一部分,当然也就是开源,免费的了,这也难怪它这么快就得到了多家MP3厂商的支持。FLAC压缩比可以达到2:1,对于无损压缩来说,这已经是相当高的比例了;而且它解码速度快,只需进行整数运算即可完成整个解码过程,对CPU的运算能力要求很低,所以普通的随身听,都可以轻松实现实时解码。当然,这是需要软件支持的。FLAC是目前唯一获得硬件支持的无损压缩编码,除MP3播放器外,现在已经有许多汽车播放器和家用音响设备支持FLAC格式了。

  [color="Blue"]APE
  在写本文的时候,笔者正在听APE格式的音乐,这使笔者马上反应过来,要介绍音频的无损压缩格式,APE是必不可少的。为什么呢?因为APE在无损压缩领域非常之流行,它就相当于该领域中的MP3一样,大家说,这样的格式,笔者能不给大家介绍介绍吗?APE,是Monkey’s Audio出品的一种无损压缩格式,它出现得比FLAC早,而且名气也比FLAC大,支持它的软件也比较多,笔者认识无损压缩的音乐,也是从APE开始的。

  在APE出现之前,音乐迷们都认为以CD或者WAV来保存自己喜欢的音乐素材是最好的方法了,但APE的出现,足以使他们改变这种看法,因为 APE既可以保持音乐信号的无损,又可以以比A高得多的压缩率(接近2:1)压缩WAV文件,而且可以无须解压而直接播放。APE的这些特点,都是其他无损压缩格式所争相效仿的。APE如此流行,在网上也比较容易能下载到APE格式的文件,不过APE需要软硬件的支持,目前还没有技术应用在在随身听上面,虽然APE格式作为无损,音质得到保证,但目前还没有厂商开发出播放APE格式的随身听。

  一段关于APE格式的插曲
  在这里笔者要插入一段小小的插曲,用以说明无损压缩是否能真正地做到无损。笔者曾经跟几位短歌行的朋友讨论过这样一个问题:APE是真正的无损,还是只是损失极小而可忽略不计。虽然笔者所看过的介绍,都支持APE是真正无损的说法,但一位短歌行的网友提出了他自己的见解,“然是真正无损,为什么在制作的时候,有压缩品质可以选择?”当时笔者的第一反应是:这个压缩品质应该是跟A的压缩品质一样吧,用运算时间来换取压缩率,但毕竟没有经过亲自实验,所以笔者当时没有立刻反驳那位网友,而是马上进行了一小段试验:找来一个WAV文件,用WINMD5检验一下它的MD5码,记录下来,然后用Monkey’s Audio对其以不同的压缩品质进行压缩,使之变成APE文件,然后再把这些APE文件解压成WAV,最后对比一下几个WAV文件的MD5码,结果发现几个WAV文件的MD5码是完全一样的,这就足以证明WAV->APE->WAV的过程是真正的无损。有兴趣的读者也可以用此方法检验一下其他格式的无损压缩是否也是真正无损。


  [color="Blue"]AppleLossless
  AppleLossless这种音频格式,一看就知道是Apple公司的杰作。这种格式制作非常方便,用iTunes即可直接把音乐CD制作成AplleLossless文件。不过,也只有Apple自家的软件才能播放出来。虽然这种格式没有什么出众的特点,兼容性也不强,但毕竟已经得到了iPod的支持,所以我们是不能忽视其存在的。

  [color="Blue"]WMALossles
  和AppleLossLess相似的,还有一种叫做WMALossless格式。不用多说,肯定又是微软的产品。 WMALossless不知道应不应该算是WMA的一种,因为它的扩展名毕竟也是WMA。WMALossless的制作也相当方便,用WMP就可以直接从 CD上抓下来了,不过要9.0以上版本的WMP才支持这个功能哦。目前大多数MP3播放器都支持WMA格式,但笔者刚才用自己的MP3播放器试验了一下,它并不支持WMALossless的播放,而是直接跳过这个文件了。笔者认为,如果WMALossless也是WMA的一种的话,那么解码方式应该不会相差太大,要让MP3播放器支持WMALossless的可能性还是挺大的。
 楼主| 发表于 2005-12-14 10:36:55 | 显示全部楼层

我比较钟情flac,再转

无损音频压缩格式FLAC——FREE LOSSLESS AUDIO CODEC
转引自美丽元素论坛(www.b-factors.com)作者:Superguest 
-----------------------------------------------------------------------------------------
以下文章是本人熬夜从FLAC官方网站翻译下来的,希望能够和大家一起对这种在国外已经替代APE的优秀格式有所了解。

FLAC代表 Free Lossless Audio Codec - 免费的无损音频压缩 。
简而言之,FLAC与MP3相仿,但是是无损压缩的,也就是说音频以FLAC方式压缩不会丢失任何信息。这种压缩与Zip的方式类似,但是FLAC将给你更大的压缩比率,因为FLAC是专门针对音频的特点设计的压缩方式,并且你可以使用播放器播放FLAC压缩的文件,就象通常播放你的MP3文件一样(现在已经有许多汽车播放器和家用音响设备支持FLAC,在FLAC的网站上你可以找到这些设备厂家的连接)。

FLAC是免费的并且支持大多数的操作系统 ,包括Windows, "unix" (Linux, *BSD, Solaris, OS X, IRIX), BeOS, OS/2, 和Amiga。并且FLAC提供了在开发工具autotools, MSVC, Watcom C, 和Project Builder上的build系统。

FLAC项目包括以下几个方面:
[color="Blue"]数据流的格式
以库的形式提供的参考编码器和解码器
flac, 一个以命令行方式工作的可以编解码FLAC文件的程序(译注:有些象Lame吧?)
metaflac, 以命令行方式工作的FLAC文件的metadata编辑器
不同音频播放器的输入插件

我们所说的“FLAC是免费的”不仅仅意味着你可以不花钱而得到它。更重要的是FLAC的文件格式是对公众完全开放的,你可以以任何目的使用它(FLAC 项目只保留维护 FLAC 格式规格和确认兼容特性的权利),FLAC的文件格式和编码/解码的实现方式都不受任何已知专利的限制。还有,所有的源代码都在开放源代码的授权方式下可以得到。
FLAC是世界上第一个完全开放和免费的无损音频压缩格式 。

[color="Blue"]FLAC的特性:
[color="Red"]
无损失压缩: 被编码的音频(PCM)数据没有任何信息损失,解码输出的音频与编码器的输入的每一个字节都是一样的。每个数据帧都有一个当前帧的 16-bit CRC 校验码,用于监测数据传输错误。对整段音频数据,在文件头中还保存有一个针对原始未压缩音频数据的MD5标记,用于在解码和测试时对数据进行校验。

[color="Red"]快速: FLAC更看重解码的速度。解码只需要整数运算,并且相对于大多数编码方式而言,对计算速度要求很低。在很普通的硬件上就可以轻松实现实时解码。
[color="Red"]
硬件支持: 由于FLAC提供了免费的解码范例,而且解码的复杂程度低,所以FLAC是目前唯一获得硬件支持的无损压缩编码。
[color="Red"]
可以流化: FLAC的每个数据帧都包含了解码所需的全部信息。解码当前帧无需参照它前面或后面的数据帧。FLAC使用了同步代码和CRC(类似于MPEG等编码格式),这样解码器在数据流中跳跃定位时可以有最小的时间延迟。
[color="Red"]
可以定位: FLAC支持快速采样精确定位。这不仅对于播放有益,更使得FLAC文件便于编辑。
[color="Red"]
富于弹性的metadata: 可以定义和实现新类型的metadata数据块,而不会影响旧的数据流和解码器的使用。目前已有的metadata类型包括tag,cue表,和定位表。已经注册的应用程序可以定义自己专用的metadata类型(译注:这一点与MIDI标准相似)。

[color="Red"]非常适合于存档应用: FLAC是一个开放的编码格式,并且没有任何数据的损失,你可以将它转换为你需要的任何其他格式。除了每个数据帧的CRC和MD5标记对数据完整性的保障,flac(译注:FLAC项目提供的命令行方式编码工具)还提供了一个verify(校验)选项,当使用该选项进行编码的时候,编码的同时就会立即对已编码数据进行解码并与原始输入数据进行比较,一旦发现不同就会退出并且报警提示。(译者:怎么样,这样压缩出来的东西还有什么不放心的?)
[color="Red"]
便于对CD进行备份: FLAC有一个“cue表”metadata数据块用于保存CD的内容列表和所有音轨的索引点。你可以将一张CD保存到一个单一文件,并导入CD的cue 表格,这样一个FLAC文件就可以完整地记录整张CD的全部信息。当你的原来的CD损坏的时候,你就可以用这个文件恢复出与原来一模一样的CD副本。
[color="Red"]
抗损伤: 由于FLAC的帧结构,使得一旦发生数据流的损坏,损失会被限制在受损伤的数据帧之内。一般只是会丢失很短的一个片段。而很多其他无损音频压缩格式在遇到损伤的时候,一个损伤就会造成后面所有数据的丢失。
[color="Blue"]
FLAC不具有的特性:
数据缩水:FLAC是专门并且仅仅为无损压缩而设计的,您可以选用许多其他优秀的有损压缩方式如Vorbis, MPC, 和MP3(LAME提供了一个优秀的开放源代码的实现)。

SDMI(例如cetera)兼容:FLAC不准备支持任何复制保护方法,实际上这些手段最终都是在浪费数据。(从另一个角度看,由于所有这些手段最终都被证明是无效的,所以也可以说FLAC把这些无用数据压缩到了零!)当然我们不能阻止某些人利用专用的metablock进行复制保护,但是他们的保护只会在他们自己解码产品上有效,其他解码器会跳过这些专门的metablock的。
回复 支持 反对

使用道具 举报

发表于 2005-12-14 10:57:19 | 显示全部楼层
好,非常好.加精.
不过我有个建议,麻烦您改一下您的签名,为了保证我们论坛的长远,咱们还是少发这种言论,大家都爱国,但是在这种地方不宜发表这方面的言论.谢谢合作!
也谢谢您对我们理论版的支持!
回复 支持 反对

使用道具 举报

发表于 2005-12-14 13:23:45 | 显示全部楼层
ogg.cn 网站不错
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 返回顶部 返回列表