2024年3月27日发(作者:)
什么是 ID3、ID3V1、ID3V2?(mp3的ID3信息介绍)
ID3是什么?
ID3标签是MP3文件中用于描述音乐信息的数据元素(metadata)。我们知道,MP3
实际上是MPEG 1 Layer 3的缩写,它只定义了一种数据压缩方式,并没有特别说明如何
在文件中添加描述音乐本身的信息。ID3的出现解决了这个问题,它通过在MP3数据前面
或者后面添加描述信息,让管理和组织MP3更容易。
ID3目前有多个版本,最常见的是ID3 V1.1和ID3 V2.4。
ID3的版本
如果没有ID3,那么人们只能根据文件名判断一首歌它是什么内容了,何况就算听出
了是什么歌,它的演唱者、专辑名称你也未必背得下来,所以给MP3文件增加内置的标
签是理所当然的事情。有趣的是,MP3的标签并没有一个ISO国际标准,ID3的各种版本
目前只是一个近乎事实上的标准,并没有人强迫播放器或者编码程序必须支持它。
根据维基百科全书的解释(/wiki/ID3),ID3 V1是由Eric
Kemp在1996年发明的。ID3 V1是一组附加在音乐文件后面的数据,它的长度是固定的
128字节。ID3V1.0的定义如下表:
其中流派一共定义了79种,流行的播放软件Winamp则把它扩展到了125种,从
Blues到Noise到Dance Hall,非常丰富,在许多支持ID3编辑的软件中都可以看到这个
列表,但是国内用户似乎不太在意这个标记,大多数人甚至不知道自己的歌曲到底属于哪
一个分类。
这些内容一共只有128个字节,并不算累赘。由于附加在文件尾部,所以播放器不必
考虑它的影响,即使不支持ID3标记也不会影响音乐的还原——某些很老的播放器确实可
能会在播放到这里的时候发出噪音或者报错。但是标记在文件尾部也会造成一个问题,那
就是如果还没有读到文件末尾,我们什么信息也看不到。对硬盘和闪存里面的歌曲这当然
不是问题,但是如果你通过流媒体方式直接在网络上收听,就会发现它的缺陷了。
细心的人会注意到ID3V1.0没有包括曲目序号的定义,所以Michael Mutschler在
1997年进行了改进,引入了版本1.1。通过占用备注字段的最后两个字节,用一个00字
节作标记,另一个字节改为序号,可以让ID3支持曲目编号了。一个字节的空间让ID3 V1.1
支持最高到255的曲目序号,考虑到一张唱片超过256个曲目的可能性极小,这个改进还
是相当合理的。
有趣的工具—MP3ext
MP3ext是Windows的一个扩展工具,让你可以直接在Windows浏览器里面查看
和编辑MP3标记信息,还能直接用图标告诉你文件的编码速率。它是一个功能强大的免
费软件,可以在/mp3ext/以及
/下载,不过目前它对中文编码的支持还不算完美。另外,
你有没有注意到它的作者就是ID3 V1.1的发明人?
ID3V1和V1.1实际上要求使用ISO 8859-1拉丁字母编码,但是很多人为了方便直接
使用自己当前操作系统的代码页。大多数情况下这不算什么问题,但是在跨越语言平台的
时候就会出现乱码等情况。例如你在中文操作系统下查看西班牙语的歌曲信息,可能就会
看到奇怪的乱码,甚至某些ID3编辑软件可能处理不了中文。
随着ID3应用的普及,人们逐渐发现ID3V1过于简单了,很多感兴趣的信息无法加入,
比如作曲者、歌词、演奏者、指挥等等进一步的信息无法附着其上,甚至连比较长的曲目
名都处理不了,于是ID3V2的出现也就是顺理成章的了。
与死板的ID3V1不同,ID3V2是一个灵活的标签格式,它不但提供了更丰富的预定义
字段和更长的数据空间,而且支持用户自定帧,它的长度也是可变的。于是,利用ID3V2,
我们不但可以让MP3附带歌词,而且可以包括唱片封面图片、音色调节设置、甚至MTV
影像和卡拉OK字幕。
ID3V2的灵活性和可扩展性让用户可以给音乐文件添加任何想得出来的相关信息。它
支持最大256MB的数据,最长的数据帧可以达到16MB。所以如果你愿意,ID3V2增加
的数据可以让附加信息庞大到比歌曲信息本身还要占据更多空间的地步。
缺省状况下,ID3V2附加于文件头部,但是这也不会影响不支持ID3V2的播放器,因
为它特意设计为用“非同步”方式储存信息,不兼容的播放器会简单地跳过这一部分。在
ID3V2.4的版本中用户也可以选择把它附加到文件尾部。把信息放到文件头部对于流媒体
播放来说有很大优势——在听到音乐之间关于乐曲本身的信息就已经可以显示了。但是这
么做的缺点是如果用工具软件改变了ID3的长度,那么整个文件都需要重新写入,效率受
到影响。另外,ID3V2支持UNICODE,不同语言的信息可以比较好地互相兼容。
ID3 is a very popular audio file data tagging format in active use by software
and hardware developers around the world. ID3 tags are supported in software
such as iTunes, Windows Media Player, Winamp, YME, MusicMatch and hardware
players like the iPod, Creative Zen, Toshiba Gigabeat and Sony Walkman.
An ID3 tag is a data container within an MP3 audio file stored in a prescribed
format. This data commonly contains the Artist name, Song title, Year and Genre of
the current audio file. This website contains the format standards information for
the ID3 tagging data container. If you've read this far and are confused, check the
ID3v2Easy page for a short, low-tech introduction.
While there are legacy and future standards for ID3 tags, the most popular
version implemented today is ID3 version 2.3. A follow on version, 2.4, is
documented on this website but has not achieved popular status due to some
disagreements on some of the revisions and the tremendous inertia present in the
software and hardware marketplace.
Consumers should read the Introduction where the basics of the ID3 tagging
format and its history are covered. On that page are links to basic technical
information about how ID3 tags work. The Frequently Asked Questions (FAQ) page
contains some additional items of interest.
Developers who are new to the ID3 tag format may want to jump directly to
the ID3v2 made easy page for quick low tech introduction. Those interested in
getting right into the thick of the standard should check out the Developer
Information page. Software developers will find ID3 tag manipulation libraries
under Implementations.


发布评论