维基百科:编解码器科普
本帖最后由 孟雨亲王 于 2015-7-8 16:55 编辑一、编解码器
编解码器(英语:codec)指的是一个能够对一个信号或者一个数据流进行编解码操作的设备或者程序。这里指的变换既包括将信号或者数据流进行编码(通常是为了传输、存储或者加密)或者提获取到一个编码流的操作,也包括为了观察或者处理从这个编码流中恢复适合观察或操作的形式的操作。编解码器经常用在视频会议和流媒体等应用中。一个编解码器不应该同编码或压缩格式或标准混淆,一种格式是一种文档(所谓标准),一种存储数据的方式,但是编解码器却是一段程序用于读或写这样的文件。实际上,有时编解码器不严谨地意指格式。
编解码器编码一个数据流或者用于传输、存储、加密的信号,解码一段用于回放或编辑。视频数码机的ADC将它的模拟信号转换成数字信号,然后数字信号通过视频编码器用于存储和传输。接受器然后通过视频解码器转换成模拟信号用于最后的模拟显示。经过编码的音频或者视频原始码流经常被叫做“Essence”(有译作“本体”,“精”),以区别于之后加入码流的元信息和其它用以帮助访问码流和增强码流鲁棒性的数据。大多数编解码器是有损的,目的是为了得到更大的压缩比和更小的文件大小。当然也有无损的编解码器,但是通常没有必要为了一些几乎注意不到的的质量损失而大大增加编码后文件的大小。除非该编码的结果还将在以后进行下一步的处理,此时连续的有损编码通常会带来较大的质量损失。
很多多媒体数据流需要同时包含音频数据和视频数据,这时通常会加入一些用于音频和视频数据同步的元数据。这三种数据流可能会被不同的程序,进程或者硬件处理,但是当它们传输或者存储的时候,这三种数据通常是被封装在一起的。通常这种封装是通过视频文件格式来实现的,例如常见的*.mpg, *.avi, *.mov, *.mp4, *.aac, *.rm or *.tta. 这些格式中有些只能使用某些编解码器,而更多可以以容器的方式使用各种编解码器。
编解码器对应的英文“codec”(coder和decoder简化而成的合成词语)和decode通常指软件,当特指硬件的时候,通常使用“endec”这个单词。
二、压缩质量
[*]有损编解码
在软件界有许多相对更加流行的编解码器是有损的,意味着它们压缩过程牺牲了一定的质量。通常这种压缩实际上同未被压缩的声音或图像没区别。更小的数据集缓解了相对高昂的存储器。较低的数据率也降低了花销并在数据传输过程中提升了品质。
[*]无损编解码
也有许多的无损压缩,特别应用于在需要原始流中所有信息时压缩模式下获取数据。如果保留数据流的原始品质比削减相应的更大数据更加重要,那么无损压缩更佳。连续使用多种编解码器或者编码体系也会显著的降低质量。不断下降的存储空间开销和网络带宽正使得有损压缩的需求下降。
三、常见音频编解码格式介绍
本帖最后由 孟雨亲王 于 2015-7-8 16:33 编辑
1. Wave 波形声音
Waveform Audio File Format(WAVE,又或者是因为扩展名而被大众所知的WAV),是微软与IBM公司所开发在个人电脑存储音频流的编码格式,在Windows平台的应用软件受到广泛的支持,地位上类似于麦金塔电脑里的AIFF。由于此音频格式未经过特别的压缩处理,所以在音质方面不会出现有损的情况,但文件的体积因而在众多音频格式中较为大。
.WAV 与.AIFF 都是被微软操作系统、麦金塔操作系统、Linux操作系统所兼容的,需要特别注意的是,WAV文件与无损文件是不完全相同的,WAV文件只是不去对原有文件去做压缩,这里要分两个层面去做分析与探讨。
第一:源文件案是否是无损的? 若是将有损压缩的文件(例如: mp3文件)转成WAV文件,那么WAV文件也只是忠实地呈现有损文件而已;若源文件案已被压缩破坏,那不能称WAV就是无损文件。
第二:制作WAV文件时,会有一个采样率,根据采样定理,若此采样率低于奈奎斯特频率(即采样频率为最大频率的二分之一),那么超过此最大频率的频段,将会产生混叠的情况,使原始信号受到污染,亦不能称此WAV文件就是无损文件。
虽然WAV文件也能存储被压缩过的文件,但是大多数的WAV文件是用于CD存储原声带的,所以一般来说一般人联想到WAV文件就联想到无损文件,也是无可厚非的。值得注意的是,CD存储的原声带也不代表是完全无损的,音乐制作人会将录制的声音处理、后制成母带,通常采样率为96,000赫兹,之后通过转换程序,以16bits、44,100赫兹去做取样。
因为人耳通常只能感受频率从100至20,000赫兹的信号,根据采样定理,44,100赫兹超过人耳感受极限的两倍,因此在数学上,CD原声带并非无损的,然而在生理上,CD原声带可视为无损的。
WAV文件通常不能超过4GB,有些使用WAV文件的拨放器甚至无法支持超过2GB的WAV文件,虽然这样的文件可以使16bits、44,100赫兹的CD文件播放将近6.9个小时,但有些情况下,还是有可能超过这些限制,此时可以对于时间轴去切割成无数的WAV文件,去突破4GB的限制,许多CD专辑之中,就会利用这样的技术去发布更多的歌曲,通常命名为“Disk-1”与“Disk-2”直到“Disk-n”能完成文件存储为止。
本帖最后由 孟雨亲王 于 2015-7-8 16:38 编辑
2. MP3
动态图像专家组-1或动态图像专家组-2 音频层III(MPEG-1 or MPEG-2 Audio Layer III),经常称为MP3,是当今相当流行的一种数字音频编码和有损压缩格式,它被设计来大幅降低音频数据量,而对于大多数用户的听觉感受来说,重放的音质与最初的不压缩音频相比没有明显的下降。它是在1991年,由位于德国埃尔朗根的研究组织Fraunhofer-Gesellschaft的一组工程师发明和标准化的。MP3的普及,曾对音乐产业造成极大的冲击与影响。
概观
MP3是一个数据压缩格式。它舍弃脉冲编码调制(PCM)音频数据中,对人类听觉不重要的数据(类似于JPEG是一个有损图像压缩),从而达到了压缩成小得多的文件大小。
在MP3中使用了许多技术,其中包括心理声学,以确定音频的哪一部分可以丢弃。MP3音频可以按照不同的比特率进行压缩,提供了权衡数据大小和音质之间的依据。
MP3格式使用了混合的转换机制将时域信号转换成频域信号:
32波段多相积分滤波器(PQF)
36或者12 tap 改良离散余弦滤波器(MDCT);每个子波段大小可以在0...1和2...31之间独立选择
混叠衰减后处理
MP3的音频质量
因为MP3是一种有损压缩格式,它提供了多种不同“比特率”(bit rate)的选项—也就是用来表示每秒音频所需的编码数据位数。典型的速度介于128kbps和320kbps(kbit/s)之间。与此对照的是,CD上未经压缩的音频比特率是1411.2 kbps(16位/采样点× 44100采样点/秒× 2通道)。
使用较低比特率编码的MP3文件通常回放质量较低。使用过低的比特率,“压缩噪声(compression artifact)”(原始录音中没有的声音)将会在回放时出现。说明压缩噪声的一个好例子是:压缩欢呼的声音;由于它的随机性和急剧变化,所以编码器的错误就会更明显,并且听起来就象回声。
除了编码文件的比特率之外;MP3文件的质量,也与编码器的质量以及编码信号的难度有关。使用优质编码器编码的普通信号,一些人认为128kbit/s的MP3以及44.1kHz的CD采样的音质近似于CD音质,同时得到了大约11:1的压缩率。在这个比率下正确编码的MP3只能够获得比调频广播更好的音质,这主要是那些模拟介质的带宽限制、信噪比和其他一些限制。然而,听力测试显示经过简单的练习测试听众能够可靠地区分出128kbit/s MP3与原始CD的区别[来源请求]。在许多情况下他们认为MP3音质太低是不可接受的,然而其他一些听众或者换个环境(如在嘈杂的车中或者聚会上)他们又认为音质是可接受的。很显然,MP3编码的瑕疵在低端声卡或者扬声器上比较不明显,而在连接到计算机的高质量立体声系统,尤其是使用高保真音响设备或者高质量的耳机时则比较明显。
Fraunhofer Gesellschaft(FhG)在他们的官方网站上,公布了下面的MPEG-1 Layer 1/2/3的压缩率和数据速率用于比较:
Layer 1: 384 kbit/s,压缩率4:1
Layer 2: 192 - 256 kbit/s,压缩率8:1-6:1
Layer 3: 112 - 128 kbit/s,压缩率12:1-10:1
不同层面之间的差别是因为它们使用了不同的心理声学模型导致的;Layer 1的算法相当简单,所以透明编码就需要更高的比特率。然而,由于不同的编码器使用不同的模型,很难进行这样的完全比较。
许多人认为所引用的速率,出于对Layer 2和Layer 3记录的偏爱,而出现了严重扭曲。他们争辩说实际的速率如下所列:
Layer 1: 384 kbit/s优秀
Layer 2: 256 - 384 kbit/s优秀,224 - 256 kbit/s很好,192 - 224 kbit/s好
Layer 3: 224 - 320 kbit/s优秀,192 - 224 kbit/s很好,128 - 192 kbit/s好
当比较压缩机制时,很重要的是要使用同等音质的编码器。将新编码器与基于过时技术甚至是带有缺陷的旧编码器比较可能会产生对于旧格式不利的结果。由于有损编码会丢失信息这样一个现实,MP3算法通过创建人类听觉总体特征的模型尽量保证丢弃的部分不被人耳识别出来(例如,由于noise masking),不同的编码器能够在不同程度上实现这一点。
一些可能的编码器:
Mike Cheng在1998年早些时候首次开发的LAME。与其他相比,它是一个完全遵循LGPL的MP3编码器,它有良好的速度和音质,甚至对MP3技术的后继版本形成了挑战。
Fraunhofer Gesellschaft:有些编码器不错,有些有缺陷。
有许多的早期编码器现在已经不再广泛使用:
ISO dist10
BladeEnc
ACM Producer Pro.
好的编码器能够在128到160kbit/s下达到可接受的音质,在160到192kbit/s下达到接近透明的音质。所以不在特定编码器或者最好的编码器话题内说128kbit/s或者192kbit/s下的音质是容易引起误解的。一个好的编码器在128kbit/s下生成的MP3有可能比一个不好的编码器在192kbit/s下生成的MP3音质更好。另外,即使是同样的编码器同样的文件大小,一个不变比特率的MP3可能比一个变比特率的MP3音质要差很多。
需要注意的一个重要问题是音频信号的质量是一个主观判断。安慰效果(Placebo effect)是很严重的,许多用户声明要有一定水准的透明度。许多用户在A/B测试中都没有通过,他们无法在更低的比特率下区分文件。一个特定的比特率对于有些用户来说是足够的,对于另外一些用户来说是不够的。每个人的声音感知可能有所不同,所以一个能够满足所有人的特定心理声学模型并不明显存在。仅仅改变试听环境,如音频播放系统或者环境可能就会显现出有损压缩所产生的音质降低。上面给出的数字只是大多数人的一个大致有效参考,但是在有损压缩领域真正有效的压缩过程质量测试手段就是试听音频结果。
如果你的目标是实现没有质量损失的音频文件或者用在演播室中的音频文件,就应该使用无损压缩(Lossless)算法,目前能够将16位PCM音频数据压缩到38%并且声音没有任何损失,这样的无损压缩编码有LA、Sony ATRAC Advanced Lossless、Dolby TrueHD、DTS Master Lossless Audio、MLP、Sony Reality Audio、WavPack、Apple Lossless、TTA、FLAC、Windows Media Audio 9 Lossless(WMA)和APE(Monkey's Audio)等等。
对于需要进行编辑、混合处理的音频文件要尽量使用无损格式,否则有损压缩产生的误差可能在处理后无法预测,多次编码产生的损失将会混杂在一起,在处理之后进行编码这些损失将会变得更加明显。无损压缩在降低压缩率的代价下能够达到最好的结果。
一些简单的编辑操作,如切掉音频的部分片段,可以直接在MP3数据上操作而不需要重新编码。对于这些操作来说,只要使用合适的软件("mp3DirectCut"和"MP3Gain"),上面提到的问题可以不必考虑。
比特率
比特率对于MP3文件来说是可变的。总的原则是比特率越高则声音文件中包含的原始声音信息越多,这样回放时声音质量也越高。在MP3编码的早期,整个文件使用一个固定的比特率,称为固定码率(CBR)。
MPEG-1 Layer 3允许使用的比特率是32、40、48、56、64、80、96、112、128、160、192、224、256和320 kbit/s,允许的采样频率是32、44.1和48kHz。44.1kHz是最为经常使用的速度(与CD的采样速率相同),128kbit/s是事实上“好品质”的标准,尽管320kbit/s在P2P文件共享网络上越来越受到欢迎。MPEG-2和[非正式的]MPEG-2.5包括其他一些比特率:6、12、24、32、40、48、56、64、80、96、112、128、144、160kbit/s。
可变码率(VBR)也是可能的。MP3文件的中的音频切分成有自己不同比特率的帧,这样在文件编码的时候就可以动态地改变比特率。尽管在最初的实现中并没有这项功能。VBR技术现在音频/视频编码领域已经得到了广泛的应用,这项技术使得在声音变化大的部分使用较大的比特率而在声音变化小的部分使用较小的比特率成为可能。这个方法类似于声音控制的磁带录音机不记录静止部分节省磁带消耗。一些编码器在很大程度上依赖于这项技术。
高达640kbit/s的比特率可以使用LAME编码器和自由格式来实现,但是由于它并非标准比特率之一,有些低端或早期的MP3播放器不能够播放这些文件。
MP3的设计局限
MP3格式存有设计局限,即使使用更好的编码器仍旧不能克服这些限制。一些新的压缩格式如AAC等不再有这些限制。
按照技术术语,MP3有如下一些限制:
编码的比特率位速最高质量可达320Kbps,基本不损失原本音效质量。
时间分辨率相对于变化迅速的信号来说太低。
对于超过15.5/15.8 kHz的频率没有因数频带,即超过此频率的声音无法编码在MP3内,从频谱来看,15 kHz以上的声音全部消失了,而人耳的听觉上限一般在20 kHz。
联合立体声(Joint stereo)是基于帧与帧完成的。
没有定义编码器/解码器的整体时延,这就意味着gapless playback缺少一个正式的规定。
然而,即使有这些限制,一个经良好的调整MP3编码器仍能够提供与其他格式相提并论的编码质量。
MP3音频编码
MPEG-1标准中没有MP3编码器的一个精确规范,然而与此相反,解码算法和文件格式却进行了细致的定义。人们设想编码的实现是设计自己的适合去除原始音频中部分信息的算法(或者是它在频域中的修正离散余弦(MDCT)表示)。在编码过程中,576个时域样本被转换成576个频域样本,如果是瞬变信号就使用192而不是576个采样点,这是限制量化噪声随着随瞬变信号短暂扩散。
这是听觉心理学的研究领域:人类主观声音感知。
这样带来的结果就是出现了许多不同的MP3编码器,每种生成的声音质量都不相同。有许多它们的比较结果,这样一个潜在用户很容易选择合适的编码器。需要记住的是高比特率编码表现优秀的编码器(如LAME这个在高比特率广泛使用的编码器)未必在低比特率的表现也同样好。
MP3音频解码
另一方面,解码在标准中进行了细致的定义。
多数解码器是bitstream compliant,也就是说MP3文件解码出来的非压缩输出信号将与标准文档中数学定义的输出信号一模一样(在规定的近似误差范围内)。
MP3文件有一个标准的格式,这个格式就是包括384、576、或者1152个采样点(随MPEG的版本和层不同而不同)的帧,并且所有的帧都有关联的头信息(32位)和辅助信息(9、17或者32字节,随着MPEG版本和立体声或者单通道的不同而不同)。头和辅助信息能够帮助解码器正确地解码相关的霍夫曼编码数据。
所以,大多数的解码器比较几乎都是完全基于它们的计算效率(例如,它们在解码过程中所需要的内存或者CPU时间)。
ID3和其他标签
“标签”是MP3(或其他格式)中保存的包含如标题、艺术家、唱片、音轨号或者其他关于MP3文件信息等添加到文件的数据。最为流行的标准标签格式目前是ID3 ID3v1和ID3v2标签,最近的是APEv2标签。
APEv2最初是为Musepack开发的(参见APEv2规范)。APEv2可以与ID3标签在同一个文件中共存,但是它也可以单独使用。
音量归一化(normalization)
由于CD和其他各种各样的音源都是在不同的音量下录制的,在标签中保存文件的音量信息将是有用的,这样的话回放时音量能够进行动态调节。
人们已经提出了一些对MP3文件增益进行编码的标准。它们的设计思想是对音频文件的音量(不是“峰值”音量)进行归一化,这样以保证在不同的连续音轨切换时音量不会有变化。
最流行最常用的保存回放增益的解决方法是被简单地称作“播放增益(Replay Gain)”的方法。音轨的音量平均值和修剪信息都存在元数据标签中。
3. AAC
高级音频编码(英语:Advanced Audio Coding,AAC),出现于1997年,基于MPEG-2的音频编码技术。由Fraunhofer IIS、杜比实验室、AT&T、Sony等公司共同开发,目的是取代MP3格式。2000年,MPEG-4标准出现后,AAC重新集成了其特性,加入了SBR技术和PS技术,为了区别于传统的MPEG-2 AAC又称为MPEG-4 AAC。
扩展名
AAC编码的主要扩展名有三种:
.aac - 使用MPEG-2 Audio Transport Stream(ADTS,参见MPEG-2)容器,区别于使用MPEG-4容器的MP4/M4A格式,属于传统的AAC编码(FAAC默认的封装,但FAAC亦可输出MPEG-4封装的AAC)。
.mp4 - 使用了MPEG-4 Part 14(第14部分)的简化版即3GPP Media Release 6 Basic(3gp6,参见3GP)进行封装的AAC编码(Nero AAC编码器仅能输出MPEG-4封装的AAC)。
.m4a - 为了区别纯音頻MP4文件和包含视频的MP4文件而由苹果(Apple)公司使用的扩展名,Apple iTunes对纯音頻MP4文件采用了".m4a"命名。M4A的本质和音頻MP4相同,故音頻MP4文件亦可直接更改扩展名为M4A。
概览
作为一种高压缩比的音頻压缩算法,AAC压缩比通常为18:1,也有数据说为20:1,远胜mp3;在音质方面,由于采用多声道,和使用低复杂性的描述方式,使其比几乎所有的传统编码方式在同规格的情况下更胜一筹。不过直到2006年,使用这一格式存储音乐的并不多,可以播放该格式的mp3播放器更是少之又少,目前所知仅有苹果iPod、Sony Walkman(NWZ-A、NWZ-S、NWZ-E、NWZ-X系列)、任天堂NDSi和魅族M8(微软推出的Windows 7附带的Windows Media Player 12也支持AAC)。此外电脑上很多音乐播放软件都支持AAC(前提是安装过AAC解码器),如苹果iTunes。但在移动电话领域,AAC的支持度已很普遍,Nokia、Sony Ericsson、Motorola等品牌均在其中高端产品中支持AAC(一开始主要是LC-AAC,随着移动电话性能的发展,HE-AAC的支持也已广泛)。
特点
AAC可以支持多达48个音轨,15个低频(LFE)音轨,5.1多声道支持,更高的采样率(最高可达96kHz,音頻CD为44.1kHz)和更高的采样精度(支持8bit、16bit、24bit、32bit,音頻CD为16bit)以及有多种语言的兼容能力,更高的解码效率,一般来说,AAC可以在对比MP3文件缩小30%的前提下提供更好的音质。
改良与扩充
相对于传统的LC-AAC,High Efficiency AAC(高效AAC,简写为HE-AAC或AAC-HE)又称为"aacPlus v1"或"AAC+" - 结合了谱带复制(Spectral Band Replication,SBR)及AAC技术;适用于低比特率(64kbps以下);
HE-AAC v2,又称为"aacPlus v2" - 结合了参数化立体声(Parametric Stereo,PS)和HE-AAC中的SBR技术。
AAC与MP3规格对比
比特率:AAC - 最高512kbps(双声道时)/MP3 - 32~320kbps
采样率:AAC - 最高96kHz / MP3 - 最高48kHz
声道数:AAC - (5.1)六声道 / MP3 - 两声道
采样精度:AAC - 最高32bit / MP3 - 最高16bit
规格一览
因为AAC是一个大家族,他们共分为9种规格,以适应不同场合的需要,也正是由于AAC的规格(Profile)繁多,导致普通电脑用户感觉十分困扰:
MPEG-2 AAC LC低复杂度规格(Low Complexity)
MPEG-2 AAC Main主规格
MPEG-2 AAC SSR可变采样率规格(Scaleable Sample Rate)
MPEG-4 AAC LC低复杂度规格(Low Complexity),现在的手机比较常见的MP4文件中的音频部分就包括了该规格音频文件
MPEG-4 AAC Main主规格
MPEG-4 AAC SSR可变采样率规格(Scaleable Sample Rate)
MPEG-4 AAC LTP长时期预测规格(Long Term Predicition)
MPEG-4 AAC LD低延迟规格(Low Delay)
MPEG-4 AAC HE高效率规格(High Efficiency)
上述的规格中,主规格(Main)包含了除增益控制之外的全部功能,其音质最好,而低复杂度规格(LC)则是比较简单,没有了增益控制,但提高了编码效率,至“SSR”对“LC”规格大体是相同,但是多了增益的控制功能,另外,MPEG-4 AAC/LTP/LD/HE,都是用在低比特率下编码,特别是“HE”是有Nero AAC编码器支持,是近来常用的一种编码器,不过通常来说,Main规格和LC规格的音质相差不大,因此目前使用最多的AAC规格多数是“LC”规格,因为要考虑手机目前的存储器能力未达合理水准。
MPEG-4 AAC LC(Low Complexity)是最常用的规格,我们叫“低复杂度规格”,我们简称“LC-AAC”,这种规格在中等码率的编码效率以及音质方面,都能找到平衡点。所谓中等码率,就是指:96kbps-192kbps之间的码率。因此,如果要使用LC-AAC规格,请尽可能把码率控制在之前说的那个区间内。
编码器一览
由于AAC格式家族比较庞大,要了解他,首先要清楚其各有不同的编码器,目前包括了商业的、免费的AAC格式音頻编码器,其中几个主要的编码器如下:
FhG:Fraunhofer IIS研发的权威编码器,
Nero AAC:同时支持LC-AAC / HE-AAC规格,由Nero公司免费发布的Nero AAC编码器
QuickTime / iTunes:Apple公司的两款软件都提供了AAC编码功能,其编码技术来自"Dolby Laboratories"(简写为Dolby Labs,杜比实验室)
FAAC(Freeware Advanced Audio Coder):也是一种很好的命令行编码器,支持LC/Main/LTP规格,而这个软件是免费的。FAAC是属于自由软件。
DivX AAC:2009年DivX开发出来的新AAC编码器,支持LC/HE/HEv2规格。目前正在测试中。
另外还有Psytel(已停止开发),Coding Technologies(已被杜比实验室收购),HHI/z Plane(Compaact),Dolby AAC等AAC编码器,而其他如Panasonic,Nokia,AT&T,NEC等公司也都有独家开发的编码器,在大家弄清楚这些AAC格式音頻规格和编码器之后,我们就不难知道为什么同一款手机会支持看起来都是AAC格式音頻的诸多文件格式了,比如Nokia 6230i就是既支持AAC格式也支持M4A格式和MP4格式的机型,而这些音頻文件格式其实都是属于AAC家族成员。
目前听到用的比较多的应该是LC和HE(适合低码率)。
HE:“high efficiency”(高效性)。HE-AAC v1(又称AACPlusV1,SBR)用容器的方法加了原AAC(LC)+SBR技术。SBR其实代表的是Spectral Band Replication(频段复制)。简单概括一下,音乐的主要频谱集中在低频段,高频段幅度很小,如果对整个频段编码,要么为了保护高频造成低频段编码过细以致文件巨大,要么为了保存了低频的主要成分而失去高频成分以致丧失音质。SBR把频谱切割开来,低频单独编码保存主要成分,高频单独放大编码保存音质,在相同音质下降低了文件大小。
HEv2(又称为HEPS)它用容器的方法包含了HE-AAC v1和PS技术。PS指“Parametric Stereo”(参数立体声)。这个其实好理解,原来的立体声文件,文件大小是一个声道的两倍。但是两个声道的声音存在某种相似性,根据香农信息熵编码定理,相关性应该被去掉才能减小文件大小。所以PS技术存储了一个声道的全部信息,然后,花很少的字节用参数描述另一个声道和它不同的地方。
4. ALAC
Apple Lossless(Apple Lossless Audio Codec、ALAC)为苹果的无损音频压缩编码格式,可将非压缩音频格式(WAV、AIFF)压缩至原先容量的40%至60%左右,编解码速度很快。也因为是无损压缩,听起来与原文件完全一样,不会因解压缩和压缩而改变。
ALAC与MP3的主要分别在于编码过程中,MP3会取消小部分高频及低频部分的音频数据,而ALAC则会如实记录,不会删除音频中任何细节数据。由于资料无损,ALAC音频文件大小会比MP3大,通常每片音乐CD(约70至80分钟)经ALAC编码后,音频文件大小约300MB。
它在2004年4月28日公布的iTunes4.5和QuickTime6.5.1的其中一部分。
ALAC的编码器已于2011年10月26日以Apache License为协议公布源代码.
5. WMA
WMA(Windows Media Audio)是微软公司开发的一种数字音频压缩格式。一些使用Windows Media Audio编码格式编码其所有内容的纯音频ASF文件也使用WMA作为扩展名。
WMA格式最初为微软公司私有,但是随着苹果公司的iTunes对它的支持,这个格式正在成为MP3格式的竞争对手之一。它兼容MP3的ID3元数据标签,同时支持额外的标签。
另外,一般情况下相同音质的WMA和MP3音频,前者文件体积较小;“Windows Media Audio Professional”可以存储5.1甚至7.1声道的音乐,而且音质可媲美Dolby Digital(杜比数字)。
WMA可以用于多种格式的编码文件中。应用程序可以使用Windows Media Format SDK进行WMA格式的编码和解码。一些常见的支持WMA的应用程序包括Windows Media Player、Windows Media Encoder、RealPlayer、Winamp等等。其它一些平台,例如Linux和移动设备中的软硬件也支持此格式。
优点
WMA 7之后的WMA支持证书加密,未经许可(即未获得许可证书),即使是非法拷贝到本地,也是无法收听的。同时,微软公司开始时宣称的:同文件比MP3体积小一倍而音质不变,也得到了兑现。事实上,这个说法,仅仅适用于低比特率的情况,另外,微软公司在WMA 9大幅改进了其引擎,实际上64Kbps的WMA音乐就可以达到与128Kbps的MP3音乐接近的音质,比MP3体积少1/3左右,意味在相同的空间下,你可以多存储1倍的音乐,但却可以拥有一样的音质,因此非常适合用于网络流媒体及移动设备。 现在的“Windows Media Audio Professional”还可以存储5.1甚至7.1声道的音乐。
缺点
与MP3相同,通常的WMA也是有损数据压缩的文件格式,特别在高比特率的音质渲染力明显不足,对于有更高要求的用户来说WMA并不是一个适合的格式。但在WMA9版本开始支持无损压缩——Windows Media Audio 9 Lossless(在安装WMP11或Windows Media Format 11之后升级至9.1,无损压缩版本最高支持5.1声道编码)。此外WMA也与MP3一样同为有专利版权的文件格式。支持的设备需要购买使用版权。
6. AC-3
杜比数字(Dolby Digital)是美国公司杜比实验室公司开发的技术,是著名的有损数据压缩的多媒体存储格式。
版本
杜比数字包括多个相类似的压缩技术,当中包括有“Dolby Digital EX”、“Dolby Digital Live”、“Dolby Digital Plus”、“Dolby Digital Surround EX”、“Dolby Digital Recording”、“Dolby Digital Cinema”、“Dolby Digital Stereo Creator”和“Dolby Digital 5.1 Creator”。
杜比数字
杜比数字(Dolby Digital),或称AC-3,是普遍的版本,可以包括多达6个独立的声道。最知名的是5.1声道技术。在5.1声道技术中,5代表着5个基本声道,独立连接至五个不同的喇叭(20至20,000 Hz),分别是右前(RF),中(C),左前(LF),右后(RR),左后(LR);而1则代表1个低频声效,连接至低音辅助喇叭(20至120 Hz)。与此同时,杜比数字格式也支持单声道及立体声输出。第一部使用杜比数字编码技术的电影是1992年推出的《蝙蝠侠大显神威》(Batman Returns)。第一套以杜比数字编码技术的家用式激光影碟是1995年推出的《迫切的危机》(Clear and Present Danger)。
而以下的codec名称都是不同,但也是指杜比数字。
Dolby Digital
DD(Dolby Digital的缩写,一般会在后面加上声道个数,如DD 2.0、DD 5.1。)
Dolby Surround AC-3 Digital(第二个标准发布的名称,只在早期(1995及1996年)使用)
Dolby Stereo Digital(第一个标准发布的名称,只在早期使用)
Dolby SR-Digital(当编码时结合Dolby SR录音技术时的称呼)
SR-D(Dolby SR-Digital的缩写)
Adaptive Transform Coder 3(与杜比数字的比特流格式关连)
AC-3( Audio Codec 3, Advanced Codec 3, Acoustic Coder 3的简称。可是,Adaptive TRansform Acoustic Coding 3,或称ATRAC3,是新力开发的另一音效编码格式)
ATSC A/52(规格标准的名称,现时版本为A/52 Rev. B)
杜比数字环绕EX
杜比数字环绕EX(Dolby Digital Surround EX),是杜比实验室和Lucasfilm THX在1999年5月面世的星际大战首部曲:威胁潜伏电影中合作的产品。在考虑经济效益和向下兼容性,在左环绕和右环绕中间,加插了后环绕声道,形成6.1输出。它使用了矩阵编码,这是一条独立分离声道,情形就像前置左右声道和中置声道的关系一样。所以它能在标准的5.1设备上输出5.1,又能同时支持杜比数字环绕EX的器材上输出6.1。在星际大战系列中使用了这技术。不少DVD支持杜比数字环绕EX的输出。
杜比数字EX
杜比数字EX(Dolby Digital EX)是杜比数字环绕EX的民用版本。杜比数字EX类似杜比早期的Pro-Logic技术,集成了矩阵技术,在立体声音轨上加入一中置和一后置声道。。杜比数字EX在5.1杜比数字的基础上加入后置声道,创出6.1或7.1的声道输出。但是,这技术并不能视为真正的6.1或7.1编码,与它的竞争对手DTS-ES格式不同,它并不能提供完整独立分离的6条或7条音轨。
杜比数字Live
杜比数字Live(Dolby Digital Live,DDL)是一种实时编码技术应用在交互媒体如电子游戏上。在个人电脑和游戏机平台上,它把音频编码成5.1声道并通过S/PDIF接口输出。 。SoundStorm,应用在 Xbox和nForce2的电脑,使用了这技术的雏型。不少使用c-media芯片的声卡提供了这技术如Turtle Beach and Auzentech 。另外,主机版的芯片也有使用这技术,如 Realtek's ALC882D, ALC888DD and ALC888H。DTS公司也有类似功能的技术DTS Connect。
这个技术的好处是它能令只支持模拟输出的多声道音效设备能以数字多声道输出。
杜比数字Plus
杜比数字Plus(Dolby Digital Plus)又称为E-AC-3,是基于AC3的基础进行加强的编码系统。它把最高码率提升至6 Mbps,支持14声道(13.1),增强的编码技术能够减少压缩对杂讯(artifact)。无法兼容于Dolby Digital器材,但是Dolby Digital Plus解码器可以将Dolby Digital Plus转码成Dolby Digital 通过光纤/同轴输出。Dolby Digital Plus 是HD DVD的必选音频格式。在蓝光播放器中,Dolby Digital Plus是主音轨(Primary Audio)的可选格式,第二音轨(Secondary Audio)必选格式。
杜比TrueHD
杜比TrueHD(Dolby TrueHD)由杜比实验室开发,是一个基于Meridian Lossless Packing的无损编解码格式。HD DVD光盘强制使用了这技术,蓝光光盘中是可选性的。杜比TrueHD支持24位、192 kHz采样率、14声道,最高码率达18 Mbps(96 khz采样率、8声道)或27 Mbps(192 khz采样率、6声道),但HD DVD和蓝光光盘把最大声道数限制为8,192kHz采样率下为6。它亦支持元数据,包括对白归一及动态范围控制。
杜比7.1环绕声
杜比7.1环绕声(Dolby Surround 7.1)是于2010年发表的最新格式。首次应用电影为《玩具总动员3》。而第一部应用此编码的华语片为《精武风云·陈真》
杜比全景声
杜比全景声(Dolby Atmos)是2012年4月发表的环徊立体声技术,首部使用该技术的电影为皮克斯动画工作室制作的《勇敢传说》。这款新技术可以呈现64个独立扬声器的内容,亦可同时发送多达128个声道或对象,比7.1声道更为细致。
声道设置
使用杜比数字技术下,最标准常用的是5.1声道设置,但杜比数字容许一系列不同声道的选择。全部可供选择的声道如下列所示:
单声道(中央)
双声道立体声(左、右),选择性地交叉应用杜比环回
三声道立体声(左、中、右)
双声道立体声加单环回(左、右、环回)
三声道立体声加单环回(左、中、右、环回)
四声道环回立体声(左前、右前、左后、右后)
五声道环回立体声(左前、中、右前、左后、右后)
以上所有这些设置可选择性地使用低频效果和杜比数字EX矩阵编码中加入附加后环绕声道。
杜比编码技术是向下兼容的,很多杜比播放器/解码器均备有向下混音作用是发布不同声道至可供使用的扬声器。这包括一些功能例如声音数据通过前扬声器播放(如适用),和当中央扬声器不适用时发布中央频道至左或右扬声器。或当用户只有2.0喇叭时,杜比解码器能把多声道信号混音编码为2.0立体声。
在5.1, 7.1 或其他等文字中,'.1'指的是低频LFE声道。
杜比技术的应用
杜比数字SR-D信号以光学方式把连续性数据块印在35 mm 拷贝正片的片孔之间及光学声轨的侧边。在底片放映时,CCD扫描仪(通常在放映机顶的杜比阅读器,或放映机下半部内嵌)把该范围扫描成视频,然后处理器会把该视频范围互相关系,及抽取数字数据作AC-3比特流,解码输出5.1声道。
杜比数字音频也用在DVD Video及其他纯粹数字媒体上,如家庭影院等。在此格式中,AC3比特流集成在视频和视频控制的数据流中。
AC-3系统在DVD Video以外使用不同带宽限制应用,如数字电视。AC-3标准容许最大编码比特率为640Kbps,35 mm拷贝使用320Kbps固定码率。HD-DVD和DVD-Video光盘中限制为448Kbps,然而很多播放器可成功播放更高码率数据(非顺从DVD规格)。ATSC及数字式有线电视限制为448Kbps。Blu-ray Disc、Sony PlayStation 3和Microsoft Xbox游戏机都能输出AC-3信号至全频640Kbps。某些Sony PlayStation 2格式的游戏软件也能支持杜比数字信号输出。
杜比也参与了AAC的开发,MPEG规格的一部分,及考虑继承MP3。AAC能输出AC-3的任何码率,胜过AC-3,压缩率更高,但技术上更加复杂。AAC在5.1声道中以400 Kbps和双声道中以180 Kbps输出,就已经能提供良好的聆听效果。
杜比数字Plus (DD-Plus) 在HD-DVD中作为强制及支持的格式,但在Blu-ray Disc中则作为选择性格式。
7. APE
Monkey's Audio,是一种常见的无损音频压缩编码格式,扩展名为.ape。与有损音频压缩(如MP3、Ogg Vorbis或者AAC等)不同的是,Monkey's Audio压缩时不会丢失数据。一个压缩为Monkey's Audio的音频文件听起来与原文件完全一样。Monkey's Audio文件的播放列表使用.apl。
Monkey's Audio亦可指压缩/解压缩Monkey's Audio文件的软件。因其主界面上有个猴子图样而得名。Monkey's Audio是压缩ape格式的重要工具;也可以对ape文件进行解压缩。
安装该软件时可以选择是否向winamp添加插件,使得winamp也可以播放ape文件。通常与Monkey's Audio配合使用的软件有Exact Audio Copy(EAC)、foobar2000等。
特点
Monkey's Audio是一种无损音频压缩格式,而较之于其他无损音频压缩格式,有长处亦有缺陷。
Monkey's Audio压缩比高于其他常见的无损音频压缩格式,约在55%上下,但编解码速度略慢。在搜寻回放位置时,如果文件压缩比过高,在配备较差的电脑会有延迟的现象。另外,由于它没有提供错误处理的功能,若发生文件损坏,损坏位置之后的数据有可能会丢失。
Monkey's Audio是开放源代码的免费软件,但因其授权协议并非自由软件而是准自由软件(Semi-free Software)而受到排挤。因为这意味着许多基于GNU/Linux的Linux发行包或是其他只能基于自由软件的操作系统不能将其收入。较之其他使用更自由的许可证的无损音频编码器(如FLAC),受其他软件的支持也更少。
因为Monkey's Audio是一种无损压缩格式,所以不适于同有损压缩格式相比较——这两者有不同的目标和用途。无损压缩的目标是能够精确再现原文件的前提下将之压缩到尽可能小的体积。而有损压缩则是在丢失一部分信息的情况下,在用户指定的体积/比特率中尽可能保持接近原来的音质。
所以,无损压缩的音频文件体积往往远大于从同样原文件压缩而来的有损压缩文件。例如:在压缩CD音频时,一个典型的Monkey's Audio文件往往有接近600~700K Bit/sec,而MP3最高不会超过320K Bit/sec,一般情况下用户只会指定到128~192K Bit/sec。虽然它们也可能达到可以接受的音质,但不会有Monkey's Audio等无损压缩格式般逼真。
Hydrogenaudio的Wiki提供了一个Monkey's Audio与其它无损音频压缩格式的全面比较。
文件格式APE
APE是一种音频文件格式,一般用.ape的扩展名,有时也采用.MAC的扩展名。APE格式采用无损数据压缩,在不降低音质的前提下,能有限地压缩WAV音轨文件,压缩比率一般在55%左右。在音质上,相对于WMA、MP3、AAC等有损数据压缩的格式有着绝对的优势。
APE文件结构是由Monkey's Audio定义的。Monkey's Audio提供软件进行与其它音频文件格式的转换。通过插件,APE文件可以在foobar2000、Nullsoft的Winamp和微软的媒体播放器等不同系统平台的多媒体软件中播放,近来越来越多的便携式媒体播放器也较多的加入对APE文件的支持。
8. FLAC
FLAC(英语发音:/ˈflæk/;全称:Free Lossless Audio Codec),中文直译为自由无损音频压缩编码(注:这里“Free”指的是自由——自由软件,而并不是免费)。FLAC是一款的自由音频压缩编码,其特点是可以对音频文件无损压缩。不同于其他有损压缩编码,如 MP3 、AAC,压缩后不会有任何音质损失,现在已被很多软件及硬件音频产品所支持。
技术
FLAC只支持定点取样,并不支持浮点取样,这是因为它要确保没有任何约数错误以致影响音质。它能支持任何PCM位分辨率,由4至32 bits per sample皆有。它亦支持任何采样率,由1 Hz至655,350 Hz不等,并可逐1 Hz微调。
FLAC支持很多不同的平台:大多数的Unix-like系统(包括Linux,BSD,Solaris及Mac OS X),Windows,BeOS及OS/2。支持这么多平台的原因是因为它是由autoconf/automake、MSVC、Watcom C及Project Builder编译的。
FLAC的技术特点如下:
无损压缩:被编码的音频(PCM)数据没有任何信息损失,解码输出的音频与编码器的输入的每一个字节都是一样的。每个数据帧都有一个当前帧的16-bit CRC校验码,用于监测数据传输错误。对整段音频数据,在文件头中还保存有一个针对原始未压缩音频数据的MD5标记,用于在解码和测试时对数据进行校验。
灵活的压缩策略:与libflac使用是“质量”的参数,该参数变化从0(最快)至8(最小)。虽然在压缩过程(压缩文件总是完美的“无损”表示的原始数据)。涉及速度和容量之间的折衷,解码过程中始终是相当快的,而不是非常依赖于压缩
快速:FLAC更看重解码的速度。解码只需要整数运算,并且相对于大多数编码方式而言,对计算速度要求很低。在很普通的硬件上就可以轻松实现实时解码。
硬件支持:由于FLAC提供了免费的解码范例,而且解码的复杂程度低,所以FLAC是目前少数获得硬件支持的无损压缩编码之一。(APE格式也有少数硬件支持)
可以流化:FLAC的每个数据帧都包含了解码所需的全部信息。解码当前帧无需参照它前面或后面的数据帧。FLAC使用了同步代码和CRC(类似于MPEG等编码格式),这样解码器在数据流中跳跃定位时可以有最小的时间延迟。
可以定位:FLAC支持快速采样精确定位。这不仅对于播放有益,更使得FLAC文件便于编辑。
富于弹性的metadata:可以定义和实现新类型的metadata数据块,而不会影响旧的数据流和解码器的使用。目前已有的metadata类型包括tag,cue表,和定位表。已经注册的应用程序可以定义自己专用的metadata类型(这一点与MIDI标准相似)。
非常适合于存档应用:FLAC是一个开放的编码格式,并且没有任何数据的损失,你可以将它转换为你需要的任何其他格式。除了每个数据帧的CRC和MD5标记对数据完整性的保障,flac(FLAC项目提供的命令行方式编码工具)还提供了一个verify(校验)选项,当使用该选项进行编码的时候,编码的同时就会立即对已编码数据进行解码并与原始输入数据进行比较,一旦发现不同就会退出并且报警提示。
便于对CD进行备份:FLAC有一个cue表,表内的metadata数据块用于保存CD的内容列表和所有音轨的索引点。你可以将一张CD保存到一个单一文件,并导入CD的cue表格,这样一个FLAC文件就可以完整地记录整张CD的全部信息。当你的原来的CD损坏的时候,你就可以用这个文件恢复出与原来一模一样的CD副本。
抗损伤:由于FLAC的帧结构,当数据流损坏时,数据损失会被限制在受损的数据帧之内。一般只会丢失很短的一个片段。而很多其他无损音频压缩格式在遇到损坏时,一个损坏就会造成后面所有数据丢失。
比较
FLAC与其他无损压缩式,如ZIP及gzip的主要分别在于FLAC可实时播放已压缩的音频数据,而且FLAC比ZIP这类无损压缩格式有更高的压缩比率。(FLAC在压缩音乐时有大约五成压缩率,但ZIP在同一情况下则只有一至两成压缩率。)
虽然有损压缩格式如MP3,ogg等有更高的压缩率,但它们会破坏了音频的原来数据,使其不可变回原来音质,而且FLAC可自由选择压缩率及压缩时间,较高的压缩率会带来较高的解压缩时间。相比起其他无损压缩格式如Monkey's Audio(拓展名为.APE)及Shorten,虽然压缩率稍有不及Monkey's Audio,FLAC技术更先进,占用资源更低,而且是开源的,所以,更多的平台及硬件产品支持FLAC。
页:
[1]