ID3 is a
metadatacontainer most often used in conjunction with the MP3 audio file format. It allows information such as the title, artist, album, track number, or other information about the file to be stored in the file itself.
There are two unrelated versions of ID3: ID3v1 and ID3v2.
After the creation of the MP3 standard, there appeared a problem with storing data about the file. Standalone MP3s didn't have any special method of doing this. In 1996 Eric Kemp came had the idea to add a small chunk of data to the audio file, thus solving the problem. The standard was called ID3v1 and it quickly became the "
de facto" standard for storing metadata in MP3s. The format was released by Damaged Cybernetics, an underground group that specialized in cracking console gaming systems. This format was first used to identify ROMs for the 8-bit Nintendo decrypted by the leader "MindRape", Donald Ray Moore, Jr., in 1996. There was no identifying information for any of the ROMS, thus an ID tagging system was created to make tracking easier. Eric and associates naturally carried this over into mp3 files. This format was used for a number of file formats unknown at that time. Fact|date=February 2008
The ID3v1 tag occupies 128
bytes, beginning with the string "TAG". The tag was placed at the end of the file to maintain compatibility with older media players. Some players would play a small burst of static when they read the tag, but most ignored it, and almost all modern players will correctly skip it. This tag allows 30 bytes for the title, artist, album, and a "comment", four bytes for the year, and a byte to identify the genreof the song from a predefined list of 80 values ( Winamplater extended this list to 148 values).
One improvement to ID3v1 was made by Michael Mutschler in 1997. Since the comment field was too small to write anything useful, he decided to trim it by two bytes and use it to store the track number. Such tags are referred to as ID3v1.1.
The enhanced tag is an extra data block before an ID3v1 tag, which extends the title, artist and album fields by 60 bytes each, offers a freetext genre, a one-byte (values 0-5) speed and the start and stop time of the music in the MP3 file, e.g., for fading in. If none of the fields are used, it will be automatically omitted.
Programs supporting ID3v1 tags can read the enhanced tag, but writing may leave stale values in the extended block. The extended block is not an official standard, and it's only supported by few programs, not including
Strings are either space- or zero-padded. Unset string entries are filled using an empty string.
ID3v1: 128 bytes
Extended tag (placed before the ID3v1 tag): 227 bytes
Criticisms and problems
ID3v1 tags were criticized for several problems. One issue was that the fields were too short for most of the data they were meant to contain. Thirty bytes is not enough to store long song or album titles, so they would simply be truncated.
ID3v1 also lacked support for
internationalization. It is stated in the standard that all the strings must be encoded in ISO-8859-1. But in practice, users usually used local encodings, which is why mojibakeis a common problem in ID3v1 tags.
In response to these criticisms, a new standard called ID3v2 was created in 1998. Although it bears the name ID3, it has little to no relation to the ID3v1 standard.
ID3v2 tags are of variable size, and usually occur at the start of the file, to aid
streaming media. They consist of a number of "frames", each of which contains a piece of metadata. For example, the "TIT2" frame contains the title, and the "WOAR" frame contains the URL of the artist's website. Frames can be up to 16MB in length, while total tag size is limited to 256MB. The internationalization problem was solved by allowing the encoding of strings not only with ISO-8859-1, but also with UTF-16. Textual frames are marked with an encoding bit, though mojibakeis still common when using local encoding instead of UTF-16.
In the latest ID3v2 standard there are 84 types of frame, and applications can also define their own types. There are standard frames for containing cover art, BPM, copyright and license, lyrics, and arbitrary text and URL data, as well as other things.
There are three versions of ID3v2. ID3v2.2 was the first public version of ID3v2. It used three character frame identifiers rather than four ("TT2" for the title instead of "TIT2"). Most of the common v2.3 and v2.4 frames have direct analogues in v2.2. Now this standard is considered obsolete.
ID3v2.3 expanded the frame identifier to four characters, and added a number of frames. A frame could contain multiple values, separated with a "/" character. This is the most widely used version of ID3v2 tags.
ID3v2.4 is the latest version of the standard, dated
November 1, 2000. Notably, it allows textual data to be encoded in UTF-8, which was a common practice in earlier tags (despite the standard) Fact|date=September 2008 because it has several noticeable advantages over UTF-16. It uses a null byte to separate multiple values, so the character "/" can appear in text data again. Another new feature introduced in ID3v2.4 is to allow the addition of a tag to the end of the file before other tags (like ID3v1).
The ID3v2 Chapter Addendum was published in December 2005 but is not widely supported as yet. It allows users to jump easily to specific locations or chapters within an audio file and can provide a synchronized slide show of images and titles during playback. Typical applications include
Enhanced podcasts and it can be used in ID3v2.3 or ID3v2.4 tags.cite web | last = Newell | first = C. | date = 2 December 2005| url = http://www.id3.org/id3v2-chapters-1.0 | title = "ID3v2 Chapter Frame Addendum" | work = ID3.org | accessdate = 2008-02-06]
Although the different versions of ID3v2 are conceptually similar, implementing an algorithm to read and write them is difficult. There are subtle but critical differences between all the versions. Even within a version, the structure of frames differs greatly. For example, the "TIT2" frame which contains the title, and the "USLT" which contains a lyrics transcription, require different algorithms to extract the data Fact|date=November 2007. With 84 different frames, dozens of such sub-parsers are required Fact|date=November 2007. Other tagging formats such as APEv2 avoid this, and use a single key/value pair for the internal structure of every frame. This is at the expense of pushing the interpretation of the value on to the decoder, rather than being defined within the core standard.
ID3v2 stores many things in the tag that are more commonly left to the audio format itself. Some examples are the "TLEN" frame which stores the audio length, or the "AENC" frame which contains the
encryptionscheme of the audio. (However, the information provided by "TLEN" is often not derived trivially. In general, the duration of a variable bitrate stream can be calculated only after examining each frame of the entire stream. Thus, "TLEN" can be useful for streaming audio and inadequate hardware.)
Only with the ID3v2.4 standard has it been possible to place the tag data at the end of the file, in common with ID3v1. ID3v2.2 and 2.3 require that the tag data precede the file. Whilst for streaming data this is absolutely required, for static data it means that the entire audio file must be updated to insert data at the front of the file. For initial tagging this incurs a large penalty as every file must be re-written. Tag writers are encouraged to introduce padding after the tag data in order to allow for edits to the tag data without requiring the entire audio file to be re-written, but these are not standard and the tag requirements may vary greatly, especially if "APIC" (associated pictures) are also embedded.
Software adoption for ID3v2.4 has come around in the last couple of years; however, the majority of files still use older versions of ID3v2 and there are very few applications that fully support all of the frame types enumerated in the ID3v2 specification.
Another problem occurs when it comes to Windows Explorer. When ID3v2.4 is used to tag MP3 files, any info on the files cannot be seen by Windows Explorer due to the lack of UTF-8 encoding support, unlike previous ID3 tag versions which are properly seen.
Editing ID3 tags
ID3 tags may be edited in a variety of ways. On some platforms the file's properties may be edited by viewing extended information in the file manager. Additionally most audio players allow editing single or groups of files. Editing groups of files is often referred to as "batch tagging". There are also specialized applications, called taggers, which concentrate specifically on editing the tags and related tasks. These often offer advanced features such as advanced batch tagging or editing based on
Implementation in non-mp3s and alternatives
ID3 tags were designed with MP3 in mind, so they would work without problems with
MP3and MP3Profiles. However, the tagsets are an independent part of the MP3 file and should be usable elsewhere. In practice, the only other format which widely uses ID3v2 tags is AIFF, where the tag is stored inside a RIFF chunk named "ID3". The same could be accomplished in WAV, but isn't. The only tagging system in wide usage for WAV is "Broadcast WAV", stored as a RIFF chunk.Windows media ASF files (WMA, WMV) have their own tagging formats but also supports ID3 Tags embedded as attributes.cite web
url = http://msdn2.microsoft.com/en-us/library/aa386866.aspx
title = "Windows Media Developer Center: ID3 Tag Support"
Microsoft Developer Network
accessdate = 2008-02-06]
MP4also allows the embedding of an ID3 tag [ [http://www.mp4ra.org/specs.html#id3v2 The 'MP4' Registration Authority ] ] although this isn't widely supported.Other container-based formats use their own tagging formats. An examples of this is Ogg, which uses Vorbis comments. Adding ID3 tags to these would break the container structure.
* [http://www.id3.org Official site for ID3, including the format specifications]
* [http://www.linuxselfhelp.com/HOWTO/MP3-HOWTO-13.html#ss13.3 List of genres in ID3v1]
* [http://mpgedit.org/mpgedit/mpeg_format/mpeghdr.htm#MPEGTAG ID3v1 Specification]
* [http://www.fortunecity.com/underworld/sonic/3/id3tag.html ID3 TAG and Enhanced TAG specification]
Wikimedia Foundation. 2010.
Look at other dictionaries:
Id3 — Pour l’article homonyme, voir Algorithme ID3. ID3 est le nom des métadonnées pouvant être insérées dans un fichier audio comme MP3. Ces métadonnées permettent d avoir des informations sur le contenu du fichier comme le titre, le nom… … Wikipédia en Français
ID3 — (Iterative Dichotomiser 3) ist ein Algorithmus, der zur Entscheidungsfindung dient. Er wird bei Entscheidungsbäumen eingesetzt. Der australische Forscher J. Ross Quinlan publizierte diesen Algorithmus erstmals im Jahre 1986. ID3 war in seinen… … Deutsch Wikipedia
ID3 — может означать: ID3 (метаданные) (от англ. Identify an MP3) формат метаданных, сохраняемых в файлах форматов типа MP3 (автор, название альбома, и т. д.) ID3 (алгоритм) один из алгоритмов для построения дерева принятия решений … Википедия
ID3 — es un estándar de facto para incluir metadatos (etiquetas) en un contenedor multimedia, tales como álbum, título o artista. Se utiliza principalmente en ficheros MP3 … Enciclopedia Universal
ID3 — Para otros usos de este término, véase Algoritmo ID3. ID3 es un estándar de facto para incluir metadatos (etiquetas) en un archivo contenedor audiovisual, tales como álbum, título o artista. Se utiliza principalmente en ficheros sonoros como MP3 … Wikipedia Español
ID3 — Pour l’article homonyme, voir Algorithme ID3. ID3 est le nom des métadonnées pouvant être insérées dans un fichier audio comme MP3. Ces métadonnées permettent d avoir des informations sur le contenu du fichier comme le titre, le nom… … Wikipédia en Français
ID3 — ● sg. m. ►SON Ensemble d informations sur le contenu d un fichier MP3, situé à la fin du fichier et faisant 128 octets de longs, découpé en champs de 30 octets maximum. On parle souvent de tag ID3 . Étendu en ID3v2. Logo ID3v2, copyright 1998… … Dictionnaire d'informatique francophone
ID3 — Tag Embedded In MPEG (Computing » Software) … Abbreviations dictionary
ID3 algorithm — ID3 (Iterative Dichotomiser 3) is an algorithm used to generate a decision tree invented by Ross Quinlan.The algorithm is based on Occam s razor: it prefers smaller decision trees (simpler theories) over larger ones. However, it does not always… … Wikipedia
ID3-Tag — Anzeige des ID3 Tags im Eigenschaftenfenster einer mp3 Datei im Dateimanager Konqueror Als ID3 Tag bezeichnet man ein Format für Zusatzinformationen (Metadaten), die in Audiodateien des MP3 Formats enthalten sein können. ID3 steht für Identify an … Deutsch Wikipedia