Tag Mapping: Difference between revisions

From Hydrogenaudio Knowledgebase
(→‎External links: fix Kid3 frame list URL)
(→‎Dates: Standard date frames are the recording date according to ID3v2.3, 2.4 & Vorbis documentation)
Line 158: Line 158:
! Name !! ID3v1.1 <ref name=id3v1.1 /> !! ID3v2.3 <ref name=id3v2.3 /> !! ID3v2.4 <ref name=id3v2.4 /> !! iTunes MP4 !! WMA !! Vorbis Comment !! APEv2 !! Matroska !! RIFF !! UPnP
! Name !! ID3v1.1 <ref name=id3v1.1 /> !! ID3v2.3 <ref name=id3v2.3 /> !! ID3v2.4 <ref name=id3v2.4 /> !! iTunes MP4 !! WMA !! Vorbis Comment !! APEv2 !! Matroska !! RIFF !! UPnP
|-
|-
| (Release?) Date || || TYER+TDAT(+TIME<ref name=dinkypumpkin />) <ref name=id3v2.3 /> || TDRC || ©day? <ref name=musicbrainz /> || || DATE <sup>M</sup> <ref name=vorbis-v-comment /> <ref name=vorbis-ogg-tagging /> || || || ICRD <ref name=age /> <ref name=fb2kriff /> but <ref name=age />=written || dc:date <ref name=twonky /> <ref name=upnp />
| Recording Date || || TYER+TDAT(+TIME<ref name=dinkypumpkin />) <ref name=id3v2.3 /> || TDRC <ref name=id3v2.4 /> || ©day? <ref name=musicbrainz /> || || DATE <sup>M</sup> <ref name=vorbis-v-comment /> <ref name=vorbis-ogg-tagging /> || || || ICRD <ref name=age /> <ref name=fb2kriff /> but <ref name=age />=written || dc:date <ref name=twonky /> <ref name=upnp />
|-
|-
| bgcolor=#CEF2E0 | Year || Year (4 chars) || TYER <ref name=id3v2.3 /> || part of TDRC || ©day? || WM/Year <ref name=musicbrainz /> || part of DATE || Year <ref name=musicbrainz />
| bgcolor=#CEF2E0 | Year || Year (4 chars) || TYER <ref name=id3v2.3 /> || part of TDRC || ©day? || WM/Year <ref name=musicbrainz /> || part of DATE || Year <ref name=musicbrainz />
|-
|-
| Original Release Date <ref name=foobar2k /> || || TORY (year) <ref name=id3v2.3 /> || TDOR (time?) || || WM/OriginalReleaseYear (year) <ref name=musicbrainz /> || ORIGINALDATE <ref name=musicbrainz />  
| Original Release Date <ref name=foobar2k /> || || TORY (year) <ref name=id3v2.3 /> || TDOR <ref name=id3v2.4 /> || || WM/OriginalReleaseYear (year) <ref name=musicbrainz /> || ORIGINALDATE <ref name=musicbrainz />  
|-
|-
| Recording Dates <ref name=foobar2k /> || || TRDA <ref name=id3v2.3 /> || TXXX <ref name=foobar2k />
| Recording Dates, long date format <ref name=foobar2k /> || || TRDA <ref name=id3v2.3 /> || TXXX <ref name=foobar2k />
|-
|-
| (Podcast) Release Date <ref name=foobar2k /> <ref name=dinkypumpkin /> || || || TDRL (release time)
| (Podcast) Release Date <ref name=foobar2k /> <ref name=dinkypumpkin /> || || || TDRL (release time)

Revision as of 20:46, 20 July 2021

Introduction

This page attempts to document a useful mapping between the tagging schemes used on various (audio) file formats. Hopefully this will help those developers trying to transcode or move audio data around and wish to retain their tags. It is hopefully also of use to developers that read and write metadata from audio files.

Please note that this page is about mapping tags to each other, it does not detail nor dictate the actual way the metadata is stored nor any limitations (or lack thereof). This is way beyond the scope of this page.

The terms metadata/tag/field may be used intermittently on this page to mean the same thing. Also note that this page might not be complete, and may never will be.

Please do not rely on the content being accurate.


Organization

The below tables are organized into categories of data, and within each category the ordering is roughly as follows:

1. tags that apply to a wider range of data (e.g. a whole CD) come before tags that apply to a narrower range of data (e.g. one track).

2. tags are sorted alphabetically where this is relevant.

3. tags that are more widely supported come before tags that are less widely supported.

4. tags that fall into smaller unnamed sub-categories are grouped together.

5. tags that appear very similar but which have not yet been mapped are listed next to each other.

This document will not deal with approaches to tagging, except where certain approaches to tagging are required to make mapping work.


Mapping Tables

Titles

Name ID3v1.1 [1] ID3v2.3 [2] ID3v2.4 [3] iTunes MP4 WMA Vorbis Comment APEv2 Matroska RIFF UPnP
Album Title Album (30 chars) TALB [2] TALB ©alb [4] WM/AlbumTitle [4] ALBUM S [5] [6] Album [4] IPRD [7] upnp:album [8]
Album Title Sort Order TSOA [9] / XSOA [4] TSOA soal [4] WM/AlbumSortOrder [4] ALBUMSORT [4] ALBUMSORT [4]
Original Album Title [9] TOAL [2] TOAL
Disc [4] / Set [9] Subtitle (for multi-disc sets) TSST [9] TSST ----:com.apple.iTunes:DISCSUBTITLE [4] WM/SetSubTitle [4] DISCSUBTITLE [4] DiscSubtitle [4]
Show Name tvsh [4]
Show Name Sort Order sosn [4]
Content Group [9] TIT1 [2] TIT1 ©grp [4] WM/ContentGroupDescription [4] GROUPING [4] Grouping [4]
Track Title Title (30 chars) TIT2 [2] TIT2 ©nam [4] Title [4] TITLE S [5] [6] Title [4] INAM [10] [7] dc:title [8]
Track Title Sort Order TSOT [9] / XSOT [4] TSOT sonm [4] WM/TitleSortOrder [4] TITLESORT [4] TITLESORT [4]
Track Subtitle[9] TIT3 [2] TIT3 ----:com.apple.iTunes:SUBTITLE [4] WM/SubTitle [4] SUBTITLE [4] Subtitle
Version VERSION S [5] [6]
Part PART M [6]
Opus OPUS S [6]
Chapter name CHAPTERxxxNAME [11]
Name ID3v1.1 ID3v2.3 ID3v2.4 iTunes MP4 WMA Vorbis Comment APEv2 Matroska RIFF UPnP

People & Organizations

Name ID3v1.1 [1] ID3v2.3 [2] ID3v2.4 [3] iTunes MP4 WMA Vorbis Comment APEv2 Matroska RIFF UPnP
Album Artist TPE2 [2] TPE2 aART [4] WM/AlbumArtist [4] ALBUMARTIST [12] [4] Album Artist [4] upnp:albumArtist [8]
Album Artist Sort Order TSO2 [9] / TXXX:ALBUMARTISTSORT [4] " soaa [4] WM/AlbumArtistSortOrder [4] ALBUMARTISTSORT [4] ALBUMARTISTSORT [4]
Track Artist Artist (30 chars) TPE1 [2] TPE1 ©ART [4] Author [4] ARTIST S [5] [6] Artist [4] IART [7] upnp:artist [8]
Track Artist Sort Order [9] TSOP [9] / XSOP [4] TSOP soar [4] WM/ArtistSortOrder [4] ARTISTSORT [4] ARTISTSORT [4]
Arranger IPLS[2]:arranger [4] TIPL:arranger ARRANGER M [6] Arranger [4]
Author / Writer TEXT [2] TEXT AUTHOR M [6] IWRI [10]
Writer [4] WRITER [4] Writer [4]
Composer TCOM [2] TCOM ©wrt [4] WM/Composer [4] COMPOSER M [6] [13] Composer [4] IMUS [10] upnp:author [8]
Composer Sort Order TSOC [9] TSOC [9] soco [4]
Conductor TPE3 [2] TPE3 ----:com.apple.iTunes:CONDUCTOR [4] WM/Conductor CONDUCTOR M [6] Conductor [4]
Engineer [4] IPLS[2]:engineer TIPL:engineer ----:com.apple.iTunes:ENGINEER [4] ENGINEER [4] Engineer [4]
Ensemble ENSEMBLE M [6]
Involved People [14] IPLS [2] TIPL
Lyricist TEXT [2] [9] [4] TEXT ----:com.apple.iTunes:LYRICIST [4] WM/Writer [4] LYRICIST M [6] Lyricist
Mix-DJ [4] IPLS:DJ-mix [4] TIPL:DJ-mix [4] ----:com.apple.iTunes:DJMIXER [4] DJMIXER [4] DJMixer [4]
Mix Engineer [4] IPLS:mix [4] TIPL:mix [4] ----:com.apple.iTunes:MIXER [4] MIXER [4] Mixer [4]
Musician Credits [14] TMCL
Organisation ORGANIZATION [5]
Original Artist [9] TOPE [2] TOPE
Original Lyricist [14] TOLY [2] TOLY
Performer IPLS [2] [4] TMCL [4] PERFORMER M [5] [6] Performer [4]
Producer [4] IPLS[2]:producer TIPL:producer ----:com.apple.iTunes:PRODUCER WM/Producer PRODUCER [4] Producer IPRO [10] upnp:producer [15]
Publisher TPUB [2] TPUB PUBLISHER S [6] upnp:publisher [15]
Label [4] maps to TPUB CHECK! ----:com.apple.iTunes:LABEL [4] WM/Publisher [4] LABEL S [6] Label [4]
Label Number LABELNO S [6]
(Internet[2]) Radio Station [9] TRSN [2] TRSN
(internet[2]) Radio Station Owner [9] TRSO [2] TRSO
Remixed By [9] / Mix Artist [14] TPE4 [2] TPE4 ----:com.apple.iTunes:REMIXER [4] WM/ModifiedBy [4] REMIXER [4] MixArtist [4]
Soloists SOLOISTS [12]

Counts & Indexes

Name ID3v1.1 [1] ID3v2.3 [2] ID3v2.4 [3] iTunes MP4 WMA Vorbis Comment APEv2 Matroska RIFF UPnP
Disc Number TPOS=Disc Number/Disc Total [2] " disk [4] WM/PartOfSet [4] DISCNUMBER S [6] 4 Disc [4]
Disc Total TPOS=Disc Number/Disc Total [2] " disk [4] DISCTOTAL [13] and TOTALDISCS [4] Disc [4]
Track Number Album Track TRCK=Track Number/Track Total [2] " trkn [4] WM/TrackNumber [4] TRACKNUMBER S [5] [6] Track [4] IPRT [10] or ITRK [7] upnp:originalTrackNumber [8]
Track Total TRCK=Track Number/Track Total [2] " trkn [4] TRACKTOTAL [13] and TOTALTRACKS [4] Track [4] IFRM [10]
Part Number PARTNUMBER M [6]
Chapter start time CHAPTERxxx [11]
Length [14] TLEN [2] TLEN
Popularimeter [14] or Rating [4] POPM [2] POPM WM/SharedUserRating [4] RATING:user@email [4]
Rating (double meaning) rate PG not popularity RATING [12] popularity? IRTD [10] PG not popularity pv:rating [8] PG not popularity

Dates

Name ID3v1.1 [1] ID3v2.3 [2] ID3v2.4 [3] iTunes MP4 WMA Vorbis Comment APEv2 Matroska RIFF UPnP
Recording Date TYER+TDAT(+TIME[16]) [2] TDRC [3] ©day? [4] DATE M [5] [6] ICRD [10] [7] but [10]=written dc:date [8] [15]
Year Year (4 chars) TYER [2] part of TDRC ©day? WM/Year [4] part of DATE Year [4]
Original Release Date [9] TORY (year) [2] TDOR [3] WM/OriginalReleaseYear (year) [4] ORIGINALDATE [4]
Recording Dates, long date format [9] TRDA [2] TXXX [9]
(Podcast) Release Date [9] [16] TDRL (release time)
Tagging Time [14] TDTG
Period PERIOD [12]

Identifiers

Name ID3v1.1 [1] ID3v2.3 [2] ID3v2.4 [3] iTunes MP4 WMA Vorbis Comment APEv2 Matroska RIFF UPnP
ISRC TSRC [2] TSRC ----:com.apple.iTunes:ISRC [4] WM/ISRC [4] ISRC S [5] [6] ISRC [4]
EAN EAN/UPN S [6]
Product Number PRODUCTNUMBER [13]
Barcode [4] TXXX[2]:BARCODE TXXX:BARCODE ----:com.apple.iTunes:BARCODE WM/Barcode BARCODE [4] Barcode
Catalogue Number TXXX[2]:CATALOGNUMBER [4] TXXX:CATALOGNUMBER [4] ----:com.apple.iTunes:CATALOGNUMBER [4] WM/CatalogNo [4] CATALOGNUMBER [4] CatalogNumber [4]
UPC UPC [12]
MusicBrainz IDs [4] Various Various Various
CDDB ID?
AccurateRip Disc ID ACCURATERIPDISCID S [12]
Podcast ID TGID [14] TGID [14]
CD TOC WM/MCID [17] ITOC [17]

Flags

Name ID3v1.1 [1] ID3v2.3 [2] ID3v2.4 [3] iTunes MP4 WMA Vorbis Comment APEv2 Matroska RIFF UPnP
Compilation TCMP TCMP cpil [4] COMPILATION S [12] [4] Compilation [4]
Podcast [14] PCST [18] PCST [18] pcst [4]

Ripping & Encoding

Name ID3v1.1 [1] ID3v2.3 [2] ID3v2.4 [3] iTunes MP4 WMA Vorbis Comment APEv2 Matroska RIFF UPnP
Encoded By (person/organisation) TENC [2] TENC WM/EncodedBy [4] ENCODED-BY S [6] [19] [13] EncodedBy [4] ITCH [10]
Encoder (software) TSSE [2] TSSE ©too [4] WM/ToolName + WM/ToolVersion ENCODER [19] [13] ISFT [10]
Encoder Settings TSSE [2] TSSE WM/EncodingSettings ENCODING S [6] / ENCODER SETTINGS S [12]
Encoding Time [14] TDEN
Gapless Playback pgap [4]
File Type [14] TFLT [2] TFLT
Media Type [9] / Release Format [4] TMED [2] [9] TMED ----:com.apple.iTunes:MEDIA [4] WM/Media [4] MEDIA [4] Media [4] ISRF [10]
Source Media SOURCEMEDIA S [6] [13]
Source SOURCE [12]
Original Filename [14] TOFN [2] TOFN
AccurateRip Result ACCURATERIPRESULT S [12]
ReplayGain Album Gain TXXX[2]:REPLAYGAIN_ALBUM_GAIN " REPLAYGAIN_ALBUM_GAIN S [19]
ReplayGain Album Peak TXXX[2]:REPLAYGAIN_ALBUM_PEAK " REPLAYGAIN_ALBUM_PEAK S [19]
ReplayGain Track Gain TXXX[2]:REPLAYGAIN_TRACK_GAIN " REPLAYGAIN_TRACK_GAIN S [19]
ReplayGain Track Peak TXXX[2]:REPLAYGAIN_TRACK_PEAK " REPLAYGAIN_TRACK_PEAK S [19]

URLs

Name ID3v1.1 [1] ID3v2.3 [2] ID3v2.4 [3] iTunes MP4 WMA Vorbis Comment APEv2 Matroska RIFF UPnP
Audio Source Webpage URL [9] WOAS [2] WOAS
Chapter URL [11] CHAPTERxxxURL
Commercial Information URL [9] WCOM [2] WCOM
Copyright URL WCOP [2] WCOP
File Webpage URL [9] WOAF [2] WOAF
Track Artist Web Page URL 7 WOAR [2] WOAR
Radio Station URL [14] WORS [2] WORS
Payment URL [9] WPAY [2] WPAY
Publisher ?URL? [9] TPUB [2] not URL TPUB
Podcast URL [14] WFED [18] WFED [18] purl [4]

Style

Name ID3v1.1 [1] ID3v2.3 [2] ID3v2.4 [3] iTunes MP4 WMA Vorbis Comment APEv2 Matroska RIFF UPnP
Genre Genre (80 or 126) TCON [2] (not multiples!) TCON ©gen WM/Genre GENRE M [5] [6] IGNR [7] upnp:genre [8] [15]
Initial Key TKEY [2] TKEY
Mood [14] TMOO TMOO ----:com.apple.iTunes:MOOD [4] WM/Mood [4] MOOD [4] Mood [4]
Style STYLE M [12]
Beats Per Minute 7 TBPM [2] TBPM tmpo [4] WM/BeatsPerMinute BPM [4] BPM [4]

Miscellaneous

Name ID3v1.1 [1] ID3v2.3 [2] ID3v2.4 [3] iTunes MP4 WMA Vorbis Comment APEv2 Matroska RIFF UPnP
Comments Comment (28 chars) COMM [2] COMM ©cmt WM/Comments COMMENT M [6] Comment ICMT [10] [7]
Description TIT3(!) [16] " desc [16] DESCRIPTION [5]
Podcast [14] / Long [16] Description TDES [18] [14] TDES [18] [14] ldes [16]
Contact CONTACT [5]
Copyright Message TCOP [2] TCOP cprt [4] Copyright [4] COPYRIGHT S [5] [6] Copyright [4] ICOP [10]
Cover Art APIC [2] APIC METADATA_BLOCK_PICTURE [19] [13] not COVERART [19] which is deprecated Cover Art (Front)
Instrument INSTRUMENT [12] with performer? see [4]
Language [9] TLAN [2] TLAN ----:com.apple.iTunes:LANGUAGE [4] WM/Language [4] LANGUAGE [4] Language [4] ILNG [10] dc:language [15]
License [4] WCOP (single URL) / TXXX:LICENSE (multiple or non-URL) [4] " ----:com.apple.iTunes:LICENSE LICENSE LICENSE S [5] [6]
Location LOCATION M [5] [6]
(File) Owner [9] TOWN [2] TOWN
Podcast Category [14] TCAT [18] TCAT [18] catg [16]
Podcast Keywords [16] TKWD TKWD keyw [16]
Podcast GUID [16] TGID TGID egid [16]
Rights RIGHTS [19] proposed
Script [4] TXXX[2]:SCRIPT TXXX:SCRIPT ----:com.apple.iTunes:SCRIPT WM/Script SCRIPT Script
Unsynced Lyrics [9] USLT [2] USLT ©lyr [4] WM/Lyrics [4] LYRICS [4] Lyrics [4]

Additional Information

Issues

Due to the re-purposing of ID3v2's TPE2 as Album Artist, we have no field to store the name of the Orchestra, yet we have a dedicated field for the Conductor.

Author / Writer / Lyricist clash through ID3v2 (worse if artist=author or title=author!)

Performers vs involved people vs musicians. All musicians are involved people; not all involved people are necessarily musicians!

Dates - some are specific (recorded/released/tagged) others are just a non-specific date.

Mp3tag

Mp3tag contains some mappings in its initial configuration:

Tag Source Target
VorbisComment DATE YEAR
VorbisComment ORGANIZATION PUBLISHER
VorbisComment TRACKNUMBER TRACK

These mappings were previously internal to Mp3tag, they are now included as initial values in the "User-defined field mappings" preference, which was introduced in version 2.45.

Notes

  1. a b c d e f g h i j ID3v1.1 at id3.org http://id3.org/ID3v1
  2. a b c d e f g h i j k l m n o p q r s t u v w x y z aa ab ac ad ae af ag ah ai aj ak al am an ao ap aq ar as at au av aw ax ay az ba bb bc bd be bf bg bh bi bj bk bl bm bn bo bp bq br bs bt bu bv bw ID3v2.3 at id3.org http://id3.org/id3v2.3.0
  3. a b c d e f g h i j k l ID3v2.4 at id3.org http://id3.org/id3v2.4.0-frames
  4. a b c d e f g h i j k l m n o p q r s t u v w x y z aa ab ac ad ae af ag ah ai aj ak al am an ao ap aq ar as at au av aw ax ay az ba bb bc bd be bf bg bh bi bj bk bl bm bn bo bp bq br bs bt bu bv bw bx by bz ca cb cc cd ce cf cg ch ci cj ck cl cm cn co cp cq cr cs ct cu cv cw cx cy cz da db dc dd de df dg dh di dj dk dl dm dn do dp dq dr ds dt du dv dw dx dy dz ea eb ec ed ee ef eg eh ei ej ek el em en eo ep eq er es et eu ev ew ex ey ez fa fb MusicBrainz Picard tag mapping http://picard.musicbrainz.org/docs/mappings/
  5. a b c d e f g h i j k l m n o http://xiph.org/vorbis/doc/v-comment.html
  6. a b c d e f g h i j k l m n o p q r s t u v w x y z aa ab ac ad http://age.hobba.nl/audio/mirroredpages/ogg-tagging.html
  7. a b c d e f g foobar2k RIFF WAV tagging http://www.hydrogenaudio.org/forums/index.php?showtopic=105749&st=0&p=865737&#entry865737
  8. a b c d e f g h i Twonky http://www.twonkyforum.com/mediawiki/index.php/Mapping_your_Media_file_tags_to_the_Twonky_Database
  9. a b c d e f g h i j k l m n o p q r s t u v w x y z aa ab ac ad ae foobar2k ID3 Tag Mapping http://wiki.hydrogenaudio.org/index.php?title=Foobar2000:ID3_Tag_Mapping
  10. a b c d e f g h i j k l m n o Age Bosma http://age.hobba.nl/audio/tag_frame_reference.html
  11. a b c http://wiki.xiph.org/Chapter_Extension
  12. a b c d e f g h i j k l dBPowerAMP
  13. a b c d e f g h http://wiki.xiph.org/Field_names
  14. a b c d e f g h i j k l m n o p q r s t mp3tag main tags http://help.mp3tag.de/main_tags.html
  15. a b c d e UPnP http://www.upnp.org/specs/av/UPnP-av-ContentDirectory-v3-Service.pdf
  16. a b c d e f g h i j k DinkyPumpkin https://github.com/dinkypumpkin/get_iplayer/wiki/tagging
  17. a b dBPowerAmp storage of CDTOC https://forum.dbpoweramp.com/showthread.php?16705-FLAC-amp-Ogg-Vorbis-Storage-of-CDTOC
  18. a b c d e f g h Podcast extensions https://github.com/judwhite/IdSharp/pull/1
  19. a b c d e f g h i http://wiki.xiph.org/VorbisComment

See also

External links

Other similar tag mappings: