1.音乐格式分类
音乐格式五花八门,多如牛毛,但不外乎分为两大类:
一类为:音乐指令文件(如MIDI),一般由音乐创作软件制作而成,它实质上是一种音乐演奏的命令,不包括具体的声音数据,故文件很小;
另一类为:声音文件,是通过录音设备录制的原始声音,其实质上是一种二进制的采样数据,故文件较大。从播放形式上,声音文件还可以分为“音频流”和“非音频流”,前者能够一边下载一边收听,比如“.WMA”、“.RA”、“.MOV”等,后者则不能。所谓流媒体技术就是把连续的影像和声音信息经过压缩处理后放上网站服务器,让用户一边下载一边观看、收听,而不需要翟畸个压缩文件全部下载到自己机器后才可以观看的技术。
2.格式、编解码
(1) MIDI
乐器数字接口(Musical Instrument Digital Interface)的英文缩写,是数字音乐/电子合成乐器的统一国际标准。MIDI规范由美、曰几家著名电子乐器厂商于1983年共同制定,目的是解决各种电子乐器间存在的兼容性问题。MIDI规范不仅定义了电脑音乐程序、音乐合成器及其它电子音乐设备交换音乐信号的方式,而且还规定了不同厂家的电子乐器与电脑连接的电缆和硬件及设备间数据传输的协议,可用于为不同乐器创建数字声音,能很容易地模拟钢琴、小提琴等传统乐器的声音。MIDI本身并不能发出声音,它是一个协议,只包含用于产生特定声音的指令,而这些指令则包括调用何种MIDI设备的音色、声音的强弱及持续的时间等。电脑把这些指令交由声卡去合成相应的声音(如依指令发出钢琴声或小提琴声等)。最初,因为不同MIDI设备的乐器音色排列方法不一,所以会造成同一MIDI文件在不同的设备上会出现完全不同的放音效果(比如一个钢琴音色的MIDI文件,在不同设备上播放时会变成小提琴或者小号的音色)。为避免出现这种混乱情况,GM(General MIDI,通用MIDI)标准被提出并得到了Windows操作系统的支持,得到了相当广泛的应用。它规定了前128种常用乐器音色的编排方式,例如1号是钢琴、66号是萨克斯管等等。GM标准还描述了成为GM兼容格式的硬件设备应具有的其它特征,如GM标准音源同时发音数不少于24,MIDI通道为16,第10通道为打击乐声部等等,它实际上是对MIDI规范的补充。 Roland公司提出的GS标准在兼容GM标准的基础上,对其进行了发展,增强了音乐的表现力——它提供比GM标准数量更多的打击乐器组和更多的特殊音效。GS标准具有广泛的软硬件适应性,包括声卡、音乐爱好者的娱乐乐器到专业音乐器材等。后来,Yamaha公司又提出了基于GM标准的XG标准。相对于保存真实采样数据的声音文件,MIDI文件显得更加紧凑,其文件的大小要比WAV文件小得多——一分钟的WAV文件约要占用10MB的硬盘空间,而一分钟的MIDI却只有区区的3.4KB。现在,MIDI已经成为电脑音乐的代名词。电脑播放MIDI文件时, 有两种方法合成声音: FM合成和波表合成。FM合成是通过多个频率的声音混合来模拟乐器的声音;波表合成是将乐器的声音样本存储在声卡波形表中,播放时从波形表中取出来产生声音。采用波表合成技术可以产生更逼真的声音。MIDI文件有几个变通的格式,其中CMF文件是随声卡一起使用的音乐文件,与MIDI文件非常相似,只是文件头略有差别;另一种MIDI文件是Windows使用的RIFF文件的一种子格式,称为RMID,扩展名为RMI。
(2)WAV
由Microsoft公司开发的一种WAV声音文件格式,是如今电脑上最为常见的声音文件格式,它符合RIFF(Resource Interchange File Format)文件规范,用于保存Windows平台的音频信息资源,被Windows平台及其应用程序所广泛支持。Wave格式支持MSADPCM、CCITTALaw、CCITT μ Law和其它压缩算法,支持多种音频位数、采样频率和声道,但其缺点是文件体积较大(一分钟44kHZ、16bit Stereo的WAV文件约要占用10MB左右的硬盘空间),所以不适合长时间记录。
(3)MPEG
(Moving Picture Experts Group,活动图像专家组)代表的是MPEG活动影音压缩标准,MPEG音频文件指的是MPEG标准中的声音部分,即MPEG音频层(MPEG Audio Layer)。MPEG音频文件根据压缩质量和编码复杂程度的不同可分为三层(MPEG Audio Layer 1/2/3),分别与MP1、MP2和MP3这三种声音文件相对应。MPEG音频编码具有很高的压缩率,MP1和MP2的压缩率分别为4∶1和6∶1~8∶1,而MP3的压缩率则高达10∶1~12∶1,也就是说一分钟CD音质的音乐,未经压缩需要10MB存储空间,而经过MP3压缩编码后只有1MB左右,同时其音质基本保持不失真。因此,目前Internet上的音乐格式以MP3最为常见。MP3为降低声音失真采取了名为“感官编码技术”的编码算法:编码时先对音频文件进行频谱分析,然后用过滤器滤掉噪音电平,接着通过量化的方式将剩下的每一位打散排列,最后形成具有较高压缩比的MP3文件,并使压缩后的文件在回放时能够达到比较接近原音源的声音效果。虽然它是一种有损压缩,但是它的最大优势是以极小的声音失真换来了较高的压缩比。
(4)MP3
问世不久,就凭着较高的压缩比(12:1)和较好的音质创造了一个全新的音乐领域。然而,MP3的开放性却最终不可避免地导致了版权之争。在这样的背景下,文件更小、音质更佳,同时还能有效保护版权的MP4就应运而生了。MP4与MP3之间其实并没有必然的联系。首先,MP3是一种音频压缩的国际技术标准,而MP4却是一个商标的名称。其次,它采用的音频压缩技术也迥然不同,MP4采用的是美国电话电报公司(AT&T)所研发的、以“知觉编码”为关键技术的a2b音乐压缩技术(http://www.a2bmusic.com ),可将压缩比成功地提高到15:1(最大可达到20:1)而不影响音乐的实际听感。同时,MP4在加密和授权方面也做了特别的设计。它有如下特点:(1)每首MP4乐曲就是一个扩展名为.exe的可执行文件,在Windows里直接双击就可以运行播放,十分方便。MP4的这个优点同时又是它的先天缺陷---容易感染电脑病毒!(2)更小的体积!更好的音质?相对先进的a2b音频压缩技术的采用,使MP4文件大小仅为MP3的3/4左右,从这个角度来看,MP4更适合在Internet上传播,而且据说音质也更胜一筹,但我怎么也没听出它比MP3的音质更为优越。(3)独特的数字水印。MP4乐曲采用了名为“Solana”技术的数字水印,可方便地追踪和发现盗版发行行为。而且,任何针对MP4的非法解压行为,都可能导致MP4原文件的损毁。(4)支持版权保护。MP4乐曲还内置了包括与作者、版权持有者相关的文字、图像等版权说明,既可声明版权,又表示了对作者和演唱者的尊重。(5)比较完善的功能。MP4可独立调节左右声道音量控制;内置波形/分频动态音频显示和音乐管理器,可支持多种彩色图像、网站链接及无限制的滚动显示文本
(5)WMA
就是Windows Media Audio的缩写,是微软自己开发的Windows Midea Audio技术。它和Windows Midea Video一样,经历了几代改良后,变得非常出色。比起老掉牙的MP3压缩技术,WMA无论从技术性能(支持音频流)还是压缩率(比MP3高一倍)都远远把MP3抛在后面了。 据微软声称,用它来制作接近CD品质的音频文件,其体积仅相当于MP3的1/3。在48Kbps的传送速率下即可得到接近CD品质(Near-CD Quality)的音频数据流,在64Kbps的传送速率下可以得到与CD相同品质的音乐,而当连接速率超过96Kbps后则可以得到超过CD的品质。
(6)MPC
(MusePaCk)原先又被称为MPEGPlus(.mp+),是由德国人Andree Buschmann开发的一种完全免费的高品质音频格式。在其问世之前,Lame MP3是公认音质最好的有损压缩方案,追求音质的人对它趋之若鹜。但现在这个桂冠无疑该让给MPC了,在中高码率下,MPC可以做到比MP3更好音质。在高码率下,MPC的高频要比MP3细腻不少,可以在节省大量空间的前提下获得最佳音质的音乐欣赏,是目前最适合用于音乐欣赏的有损编码。不仅仅是音质,MPC还有编码速度快的优点,经MPC现任负责人Frank Klemm改良后的1.14版编码器,比慢工出细活的LAME要快得多!其实如果你没有MP3随身听,只是在自己的电脑上制作、播放音乐,完全可以弃MP3而转投MPC,因为后者在编码速度和音质上的表现绝对会让你彻底忘记MP3的!
(7)ogg
开放源代码的Ogg Vorbis(http://www.xiph.org 或http://www.vorbis.com),作为开放源...些变故之后,Ogg Vorbis终于在2002年7月释出了1.0版本。由于开放源码的东西向来都缺少枪手为其摇旗呐喊,所以国内并不是有很多的人了解Ogg Vorbis。Ogg Vorbis 是一种音频压缩格式,类似于MP3等现有的通过有损压缩算法进行音频压缩的音乐格式。但有一点不同的是,Ogg Vorbis格式是完全免费、开放源码且没有专利限制的。Vorbis 是这种音频压缩机制的名字,而Ogg则是一个计划的名字,该计划意图设计一个完全开放源码的多媒体系统。开放源代码能为用户在经济上带来收益,这一点很多人都知道了,但不能忘记的是Ogg Vorbis的技术也不是盖的。Ogg Vorbis文件的扩展名是.OGG。这种文件的设计格式是非常灵活的。它的最大特点是在文件格式已经固定下来后还能对音质进行明显的调节和新算法。现在创建的OGG文件可以在未来的任何播放器上播放,因此,这种文件格式可以不断地进行大小和音质的改良,而不影响旧有的编码器或播放器。在压缩技术上,Ogg Vorbis的最主要特点是使用了VBR(可变比特率)和ABR(平均比特率)方式进行编码。与MP3的CBR(固定比特率)相比可以达到更好的音质。Ogg Vorbis其他技术特性还包括:支持类似于MP3的ID3信息,但比MP3要灵活而又完整得多,实际上可以填写随意多的信息。Vorbis还具有比特率缩放功能,可以不用重新编码便可调节文件的比特率。Vorbis文件可以被分成小块并以样本粒度(granularity,专业术语,指数据可以被分割的最小尺寸)进行编辑;Vorbis支持多通道(大于2)音频流并使用了独创性的处理技术;Vorbis文件可以以逻辑方式相连接等。
(8)流式音频:RealMedia(RA/RM/RAM)
RealMedia采用的是RealNetworks公司自己开发的Real G2 Codec,它具有很多先进的设计,例如,SVT(Scalable Video Technology),该技术可以让速度较慢的电脑不需要解开所有的原始图像数据也能流畅观看节目;双向编码(Two-Encoding)技术类似于VBR,它可通过预先扫描整个影片,根据带宽的限制选择最优化压缩码率。RealMedia音频部分采用的是RealAudio,它具有21种编码方式,可实现声音在单声道、立体声音乐不同速率下的压缩。
流式音频:QuickTime(MOV)
QuickTimeApple的QuickTime是最早的视频工业标准,在1999年发布的QuickTime 4.0版本后开始支持真正的实时播放,其格式为“.mov”。它的视频压缩部分采用Sorenson Video技术,该技术支持VBR(Variable Bit Rate),也就是我们常说的动态码率,它可以动态地分配带宽以尽可能小的文件获得最好的播放效果,并能使在解压缩时获得平滑流畅的画面。音频部分QuickTime采用一种名为QDesiglMusic的技术,据说是一种比MP3更好的音频流技术。
VQF即TwinVQ(Transform-domain Weighted Interleave Vector Quantization),是由NTT(Nippon Telegraph and Telephone)与Yamaha共同开发的一种音频压缩技术。VQF的音频压缩率比标准的MPEG音频压缩率高出近一倍,可以达到18:1左右甚至更高。也就是说把一首4分钟的歌曲(WAV文件)压成MP3,大约需要4MB左右的硬盘空间,而同一首歌曲,如果使用VQF音频压缩技术的话,那只需要2MB左右的硬盘空间。因此,在音频压缩率方面,MP3和RA都不是VQF的对手。 如此之高的压缩率是否会影响音质呢?实际聆听的结果告诉我们——不会。当VQF以44KHz、80kbit/s的音频采样率压缩音乐时,它的音质优于44KHz、128kbit/s的MP3,当VQF以44KHz、96kbit/s的频率压缩时,它的音质几乎等于44KHz、256kbit/s的MP3!经SoundVQ压缩后的音频文件在进行回放效果试听时,几乎没有人能听出它与原音频文件的差异。
(9)AIFF(AIF/AIFF)
AIFF是音频交换文件格式(Audio Interchange File Format)的英文缩写,是Apple公司开发的一种声音文件格式,被Macintosh平台及其应用程序所支持,Netscape Navigator浏览器中的LiveAudio也支持AIFF格式,SGI及其它专业音频软件包也同样支持AIFF格式。AIFF支持ACE2、ACE8、MAC3和MAC6压缩,支持16位44.1kHz立体声。
(10)Audio(AU)
Audio文件是Sun微系统公司推出的一种经过压缩的数字声音格式。AU文件原先是UNIX操作系统下的数字声音文件。由于早期Internet上的Web服务器主要是基于UNIX的,所以.AU格式的文件在如今的Internet中也是常用的声音文件格式,Netscape Navigator浏览器中的LiveAudio也支持Audio格式的声音文件。
(11)Voice(VOC)
Voice文件是新加坡著名的多媒体公司Creative Labs开发的声音文件格式,多用于保存Creative Sound Blaster系列声卡所采集的声音数据,被Windows平台和DOS平台所支持,支持CCITTA Law和CCITTμLaw等压缩算法。在DOS程序和游戏中常会遇到这种文件,它是随声卡一起产生的数字声音文件,它与WAV文件的结构相似,可以通过一些工具软件方便地互相转换。
(12)Module(MOD、S3M、XM、MTM、FAR、KAR、IT)
模块(Module)格式同时具有MIDI与数字音频的共同特性——既包括如何演奏乐器的指令,又保存了数字声音信号的采样数据。因此,其声音回放质量对音频硬件的依赖性较小,也就是说,在不同的机器上可以获得基本相似的声音回放质量。模块文件根据不同的编码方法有MOD、S3M、XM、MTM、FAR、KAR、IT等多种不同格式。
(13)关于APE与FLAC
两者都为无损音频压缩格式。
文件大小:FLAC稍大
推荐设置下的编码速度:FLAC慢很多。
解压速度:APE慢很多。
硬件设备支持:FLAC占绝对优势。
播放容错度:APE损坏只有极少量播放软件(我只见到WINAMP)支持,FLAC轻易跳过错误部分。
解压容错度(最致命的问题):APE损坏整首歌曲无法解压,FLAC损坏可去除错误部分轻易解压(如果错误很少,跳过一下听觉是可以忍受的)。文件损坏是确实存在的(一般音乐网站上下载回来mp3不少是损坏的),上传(应该是最容易出现错误)、下载(最少出现错误,但上传的有错下载再好也没用)、代理下载、病毒破坏等都有可能导致文件损坏。没遇到只是因为你接触的不够多
FLAC
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项目包括以下几个方面:
1.数据流的格式
2.以库的形式提供的参考编码器和解码器
3.flac, 一个以命令行方式工作的可以编解码FLAC文件的程序(译注:有些象Lame吧?)
4.meteflac, 以命令行方式工作的FLAC文件的metedata编辑器
5.不同音频播放器的输入插件
我们所说的“FLAC是免费的”不仅仅意味着你可以不花钱而得到它。更重要的是FLAC的文件格式是对公众完全开放的,你可以以任何目的使用它(FLAC 项目只保留维护 FLAC 格式规格和确认兼容特性的权利),FLAC的文件格式和编码/解码的实现方式都不受任何已知专利的限制。还有,所有的源代码都在开放源代码的授权方式下可以得到。 FLAC是世界上第一个完全开放和免费的无损音频压缩格式 。
FLAC的特性:
无损失压缩: 被编码的音频(PCM)数据没有任何信息损失,解码输出的音频与编码器的输入的每一个字节都是一样的。每个数据帧都有一个当前帧的 16-bit CRC 校验码,用于监测数据传输错误。对整段音频数据,在文件头中还保存有一个针对原始未压缩音频数据的MD5标记,用于在解码和测试时对数据进行校验。
快速: FLAC更看重解码的速度。解码只需要整数运算,并且相对于大多数编码方式而言,对计算速度要求很低。在很普通的硬件上就可以轻松实现实时解码。
硬件支持: 由于FLAC提供了免费的解码范例,而且解码的复杂程度低,所以FLAC是目前唯一获得硬件支持的无损压缩编码。
可以流化: FLAC的每个数据帧都包含了解码所需的全部信息。解码当前帧无需参照它前面或后面的数据帧。FLAC使用了同步代码和CRC(类似于MPEG等编码格式),这样解码器在数据流中跳跃定位时可以有最小的时间延迟。
可以定位: FLAC支持快速采样精确定位。这不仅对于播放有益,更使得FLAC文件便于编辑。
富于弹性的metedata: 可以定义和实现新类型的metedata数据块,而不会影响旧的数据流和解码器的使用。目前已有的metedata类型包括tag,cue表,和定位表。已经注册的应用程序可以定义自己专用的metedata类型(译注:这一点与MIDI标准相似)。
非常适合于存档应用: FLAC是一个开放的编码格式,并且没有任何数据的损失,你可以将它转换为你需要的任何其他格式。除了每个数据帧的CRC和MD5标记对数据完整性的保障,flac(译注:FLAC项目提供的命令行方式编码工具)还提供了一个verify(校验)选项,当使用该选项进行编码的时候,编码的同时就会立即对已编码数据进行解码并与原始输入数据进行比较,一旦发现不同就会退出并且报警提示。(译者:怎么样,这样压缩出来的东西还有什么不放心的?)
便于对CD进行备份: FLAC有一个“cue表”metedata数据块用于保存CD的内容列表和所有音轨的索引点。你可以将一张CD保存到一个单一文件,并导入CD的cue表格,这样一个FLAC文件就可以完整地记录整张CD的全部信息。当你的原来的CD损坏的时候,你就可以用这个文件恢复出与原来一模一样的CD副本。
抗损伤: 由于FLAC的帧结构,使得一旦发生数据流的损坏,损失会被限制在受损伤的数据帧之内。一般只是会丢失很短的一个片段。而很多其他无损音频压缩格式在遇到损伤的时候,一个损伤就会造成后面所有数据的丢失。
FLAC不具有的特性:
数据缩水。FLAC是专门并且仅仅为无损压缩而设计的,您可以选用许多其他优秀的有损压缩方式如Vorbis, MPC, 和MP3(LAME提供了一个优秀的开放源代码的实现)。
SDMI(例如cetera)兼容。FLAC不准备支持任何复制保护方法,实际上这些手段最终都是在浪费数据。(从另一个角度看,由于所有这些手段最终都被证明是无效的,所以也可以说FLAC把这些无用数据压缩到了零!)当然我们不能阻止某些人利用专用的meteblock进行复制保护,但是他们的保护只会在他们自己解码产品上有效,其他解码器会跳过这些专门的meteblock的。