什么是 ID3、ID3V1、ID3V2?(mp3的ID3信息介绍)
ID3是什么?
ID3标签是MP3文件中用于描述音乐信息的数据元素(metadata)。我们知道,MP3如何下载mp3歌曲实际上是MPEG 1 Layer 3的缩写,它只定义了一种数据压缩方式,并没有特别说明如何在文件中添加描述音乐本身的信息。ID3的出现解决了这个问题,它通过在MP3数据前面或者后面添加描述信息,让管理和组织MP3更容易。
ID3目前有多个版本,最常见的是ID3 V1.1和ID3 V2.4。
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个曲目的可能性极小,这个改进还是相当合理的。
其中流派一共定义了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标记信息,还能直接用图标告诉你文件的编码速率。它是一个功能强大的免费软件,可以在odin.mutschler.de/mp3ext/MP3ext.html以及download.pcpro/下载,不过目前它对中文编码的支持还不算完美。另外,你有没有注意到它的作者就是ID3 V1.1的发明人?
ID3V1和V1.1实际上要求使用ISO 8859-1拉丁字母编码,但是很多人为了方便直接使用自己当前操作系统的代码页。大多数情况下这不算什么问题,但是在跨越语言平台的时候就会出现乱码等情况。例如你在中文操作系统下查看西班牙语的歌曲信息,可能就会看到奇怪的乱码,甚至某些ID3编辑软件可能处理不了中文。
随着ID3应用的普及,人们逐渐发现ID3V1过于简单了,很多感兴趣的信息无法加入,比如作曲者、歌词、演奏者、指挥等等进一步的信息无法附着其上,甚至连比较长的曲目名
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,不同语言的信息可以比较好地互相兼容。
与死板的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 hardwar
e 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 ID
3 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.
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论