MP3 是让数字音乐实现便携的压缩音频格式,完整名称是 MPEG-1 Audio Layer III。它源自德国弗劳恩霍夫集成电路研究所与多所高校和行业伙伴多年的研究成果,并在 20 世纪 90 年代初由动态图像专家组(Moving Picture Experts Group)作为 MPEG-1 标准的一部分发布。在该标准的三个音频层中,Layer III 最为复杂,它可以把一首歌压缩到拨号上网也能传输的大小。几年之内,这个扩展名就成了“音乐文件”的代名词,直到今天仍然如此。
MP3 如何存储声音
MP3 是有损的。这意味着编码器会永久丢弃录音的一部分内容以减小文件大小,而且播放器无法恢复这些数据。它的工作方式是将音频切成短而重叠的片段,并把每个片段从波形转换为一组频率。然后由心理声学模型判断哪些频率人耳反正听不到,通常是因为附近更响的声音把它们掩盖了,再给这些频率分配更少的比特。生成的内容与原始音频并不完全一致,只是足够接近,大多数人听不出差别。
文件本身是由一串简单的帧构成的。每个帧包含固定数量的采样,在常见的 MPEG-1 格式中是 1152 个采样,在 CD 采样率下大约是 26 毫秒的声音。每个帧一开始都有一个小的帧头,提供比特率、采样率和声道模式。这也是为什么你可以在 MP3 的任意位置剪切而剩余部分仍能播放,以及可变比特率文件之所以可行的原因:编码器可以在复杂片段上花费更多数据,而在静音部分几乎不花数据。
MP3 包含哪些元数据
音频帧里没有空间存放歌曲标题,所以 MP3 元数据保存在附加在文件上的独立标签中。标签有两种类型,一个文件可以同时拥有。较早的是 ID3v1:位于文件最后 128 个字节,使用固定宽度的字段保存标题、艺术家、专辑、注释、四位年份和一个流派编号。任何更长的内容都会被直接截断。ID3v2 位于文件开头,功能要丰富得多。它由一些以 4 个字母命名的帧组成,元数据报告通常会把这些名称翻译成易读的文字。
最常见的字段包括 TIT2(标题)、TPE1(艺术家)、TALB(专辑)、TRCK(音轨编号)、TCON(流派)、录制日期、COMM(自由文本注释)、APIC(内嵌封面图片)以及 TXXX,它允许任意程序自定义一个带名称的字段。抓轨和标签软件会自动填充其中大部分字段,所以你看到的内容往往既描述了音乐,也描述了所用软件。
其中一部分是个人信息。TENC 记录是谁或什么对文件进行了编码,TSSE 记录编码器设置,因此报告可以指出使用的具体程序。注释帧有时会包含真实姓名、电子邮件地址,或发送者已忘记的备注。TOWN 和 TPUB 分别表示被授权方和发行方,PRIV 帧则保存某个特定应用写入的私有数据,从商店购买的音轨还可能带有账号或订单标识符。大多数编码器还会在首帧内写入隐藏的 Xing 或 LAME 头,披露编码器版本、其设置以及测得的峰值电平。MP3 没有用于位置或设备的标准字段,因此用手机录制的音频通常只能暴露所用 app 和时间戳,而不是具体地点。
何时使用 MP3
当你需要在几乎任何地方都能无障碍播放的音频时,请选择 MP3,从车载音响到十年前的手机都能兼容,没有其他格式拥有这样的覆盖度。如果文件大小比兼容性更重要,AAC 和 Opus 能在更小的文件中实现相近的音质,因为它们诞生得更晚,设计时采用了更先进的技术。如果音质比体积更重要,FLAC 和 WAV 能保留每一个采样。还要记住,有损压缩的损失会叠加:编辑一个 MP3 并重新保存会再次对其进行编码,所以应始终从你手头最好的原始文件进行编辑,最后一步再导出为 MP3。