ID3v2.2 tag
   HOME

TheInfoList



OR:

ID3 is a metadata container most often used in conjunction with the
MP3 MP3 (formally MPEG-1 Audio Layer III or MPEG-2 Audio Layer III) is a coding format for digital audio developed largely by the Fraunhofer Society in Germany, with support from other digital scientists in the United States and elsewhere. Origin ...
audio file format An audio file format is a file format for storing digital audio data on a computer system. The bit layout of the audio data (excluding metadata) is called the audio coding format and can be uncompressed, or compressed to reduce the file size, ofte ...
. It allows information such as the title, artist, album, track number, and other information about the file to be stored in the file itself. There are two unrelated versions of ID3: ID3v1 and ID3v2. ID3v1 takes the form of a 128-
byte The byte is a unit of digital information that most commonly consists of eight bits. Historically, the byte was the number of bits used to encode a single character of text in a computer and for this reason it is the smallest addressable uni ...
segment at the end of an MP3 file containing a fixed set of data fields. ID3v1.1 is a slight modification which adds a "track number" field at the expense of a slight shortening of the "comment" field. ID3v2 is structurally very different from ID3v1, consisting of an extensible set of "frames" located at the start of the file, each with a frame identifier (a three- or four-byte string) and one piece of data. 83 types of frames are declared in the ID3v2.4 specification, 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. Three versions of ID3v2 have been documented, each of which has extended the frame definitions. ID3 is a ''de facto'' standard for metadata in MP3 files; no standardization body was involved in its creation nor has such an organization given it a formal approval status. It competes with the
APE tag APE tags comprise one extant convention used to store information (metadata) about a given digital audio file. Each APE tag constitutes a discrete element that describes a single attribute of the file's contents. Each consists of a key/value p ...
in this arena. Lyrics3v1 and Lyrics3v2 were tag standards implemented before ID3v2, for adding lyrics to mp3 files. The difference with ID3v2 is that Lyrics3 is always at the end of an MP3 file, before the ID3v1 tag.


ID3v1

The MP3 standard did not include a method for storing file metadata. In 1996 Eric Kemp had the idea to add a small chunk of data to the audio file, thus solving the problem. The method, now known as ID3v1, quickly became the ''de facto'' standard for storing metadata in MP3s.Practical Common Lisp
p. 335.
The ID3v1 tag occupies 128
bytes The byte is a unit of digital information that most commonly consists of eight bits. Historically, the byte was the number of bits used to encode a single character of text in a computer and for this reason it is the smallest addressable uni ...
, beginning with the string ''TAG'' 128 bytes from the end of the file. The tag was placed at the end of the file to maintain compatibility with older
media players A media player could refer to: *Digital media player, home appliances that play digital media *Media player software, software that plays digital media *Portable media player, portable hardware that plays digital media *Windows Media Player Wi ...
. 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 each for the title, artist, album, and a "comment", four bytes for the year, and a byte to identify the
genre Genre () is any form or type of communication in any mode (written, spoken, digital, artistic, etc.) with socially-agreed-upon conventions developed over time. In popular usage, it normally describes a category of literature, music, or other for ...
of the song from a predefined list of 80 values (
Winamp Winamp is a media player for Microsoft Windows originally developed by Justin Frankel and Dmitry Boldyrev by their company Nullsoft, which they later sold to AOL in 1999 for $80 million. It was then acquired by Radionomy in 2014. Sinc ...
later 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 those two bytes to store the track number. Such tags are referred to as ID3v1.1.


ID3v1 and ID3v1.1

Strings are either space- or zero-padded. Unset string entries are filled using an empty string. ID3v1 is 128 bytes long. ID3v1 pre-defines a set of genres denoted by numerical codes. Winamp extended the list by adding more genres in its own music player, which were later adopted by others (though some are of dubious value: e.g. "Primus" is one specific band, not a genre, and "Negerpunk" appears to be a racist joke in Swedish). However, support for the extended Winamp list is not universal. In some cases, only the genres up to 125 are supported.


Enhanced TAG

The Enhanced tag is an extra data block before an ID3v1 tag, which extends the title, artist and album fields to 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. Some programs supporting ID3v1 tags can read the extended tag, but writing may leave stale values in the extended block. The extended block is not an official standard and is only supported by a few programs, not including
XMMS X Multimedia System (XMMS) is an audio player for Unix-like systems released under a free software license. History XMMS was originally written as ''X11Amp'' by Peter and Mikael Alm in November 1997. The player was made to resemble Winamp, which ...
or Winamp. The Enhanced tag is sometimes referred to as the "extended" tag. The Enhanced tag is 227 bytes long, and placed before the ID3v1 tag.


ID3v1.2

ID3v1.2 purpose is to add small improvements to ID3v1.1 informal standard without breaking the ID3v1 informal standard The ID3v1.2 tag will not cause any issues in legacy decoders/players (old ones)


Genre list in ID3v1


Standard


Winamp Extended List

Genres 142–147 were added in the 1 June 1998 release of Winamp 1.91; genres 148–191 were added in Winamp 5.6 (30 November 2010).


ID3v2

In 1998, a new specification called ID3v2 was created by multiple contributors. Although it bears the name ID3, its structure is very different from ID3v1. ID3v2 tags are of variable size, and usually occur at the start of the file, which aids streaming media as the metadata is essentially available as soon as the file starts streaming instead of requiring the entire file to be read first as is the case with ID3v1. ID3v2 tags 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 in ISO-8859-1, but also in
Unicode Unicode, formally The Unicode Standard,The formal version reference is is an information technology standard for the consistent encoding, representation, and handling of text expressed in most of the world's writing systems. The standard, wh ...
. Textual frames are marked with an encoding byte: * $00 – ISO-8859-1 (LATIN-1, identical to
ASCII ASCII ( ), abbreviated from American Standard Code for Information Interchange, is a character encoding standard for electronic communication. ASCII codes represent text in computers, telecommunications equipment, and other devices. Because ...
for values smaller than 0x80) * $01 –
UCS-2 The Universal Coded Character Set (UCS, Unicode) is a standard set of characters defined by the international standard ISO/IEC 10646, ''Information technology — Universal Coded Character Set (UCS)'' (plus amendments to that standard), w ...
-encoded
Unicode Unicode, formally The Unicode Standard,The formal version reference is is an information technology standard for the consistent encoding, representation, and handling of text expressed in most of the world's writing systems. The standard, wh ...
with the
byte order mark The byte order mark (BOM) is a particular usage of the special Unicode character, , whose appearance as a magic number at the start of a text stream can signal several things to a program reading the text: * The byte order, or endianness, of t ...
(BOM), in ID3v2.2 and ID3v2.3 * $02 – UTF-16BE-encoded Unicode without BOM, in ID3v2.4 * $03 –
UTF-8 UTF-8 is a variable-length character encoding used for electronic communication. Defined by the Unicode Standard, the name is derived from ''Unicode'' (or ''Universal Coded Character Set'') ''Transformation Format 8-bit''. UTF-8 is capable of ...
-encoded Unicode, in ID3v2.4 However,
mojibake Mojibake ( ja, 文字化け; , "character transformation") is the garbled text that is the result of text being decoded using an unintended character encoding. The result is a systematic replacement of symbols with completely unrelated ones, oft ...
is still common when using local encodings instead of Unicode. In particular, some Japanese editors are known to use
Shift JIS Shift JIS (Shift Japanese Industrial Standards, also SJIS, MIME name Shift_JIS, known as PCK in Solaris contexts) is a character encoding for the Japanese language, originally developed by a Japanese company called ASCII Corporation in conjuncti ...
encoding, which usually has disastrous effects: it will not work with any standard-compliant software regardless of local settings (since it is not supported by the standard), will not work outside Japan (since Shift JIS has very little support outside Japan), and will not even work on all Japanese computers even with a specifically non-compliant reader (as it is software-dependent and settings-dependent). There are 83 types of frames declared in the ID3v2.4 specification, and applications can also define their own types. There are standard frames for containing cover art, , copyright and license, lyrics, and arbitrary text and URL data, as well as other things. There are three versions of ID3v2: ;ID3v2.2 :v2.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 :v2.3 expanded the frame identifier to four characters, and added a number of frames. This is the most widely used version of ID3v2 tags, and is widely supported by Windows Explorer and Windows Media Player. ;ID3v2.4 :v2.4 was published on November 1, 2000, and remains the latest version. A major new addition is that a text frame can contain multiple values, separated with a
null byte The null character (also null terminator) is a control character with the value zero. It is present in many character sets, including those defined by the Baudot and ITA2 codes, ISO/IEC 646 (or ASCII), the C0 control code, the Universal Coded ...
. It also allows textual data to be encoded in
UTF-8 UTF-8 is a variable-length character encoding used for electronic communication. Defined by the Unicode Standard, the name is derived from ''Unicode'' (or ''Universal Coded Character Set'') ''Transformation Format 8-bit''. UTF-8 is capable of ...
rather than
UTF-16 UTF-16 (16-bit Unicode Transformation Format) is a character encoding capable of encoding all 1,112,064 valid code points of Unicode (in fact this number of code points is dictated by the design of UTF-16). The encoding is variable-length, as cod ...
, which was a common practice in some parts of the world in earlier tags (despite the standard, since it was not supported yet) because
UTF-8 UTF-8 is a variable-length character encoding used for electronic communication. Defined by the Unicode Standard, the name is derived from ''Unicode'' (or ''Universal Coded Character Set'') ''Transformation Format 8-bit''. UTF-8 is capable of ...
typically encodes Asian scripts less efficiently than
UTF-16 UTF-16 (16-bit Unicode Transformation Format) is a character encoding capable of encoding all 1,112,064 valid code points of Unicode (in fact this number of code points is dictated by the design of UTF-16). The encoding is variable-length, as cod ...
. Another new feature allows the addition of a tag to the end of the file before other tags (like ID3v1). :For many years
Windows Explorer File Explorer, previously known as Windows Explorer, is a file manager application that is included with releases of the Microsoft Windows operating system from Windows 95 onwards. It provides a graphical user interface for accessing the file ...
and
Windows Media Player Windows Media Player (WMP) is the first media player (application software), media player and media library application that was developed by Microsoft for playing sound reproduction, audio, video and viewing images on personal computers runnin ...
did not interpret ID3v2.4 tags correctly, until the 2017 Windows 10 Creators Update (version 1703). As of the Windows October 2020 Update, they still cannot correctly interpret some of the non-English and Asian characters in the ID3v2.4 tag.


ID3v2 star rating tag issue

There is a loose ''de facto'' standard for implementation of song ratings. Most apps will display 0 to 5 stars for any given song, and how the stars are expressed can vary. For instance, when rating a song in iTunes, the rating is not embedded in the tag in the music file, but is instead stored in a separate database that contains all of the iTunes metadata. Other
media players A media player could refer to: *Digital media player, home appliances that play digital media *Media player software, software that plays digital media *Portable media player, portable hardware that plays digital media *Windows Media Player Wi ...
can embed rating tags in music files, but not necessarily the same way, so as a result a song which is rated on one media player sometimes won't display the rating the same way, or at all, when played on other software or mobile device. However, there is a
Popularimeter
frame in the ID3v2 specification meant for this purpose. The frame is called POPM and Windows Explorer, Windows Media Player,
Winamp Winamp is a media player for Microsoft Windows originally developed by Justin Frankel and Dmitry Boldyrev by their company Nullsoft, which they later sold to AOL in 1999 for $80 million. It was then acquired by Radionomy in 2014. Sinc ...
, foobar2000,
MediaMonkey MediaMonkey is a digital media player and media library application developed by Ventis Media Inc., for organizing and playing audio on Microsoft Windows and Android operating systems. MediaMonkey for Windows (sometimes noted as MMW) include ...
, and other software all map roughly the same ranges of 0–255 to a 0–5 stars value for display. The following list details how Windows Explorer reads and writes the POPM frame: * 224–255 = 5 stars when READ with Windows Explorer, writes 255 * 160–223 = 4 stars when READ with Windows Explorer, writes 196 * 096–159 = 3 stars when READ with Windows Explorer, writes 128 * 032–095 = 2 stars when READ with Windows Explorer, writes 64 * 001–031 = 1 star when READ with Windows Explorer, writes 1 Windows Explorer uses the following syntax: Windows Media Player 9 Series , 255 , 0 The 0 is the play counter portion of POPM as per the ID3v2 POPM specification, which is not to be confused or conflated with the PCNT frame, which is a separate frame meant entirely for playcounts. If an app supports granularity however, it should write 1 for one full star, and then 2–31 would be granular points under one full star. Notably, the ID string Windows uses is not an email address, as called for in the specifications. Further, Windows Explorer and Windows Media Player up to and including Windows 7 and WMP 12 (possibly beyond) contain a bug such that, if one were to use them to rate files, any Replay Gain tags one would have will be corrupted. WMP also writes the same values as described above, and reads the same way as well, EXCEPT for the cutoff between 4 and 5 stars, which is slightly different and basically of no consequence. WMP uses 221/222 instead, fo
reasons that are not clear


ID3v2 chapters

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 podcast A podcast is a program made available in digital format for download over the Internet. For example, an episodic series of digital audio or video files that a user can download to a personal device to listen to at a time of their choosing ...
s and it can be used in ID3v2.3 or ID3v2.4 tags.


ID3v2 embedded image extension

The metadata can contain an "Attached Picture" ID3 frame ('PIC' or 'APIC') containing an image. A field in this frame can indicate the picture type. The following types are defined:
$00     Other
$01     32x32 pixels 'file icon' (PNG only)
$02     Other file icon
$03     Cover (front)
$04     Cover (back)
$05     Leaflet page
$06     Media (e.g. label side of CD)
$07     Lead artist/lead performer/soloist
$08     Artist/performer
$09     Conductor
$0A     Band/Orchestra
$0B     Composer
$0C     Lyricist/text writer
$0D     Recording Location
$0E     During recording
$0F     During performance
$10     Movie/video screen capture
$11     A bright coloured fish
$12     Illustration
$13     Band/artist logotype
$14     Publisher/Studio logotype


ID3v2 frame specification

Notes: Version 2.4 of the specification prescribes that all text fields (the fields that start with a ''T'', except for TXXX) can contain multiple values separated by a
null character The null character (also null terminator) is a control character with the value zero. It is present in many character sets, including those defined by the Baudot and ITA2 codes, ISO/IEC 646 (or ASCII), the C0 control code, the Universal Coded Ch ...
. The null character varies by
character encoding Character encoding is the process of assigning numbers to Graphics, graphical character (computing), characters, especially the written characters of Language, human language, allowing them to be Data storage, stored, Data communication, transmi ...
.


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 A file manager or file browser is a computer program that provides a user interface to manage files and folders. The most common operations performed on files or groups of files include creating, opening (e.g. viewing, playing, editing or pr ...
. 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. Some, such as
puddletag Puddletag is a graphical audio file metadata editor ("tagger") for Unix-like operating systems. It is free and open-source software subject to the terms of the GNU General Public License (GPL) version 3. In most major desktop Linux distributions, ...
, offer advanced features such as advanced batch tagging or editing based on
regular expression A regular expression (shortened as regex or regexp; sometimes referred to as rational expression) is a sequence of characters that specifies a search pattern in text. Usually such patterns are used by string-searching algorithms for "find" ...
s.


Non-MP3-implementation and alternatives

ID3 tags were designed with MP3 in mind, so they would work without problems with MP3 and
MP3Pro mp3PRO is an unmaintained proprietary audio compression codec that combines the MP3 audio format with the spectral band replication (SBR) compression method. At the time it was developed it could reduce the size of a stereo MP3 by as much as 50% ...
files. However, the tagsets are an independent part of the MP3 file and should be usable elsewhere. In practice, the only other formats that widely use ID3v2 tags are
AIFF Audio Interchange File Format (AIFF) is an audio file format standard used for storing sound data for personal computers and other electronic audio devices. The format was developed by Apple Inc. in 1988 based on Electronic Arts' Interchange File ...
and
WAV Waveform Audio File Format (WAVE, or WAV due to its filename extension; pronounced "wave") is an audio file format standard, developed by IBM and Microsoft, for storing an audio bitstream on PCs. It is the main format used on Microsoft Wind ...
. In AIFF, the tag is stored inside an
IFF In logic and related fields such as mathematics and philosophy, "if and only if" (shortened as "iff") is a biconditional logical connective between statements, where either both statements are true or both are false. The connective is bicon ...
chunk named "ID3". Windows media
ASF ASF may refer to: Arts and entertainment * Alabama Shakespeare Festival, a drama festival * ''Asimov's Science Fiction'', a U.S.-based English-language science fiction magazine containing SF stories Science and technology Biological * A ...
files ( WMA,
WMV Windows Media Video (WMV) is a series of video codecs and their corresponding video coding formats developed by Microsoft. It is part of the Windows Media framework. WMV consists of three distinct codecs: The original video compression technology ...
) have their own tagging formats but also support ID3 Tags embedded as attributes. MP4 also allows the embedding of an ID3 tag.


See also

*
CD-Text CD-Text is an extension of the Red Book Compact Disc specifications standard for audio CDs. It allows storage of additional information (e.g. album name, song name, and artist name) on a standards-compliant audio CD. The specification for CD ...
*
Vorbis comment A Vorbis comment is a metadata container used in the Vorbis, FLAC, Theora, Speex and Opus file formats. It allows information such as the title, artist, album, track number or other information about the file to be added to the file itself. Howeve ...
* Standard Architecture for Universal Comment Extensions (SAUCE) *
XBin XBin, or ''eXtended Binary'', is a file format for saving IBM PC text mode images. Essentially an extension to the normal raw-image BIN (raw memory copy of text mode video memory) files, it provides an enhanced means for saving System console, co ...
(eXtended Binary)


References


External links

*
List of genres in ID3v1




* {{webarchive , url=https://web.archive.org/web/20120310015458/http://www.fortunecity.com/underworld/sonic/3/id3tag.html , date=10 March 2012 , title=ID3 TAG and Enhanced TAG specification
TagLib

Online ID3 Tag Editor
Computer file formats Metadata standards