ID3
Encyclopedia
ID3 is a metadata
Metadata
The term metadata is an ambiguous term which is used for two fundamentally different concepts . Although the expression "data about data" is often used, it does not apply to both in the same way. Structural metadata, the design and specification of data structures, cannot be about data, because at...

 container most often used in conjunction with the MP3
MP3
MPEG-1 or MPEG-2 Audio Layer III, more commonly referred to as MP3, is a patented digital audio encoding format using a form of lossy data compression...

 audio file format
Audio file format
An audio file format is a file format for storing digital audio data on a computer system. This data can be stored uncompressed, or compressed to reduce the file size. It can be a raw bitstream, but it is usually a container format or an audio data format with defined storage layer.-Types of...

. 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.

Although ID3 is sometimes referred to as a standard, the term applies only in the de facto sense, as no standardization body was involved in its creation nor has such an organization given it a formal approval status.

ID3v1

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 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. 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 carried this over into mp3 files. This format was used for a number of file formats unknown at that time.

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 each for the title, artist, album, and a "comment", four bytes for the year, and a byte to identify the genre
Genre
Genre , Greek: genos, γένος) is the term for any category of literature or other forms of art or culture, e.g. music, and in general, any type of discourse, whether written or spoken, audial or visual, based on some set of stylistic criteria. Genres are formed by conventions that change over time...

 of the song from a predefined list of 80 values (Winamp
Winamp
Winamp is a media player for Windows-based PCs and Android devices, written by Nullsoft, now a subsidiary of AOL. It is proprietary freeware/shareware, multi-format, extensible with plug-ins and skins, and is noted for its graphical sound visualization, playlist, and media library features.Winamp...

 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.

Enhanced tag

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 is only supported by few programs, not including XMMS
XMMS
The X Multimedia System is a free audio player for Unix-like systems.-History:XMMS was originally written as X11Amp by Peter and Mikael Alm in November 1997. The player was made to resemble Winamp, which was first released in May that year. As such, XMMS has supported Winamp 2 "classic" skins...

 or Winamp.

Layout

Strings are either space- or zero-padded. Unset string entries are filled using an empty string.

ID3v1: 128 bytes
Field Length Description
header 3 "TAG"
title 30 30 characters of the title
artist 30 30 characters of the artist name
album 30 30 characters of the album name
year 4 A four-digit year
comment 28 or 30 The comment.
zero-byte 1 If a track number is stored, this byte contains a binary 0.
track 1 The number of the track on the album, or 0. Invalid, if previous byte is not a binary 0.
genre 1 Index in a list of genres, or 255


Extended tag (placed before the ID3v1 tag): 227 bytes
Field Length Description
header 4 "TAG+"
title 60 Next 60 characters of the title (90 characters total)
artist 60 Next 60 characters of the artist name
album 60 Next 60 characters of the album name
speed 1 0=unset, 1=slow, 2= medium, 3=fast, 4=hardcore
genre 30 A free-text field for the genre
start-time 6 the start of the music as mmm:ss
end-time 6 the end of the music as mmm:ss

ID3v2

In 1998, a new specification called ID3v2 was created. Although it bears the name ID3, it has little to no relation to ID3v1.

ID3v2 tags are of variable size, and usually occur at the start of the file, to aid streaming media
Streaming media
Streaming media is multimedia that is constantly received by and presented to an end-user while being delivered by a streaming provider.The term "presented" is used in this article in a general sense that includes audio or video playback. The name refers to the delivery method of the medium rather...

. 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
Uniform Resource Locator
In computing, a uniform resource locator or universal resource locator is a specific character string that constitutes a reference to an Internet resource....

 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 byte.

$00 – ISO-8859-1 (ASCII).
$01 – UCS-2 in ID3v2.2 and ID3v2.3, UTF-16 encoded Unicode with BOM.
$02 – UTF-16BE encoded Unicode without BOM in ID3v2.4 only.
$03 – UTF-8 encoded Unicode in ID3v2.4 only.

However, mojibake
Mojibake
, from the Japanese 文字 "character" + 化け "change", is the occurrence of incorrect, unreadable characters shown when computer software fails to render text correctly according to its associated character encoding.-Causes:...

 is still common when using local encoding instead of UTF-16. In particular, some japanese editors are known to use shift-jis
Shift-JIS
Shift JIS is a character encoding for the Japanese language originally developed by a Japanese company called ASCII Corporation in conjunction with Microsoft and standardized as JIS X 0208 Appendix 1...

 code, which usually has disastrous effects : it will assuredly not work with any standard-compliant software regardless of local settings (since it is not supported by the standard), assuredly not work outside Japan (since shift-jis has very little support outside of 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).

In the latest ID3v2 specification 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 published, dated November 1, 2000. Notably, it allows textual data to be encoded in UTF-8
UTF-8
UTF-8 is a multibyte character encoding for Unicode. Like UTF-16 and UTF-32, UTF-8 can represent every character in the Unicode character set. Unlike them, it is backward-compatible with ASCII and avoids the complications of endianness and byte order marks...

, which was a common practice in earlier tags (despite the standard, since it was not supported yet) because it has several noticeable advantages over UTF-16. It uses a null byte
Null character
The null character , abbreviated NUL, is a control character with the value zero.It is present in many character sets, including ISO/IEC 646 , the C0 control code, the Universal Character Set , and EBCDIC...

 to separate multiple values, so the character "/" can appear in text data again. Another new feature allows the addition of a tag to the end of the file before other tags (like ID3v1).

Windows Explorer and Windows Media Player cannot handle ID3v2.4 tags in any version, up to and including Windows 7/Windows Media Player 12. Windows can understand ID3v2 up to and including version 2.3.

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
Enhanced podcast
An enhanced podcast is an audio podcast that can display images simultaneously with audio. These can contain chapter markers, hyperlinks, and artwork; all of which is synced to a specific program or device...

s and it can be used in ID3v2.3 or ID3v2.4 tags.

ID3v2 Embedded Image Extension

The metadata can also contain images of the following types:

$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 (Version 2.3)

AENC Audio encryption
APIC Attached picture

COMM Comments
COMR Commercial frame

ENCR Encryption method registration
EQUA Equalization (replaced by EQU2 in v2.4)
ETCO Event timing codes

GEOB General encapsulated object
GRID Group identification registration

IPLS Involved people list (replaced by TMCL and TIPL in v2.4)

LINK Linked information

MCDI Music CD identifier
MLLT MPEG location lookup table

OWNE Ownership frame

PRIV Private frame
PCNT Play counter
POPM Popularimeter
POSS Position synchronisation frame

RBUF Recommended buffer size
RVAD Relative volume adjustment (replaced by RVA2 in v2.4)
RVRB Reverb

SYLT Synchronized lyric/text
SYTC Synchronized tempo codes

TALB Album/Movie/Show title
TBPM BPM (beats per minute)
TCOM Composer
TCON Content type
TCOP Copyright message
TDAT Date (replaced by TDRC in v2.4)
TDLY Playlist delay
TENC Encoded by
TEXT Lyricist/Text writer
TFLT File type
TIME Time (replaced by TDRC in v2.4)
TIT1 Content group description
TIT2 Title/songname/content description
TIT3 Subtitle/Description refinement
TKEY Initial key
TLAN Language(s)
TLEN Length
TMED Media type
TOAL Original album/movie/show title
TOFN Original filename
TOLY Original lyricist(s)/text writer(s)
TOPE Original artist(s)/performer(s)
TORY Original release year (replaced by TDOR in v2.4)
TOWN File owner/licensee
TPE1 Lead performer(s)/Soloist(s)
TPE2 Band/orchestra/accompaniment
TPE3 Conductor/performer refinement
TPE4 Interpreted, remixed, or otherwise modified by
TPOS Part of a set
TPUB Publisher
TRCK Track number/Position in set
TRDA Recording dates (replaced by TDRC in v2.4)
TRSN Internet radio station name
TRSO Internet radio station owner
TSIZ Size (deprecated in v2.4)
TSRC ISRC (international standard recording code)
TSSE Software/Hardware and settings used for encoding
TYER Year (replaced by TDRC in v2.4)
TXXX User defined text information frame

UFID Unique file identifier
USER Terms of use
USLT Unsynchronized lyric/text transcription

WCOM Commercial information
WCOP Copyright/Legal information
WOAF Official audio file webpage
WOAR Official artist/performer webpage
WOAS Official audio source webpage
WORS Official internet radio station homepage
WPAY Payment
WPUB Publishers official webpage
WXXX User defined URL link frame

Multiple values in v2.3 tags

The version 2.3 of the standard prescribes that some fields can contain multiple values separated by the "/" character. The fields that can contain multiple values are:

TPE1 TCOM TEXT TOLY TOPE

ID3v2 Frame Specification (Version 2.4 - delta respect to 2.3)

EQUA replaced by the EQU2 frame
IPLS replaced by the two frames TMCL and TIPL
RVAD replaced by the RVA2 frame
TDAT replaced by the TDRC frame
TIME replaced by the TDRC frame
TORY replaced by the TDOR frame
TRDA replaced by the TDRC frame
TYER replaced by the TDRC frame
TSIZ deprecated.

New frames
ASPI Audio seek point index
EQU2 Equalisation
RVA2 Relative volume adjustment
SEEK Seek frame
SIGN Signature frame
TDEN Encoding time
TDOR Original release time
TDRC Recording time
TDRL Release time
TDTG Tagging time
TIPL Involved people list
TMCL Musician credits list
TMOO Mood
TPRO Produced notice
TSOA Album sort order
TSOP Performer sort order
TSOT Title sort order
TSST Set subtitle

Multiple values in v2.4 tags

Version 2.4 of the specification prescribes that the text fields (all the fields starting with a T except TXXX) can contain multiple values separated by a null character
Null character
The null character , abbreviated NUL, is a control character with the value zero.It is present in many character sets, including ISO/IEC 646 , the C0 control code, the Universal Character Set , and EBCDIC...

. The null character is the one represented by the termination code for the character encoding used.

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
File manager
A file manager or file browser is a computer program that provides a user interface to work with file systems. The most common operations performed on files or groups of files are: create, open, edit, view, print, play, rename, move, copy, delete, search/find, and modify file attributes, properties...

. Additionally most audio players
Comparison of audio player software
The following comparison of audio players compares general and technical information for a number of software media player programs.For the purpose of this comparison, "audio players" are defined as any media player which can only play audio files...

 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
Tag editor
A tag editor is a piece of software that supports editing metadata of multimedia file formats, rather than the actual file content...

, which concentrate specifically on editing the tags and related tasks. These often offer advanced features such as advanced batch tagging or editing based on regular expression
Regular expression
In computing, a regular expression provides a concise and flexible means for "matching" strings of text, such as particular characters, words, or patterns of characters. Abbreviations for "regular expression" include "regex" and "regexp"...

s.

Implementation in non-mp3s and alternatives

ID3 tags were designed with MP3 in mind, so they would work without problems with MP3
MP3
MPEG-1 or MPEG-2 Audio Layer III, more commonly referred to as MP3, is a patented digital audio encoding format using a form of lossy data compression...

 and MP3Pro
Mp3PRO
mp3PRO is an audio compression algorithm that combines the MP3 audio format with spectral band replication compression methods. It claims to achieve transparency at lower bitrates than MP3, resulting in a file nearly half the size of standard MP3...

 files. 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
AIFF
Audio Interchange File Format is an audio file format standard used for storing sound data for personal computers and other electronic audio devices...

, where the tag is stored inside an IFF
Interchange File Format
Interchange File Format , is a generic container file format originally introduced by the Electronic Arts company in 1985 in order to ease transfer of data between software produced by different companies....

 chunk named "ID3". The same could be accomplished in WAV
WAV
Waveform Audio File Format , is a Microsoft and IBM audio file format standard for storing an audio bitstream on PCs...

, but isn't. The only tagging system in wide usage for WAV is the Broadcast Wave Format, stored as a RIFF chunk.
Windows media ASF
Advanced Systems Format
Advanced Systems Format is Microsoft's proprietary digital audio/digital video container format, especially meant for streaming media...

 files (WMA
Windows Media Audio
Windows Media Audio is an audio data compression technology developed by Microsoft. The name can be used to refer to its audio file format or its audio codecs. It is a proprietary technology that forms part of the Windows Media framework. WMA consists of four distinct codecs...

, WMV) have their own tagging formats but also supports ID3 Tags embedded as attributes.
MP4 also allows the embedding of an ID3 tag, and this is widely supported, especially in Apple's iTunes
ITunes
iTunes is a media player computer program, used for playing, downloading, and organizing digital music and video files on desktop computers. It can also manage contents on iPod, iPhone, iPod Touch and iPad....

, which uses MP4 standards in its audio and video file formats.
Other container-based formats use their own tagging formats. An example of this is Ogg
Ogg
Ogg is a free, open container format maintained by the Xiph.Org Foundation. The creators of the Ogg format state that it is unrestricted by software patents and is designed to provide for efficient streaming and manipulation of high quality digital multimedia.The Ogg container format can multiplex...

, which uses Vorbis comment
Vorbis comment
A Vorbis comment is a metadata container used in the Vorbis, FLAC, Theora and Speex 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. However, as the official Ogg Vorbis documentation notes:- Format...

s. Adding ID3 tags to these would break the container structure. Earlier versions of Winamp
Winamp
Winamp is a media player for Windows-based PCs and Android devices, written by Nullsoft, now a subsidiary of AOL. It is proprietary freeware/shareware, multi-format, extensible with plug-ins and skins, and is noted for its graphical sound visualization, playlist, and media library features.Winamp...

such as 2.xx have been proven able to add ID3v1 and ID3v2 tags to MP1 and MP2 files.

External links

The source of this article is wikipedia, the free encyclopedia.  The text of this article is licensed under the GFDL.
 
x
OK