Revision as of 15:53, 27 October 2005
Music Metadata (ID3 and Vorbis/FLAC Comment) Tags
Status:
Error creating thumbnail: Unable to save thumbnail to destination
The information on this page is expired. It needs to be updated!
Applications that read or write metadata tags from music files should follow one consistent specification for what MusicBrainz information is stored where and in what tag. That way all the work of the various tagger applications will contribute to a well connected and clean body of metadata. Any application that deals with music should be able to read the MusicBrainz identifiers from a music file in order to communicate unambiguously about the music it's working with.
ID3v2 Tag specifications
To store the MusicBrainz identifiers in an ID3v2 tag, you will need to use a UFID frame for the Track Id, and up to three TXXX user defined text frames for the artist, album and trm identifiers. Please note that for ease of use the ID3 frames are specified to use ISO 8859-1. However, the types of characters used to express these tags are the same in ISO 8895-1 and UTF-8, since UTF-8 is backward compatible with 7-bit ASCII.
See ID3v2Tags for a list of proposed frames tagger applications could write.
MusicBrainz Track Identifier:
Owner identifier: |
http://musicbrainz.org
|
Identifier: |
[mb track uuid]
|
MusicBrainz Artist Identifier:
- TXXX User defined text information frame
Text encoding |
$00 (ISO-8859-1)
|
Description |
MusicBrainz Artist Id
|
Value: |
[mb artist uuid]
|
MusicBrainz Album Identifier:
- TXXX User defined text information frame
Text encoding |
$00 (ISO-8859-1)
|
Description |
MusicBrainz Album Id
|
Value: |
[mb album uuid]
|
MusicBrainz Album Artist Identifier:
This identifier is used to indicate the artist for the album if the tracks on the album are from various artists. Currently, only an artist id of 89ad4ac3-39f7-470e-963a-56509c546377 is being used to indicate that this track comes from a various artist album. If this field is not present, the track comes from an album where all tracks were created by the same artist.
- TXXX User defined text information frame
Text encoding |
$00 (ISO-8859-1)
|
Description |
MusicBrainz Album Artist Id
|
Value: |
[mb album artist uuid]
|
MusicBrainz TRM Identifier:
- TXXX User defined text information frame
Text encoding |
$00 (ISO-8859-1)
|
Description |
MusicBrainz TRM Id
|
Value: |
[mb trm uuid]
|
MusicBrainz Artist Sortname
The artist sortname should really be stored in a ID3v2.4 frame called TSOP, but that is not supported under ID3v2.3. For writing ID3v2.3 tags, a XSOP frame that is formatted like a regular text frame should be used. You should never write a XSOP frame in ID3v2.4 tag.
- XSOP Experimental, Sort order, Performer.
Text encoding |
[implementors choice *
|
Value: |
[mb artist sortname]
|
- (*) The text encoding field should be set to whatever encoding is being used for the TPE1, TIT2 and TALB track. Given that MusicBrainz uses UTF-8 to store its data, you should choose encoding $03 (UTF-8) if you plan to store MB data without changing its encoding. However, the UTF-8 encoding is only available in ID3v2.4. Alternatively use encoding $01 (UTF-16) if you're writing ID3v2.3 or earlier tags. (see ID3v2.4 specification for more details on X??? frames)
To store the MusicBrainz identifiers in an Ogg Vorbis comment stream or a FLAC file you will need to use the following comments. Remember that Vorbis/FLAC comments fields are in UTF-8, and they should follow these recommendations.
MusicBrainz Track Identifier:
Comment name: |
MUSICBRAINZ_TRACKID
|
Comment value: |
[mb track uuid]
|
MusicBrainz Artist Identifier:
Comment name: |
MUSICBRAINZ_ARTISTID
|
Comment value: |
[mb artist uuid]
|
MusicBrainz Album Identifier:
Comment name: |
MUSICBRAINZ_ALBUMID
|
Comment value: |
[mb album uuid]
|
MusicBrainz Album Artist Identifier:
See comments above in ID3 section.
Comment name: |
MUSICBRAINZ_ALBUMARTISTID
|
Comment value: |
[mb album artist uuid]
|
MusicBrainz TRM Identifier:
Comment name: |
MUSICBRAINZ_TRMID
|
Comment value: |
[mb trm uuid]
|
MusicBrainz Artist Sortname
Comment name: |
MUSICBRAINZ_SORTNAME
|
Comment value: |
[mb artist sortname]
|
OriginalVersion