Hello,
Out of curiosity, and to get a better understanding on how I should use tags (and what other fields I should wish for),
how do the tag fields used in MM as explained here correlate with the ID3v2.4 frames declared here?
eg. I would like to get the following information:
"Track Title" = TIT2
"Track Artist" = TPE1 (or TPE2?)
"Rating" = POPM
etc...
Thanks!
MM field <-> ID3v2 frames correlation
-
- Posts: 251
- Joined: Tue Dec 06, 2005 8:01 pm
OK, I decided to go ahead and figure it out by myself. I didn't stop there, I figured it out for FIVE different taggers!
I would expect the developers (jiri, are you reading this?) to be highly interested in this, and I'm planning to post a wishlist based on these results soon.
nB: please don't ask how long it took me to compile this. Long enough that I doubt I would do it again!!
The corresponding "wishlist" is posted here.
Programs:
*********
MM: Media Monkey 2.5.2
HE: Helium
MMJB: Musicmatch Jukebox
ML: Music Library
TC: MP3 tag clinic
TGF: The Godfather
Method:
*******
- Took an old MP3 file, cut it down to a very small fragment (30 seconds)
- CLEANED all existing tags and made 5 copies, named them appropriately
- Loaded each file with a different tagger and filled all available fields using either the field name or a predefined code (to easily identify the results)
- opened each tagged MP3 file with a text editor and searched manually for all ID3 frames!
Results, alphabetically by ID3 frame:
*******************************************************************
APIC: Album Art - MM, HE, MMJB, TGF
COMM:
"Comment" or "Notes - all (HE allows multiple comment fields)
"MMJB Tempo" - all except TGF
"MMJB Mood" - HE, MMJB, ML, TC (that explains why I lost all mood info when I switched MMJB -> MM!)
"MMJB Situation" - all except TGF
"MMJB Preference" - all except TGF (but MM remaps it as "quality")
"MMJB Biography" - HE, MMJB, TC
Custom fields - MM, HE (3 each)
Featured Artist - MMJB, TC
"Classical" tags (Period, featured performer, movement, instrument, genre, arranged for) MMJB, TC
Catalog # - HE
"Helium Comment" - HE
COMR:
Commercial contact URL - TC
Seller - TC
Commercial logo - TC
OWNE: Seller - TC (REPEATS the info from COMR!)
POPM: Rating - MM, HE
RVA2: Volume adjustment - MM, HE
TALB: Album - all
TBPM: BPM - MM, HE, TC
TCOM: Composer - all
TCON: Genre - all
TCOP: Copyright - all except MMJB
TDLY: Playlist Delay - TC
TDOR: Release Time (HH:MM) - TC
TDRC: Recording Date (YYYY/MM/DD-HH:MM) - TC (duplicates the info from TYER here)
TDRL: Release Year - HE
TENC: Encoded by - HE, ML, TC, TGF
TEXT: Lyricist - MM, HE, TC, TGF
TFLT: File Type - TC
TIPL: Function -> Name (multiple fields) - HE, TC
TIT1: Grouping - HE, Work - MMJB, Content Group - TC, TGF
TIT2: Track title - all
TIT3: Subtitle - HE, TC, TGF
TKEY: Initial Key - TC
TLAN: Language - HE, TGF
TMCL: Instrument -> Musician (multiple fields) - HE, TC
TMED: Media Type - HE, TC, TGF
TMOO: Mood - MM only!
TOAL: Original Title / Album - MM, HE, TC, TGF
TOFN: Original Filename - TC, TGF
TOLY: Original Lyricist - MM, HE, TC, TGF
TOPE: Original Artist - all except MMJB
TOWN: File owner - HE, TC, TGF
TPE1: Track artist - all
TPE2: Album artist - MM, HE or Orchestra - TC, TGF (note: ID3v2 specs calls for BAND/ORCHESTRA, "Album artist" DOES NOT EXIST!)
TPE3: Conductor - MMJB, TC, TGF
TPE4: Remix / Modified by: HE, TC, TGF
TPOS: CD # of # - HE, MMJB, TC, TGF
TPRO: Producer - HE
TPUB: Publisher - MM, HE, TC, TGF
TRCK: Track # - all
TRSN: Internet Radio Name - TGF
TRSO: Internet Radio Owner - TGF
TSOP: Artist Sort Order - HE
TSOT: Title Sort Order - HE
TSRC: ISRC - MM, HE
TSSE: Encoder - MM, HE, TGF. Note: TC uses it to store a hotkey ?!?
TXXX:
Featured Artist - HE
User text (long field) - TC
Tones, Styles, Mood, Situation, Rating, Quality, Tempo, Type, User fields (2) - TGF
USER: Terms of Use - TC
USLT: both unsynchronized and timestamped lyrics - all (TC includes a separate "lyrics description" field)
WCOM: Buy CD / Commercial URL - HE, TC, TGF
WCOP: Copyright URL - TC, TGF
WOAF: Audio URL - HE, MMJB, TC, TGF
WOAR: Artist URL - HE, MMJB, TC, TGF
WOAS: Source URL - TC, TGF
WORS: Radio URL - HE, MMJB, TC, TGF
WPAY: Payment URL - TC, TGF
WPUB: Publisher URL - HE, TC, TGF
WXXX: Custom URL - ML, TC, TGF
*******************************
DEPRECATED FRAMES FROM ID3v2.3:
*******************************
IPLS: Involved People - MM, HE, TGF (TGF is the only one to assign multiple fields)
TDAT: Original Date - TGF
TIME: Original Time - TGF
TORY: Original Year - MM, HE, TGF
TYER: Year - all
Finally a note on the location of the tags in the file:
Almost all taggers conform to specs here. The only difference I found were:
- Musicmatch: Tags are spread all over the file, truly a mess! (NOW I understand why tags often get corrupted in MMJB!)
- MP3 Tag Clinic: puts the Commercial and MMJB fields later in the file.
NOTE:
SINCE ORIGINALLY POSTING THIS, I DISCOVERED I MADE A FEW MISTAKES.
WILL CORRECT THEM AS SOON AS I HAVE TIME. DON'T FULLY TRUST THESE RESULTS YET!
I would expect the developers (jiri, are you reading this?) to be highly interested in this, and I'm planning to post a wishlist based on these results soon.
nB: please don't ask how long it took me to compile this. Long enough that I doubt I would do it again!!

The corresponding "wishlist" is posted here.
Programs:
*********
MM: Media Monkey 2.5.2
HE: Helium
MMJB: Musicmatch Jukebox
ML: Music Library
TC: MP3 tag clinic
TGF: The Godfather
Method:
*******
- Took an old MP3 file, cut it down to a very small fragment (30 seconds)
- CLEANED all existing tags and made 5 copies, named them appropriately
- Loaded each file with a different tagger and filled all available fields using either the field name or a predefined code (to easily identify the results)
- opened each tagged MP3 file with a text editor and searched manually for all ID3 frames!

Results, alphabetically by ID3 frame:
*******************************************************************
APIC: Album Art - MM, HE, MMJB, TGF
COMM:
"Comment" or "Notes - all (HE allows multiple comment fields)
"MMJB Tempo" - all except TGF
"MMJB Mood" - HE, MMJB, ML, TC (that explains why I lost all mood info when I switched MMJB -> MM!)
"MMJB Situation" - all except TGF
"MMJB Preference" - all except TGF (but MM remaps it as "quality")
"MMJB Biography" - HE, MMJB, TC
Custom fields - MM, HE (3 each)
Featured Artist - MMJB, TC
"Classical" tags (Period, featured performer, movement, instrument, genre, arranged for) MMJB, TC
Catalog # - HE
"Helium Comment" - HE
COMR:
Commercial contact URL - TC
Seller - TC
Commercial logo - TC
OWNE: Seller - TC (REPEATS the info from COMR!)
POPM: Rating - MM, HE
RVA2: Volume adjustment - MM, HE
TALB: Album - all
TBPM: BPM - MM, HE, TC
TCOM: Composer - all
TCON: Genre - all
TCOP: Copyright - all except MMJB
TDLY: Playlist Delay - TC
TDOR: Release Time (HH:MM) - TC
TDRC: Recording Date (YYYY/MM/DD-HH:MM) - TC (duplicates the info from TYER here)
TDRL: Release Year - HE
TENC: Encoded by - HE, ML, TC, TGF
TEXT: Lyricist - MM, HE, TC, TGF
TFLT: File Type - TC
TIPL: Function -> Name (multiple fields) - HE, TC
TIT1: Grouping - HE, Work - MMJB, Content Group - TC, TGF
TIT2: Track title - all
TIT3: Subtitle - HE, TC, TGF
TKEY: Initial Key - TC
TLAN: Language - HE, TGF
TMCL: Instrument -> Musician (multiple fields) - HE, TC
TMED: Media Type - HE, TC, TGF
TMOO: Mood - MM only!
TOAL: Original Title / Album - MM, HE, TC, TGF
TOFN: Original Filename - TC, TGF
TOLY: Original Lyricist - MM, HE, TC, TGF
TOPE: Original Artist - all except MMJB
TOWN: File owner - HE, TC, TGF
TPE1: Track artist - all
TPE2: Album artist - MM, HE or Orchestra - TC, TGF (note: ID3v2 specs calls for BAND/ORCHESTRA, "Album artist" DOES NOT EXIST!)
TPE3: Conductor - MMJB, TC, TGF
TPE4: Remix / Modified by: HE, TC, TGF
TPOS: CD # of # - HE, MMJB, TC, TGF
TPRO: Producer - HE
TPUB: Publisher - MM, HE, TC, TGF
TRCK: Track # - all
TRSN: Internet Radio Name - TGF
TRSO: Internet Radio Owner - TGF
TSOP: Artist Sort Order - HE
TSOT: Title Sort Order - HE
TSRC: ISRC - MM, HE
TSSE: Encoder - MM, HE, TGF. Note: TC uses it to store a hotkey ?!?
TXXX:
Featured Artist - HE
User text (long field) - TC
Tones, Styles, Mood, Situation, Rating, Quality, Tempo, Type, User fields (2) - TGF
USER: Terms of Use - TC
USLT: both unsynchronized and timestamped lyrics - all (TC includes a separate "lyrics description" field)
WCOM: Buy CD / Commercial URL - HE, TC, TGF
WCOP: Copyright URL - TC, TGF
WOAF: Audio URL - HE, MMJB, TC, TGF
WOAR: Artist URL - HE, MMJB, TC, TGF
WOAS: Source URL - TC, TGF
WORS: Radio URL - HE, MMJB, TC, TGF
WPAY: Payment URL - TC, TGF
WPUB: Publisher URL - HE, TC, TGF
WXXX: Custom URL - ML, TC, TGF
*******************************
DEPRECATED FRAMES FROM ID3v2.3:
*******************************
IPLS: Involved People - MM, HE, TGF (TGF is the only one to assign multiple fields)
TDAT: Original Date - TGF
TIME: Original Time - TGF
TORY: Original Year - MM, HE, TGF
TYER: Year - all
Finally a note on the location of the tags in the file:
Almost all taggers conform to specs here. The only difference I found were:
- Musicmatch: Tags are spread all over the file, truly a mess! (NOW I understand why tags often get corrupted in MMJB!)
- MP3 Tag Clinic: puts the Commercial and MMJB fields later in the file.
NOTE:
SINCE ORIGINALLY POSTING THIS, I DISCOVERED I MADE A FEW MISTAKES.
WILL CORRECT THEM AS SOON AS I HAVE TIME. DON'T FULLY TRUST THESE RESULTS YET!
Last edited by MCSmarties on Fri Jun 16, 2006 3:59 pm, edited 2 times in total.
This is a very interesting and important topic, thank you very much for this hard work(*). I never dreamt that there would be so many differences between the taggers all claiming to follow the ID3 standard, until I started to wonder why other music managers could not find my "rating" field that I had set in MediaMonkey!
I find this rather sad. What's going wrong here?
popper.
(*) although I guess that it would be easier to read in a table format...
I find this rather sad. What's going wrong here?
popper.
(*) although I guess that it would be easier to read in a table format...
-
- Posts: 251
- Joined: Tue Dec 06, 2005 8:01 pm
Obviously I had this data in a table but well, I couldn't post in that format.
I think there are several reasons for these differences.
One, ID3 is only an INFORMAL standard, it's unfortunately not BINDING.
Two, the specifications are not always entirely clear and I guess some programmers just didn't read the standard carefully enough (a very common "mistake" seems to be to use COMM frames for custom fields, they should really be in TXXX.
Three, MMJB is clearly to blame for deviating from the standard. I have no idea why they did that but the cynic in me suspects an attempt for vendor lock-in. Since MMJB was de facto one of the best taggers available some 5-8 years ago with a huge user base, people complained in other software that it was not compatible with MMJB - so it got spread further.
In my opinion, there is one tool that is sorely missing: a way to export ALL tag information to a text file, and reimport it with a specified mapping. If such a tool would exist, the problem would be solved: users could just save all their tags, change tagging software and reassign the information they so painstakingly entered...
I think there are several reasons for these differences.
One, ID3 is only an INFORMAL standard, it's unfortunately not BINDING.
Two, the specifications are not always entirely clear and I guess some programmers just didn't read the standard carefully enough (a very common "mistake" seems to be to use COMM frames for custom fields, they should really be in TXXX.
Three, MMJB is clearly to blame for deviating from the standard. I have no idea why they did that but the cynic in me suspects an attempt for vendor lock-in. Since MMJB was de facto one of the best taggers available some 5-8 years ago with a huge user base, people complained in other software that it was not compatible with MMJB - so it got spread further.
In my opinion, there is one tool that is sorely missing: a way to export ALL tag information to a text file, and reimport it with a specified mapping. If such a tool would exist, the problem would be solved: users could just save all their tags, change tagging software and reassign the information they so painstakingly entered...
I think that if MediaMonkey wants to be a real music manager it should be able to do more with the tags. A problem of course is that mp3 has the most tags and other file formats are more limited.
Additional (Gold) tools like the ability to write to tags of other application, read all tags (advanced tab), copy from other application tags to MediaMonkey tags, etc. would be a nice set of advanced features. For many this would be overkill, but it certainly would be a welcome feature for others.
Additional (Gold) tools like the ability to write to tags of other application, read all tags (advanced tab), copy from other application tags to MediaMonkey tags, etc. would be a nice set of advanced features. For many this would be overkill, but it certainly would be a welcome feature for others.
Download MediaMonkey ♪ License ♪ Knowledge Base ♪ MediaMonkey for Windows 2024 Help ♪ MediaMonkey for Android Help
Lowlander (MediaMonkey user since 2003)
Lowlander (MediaMonkey user since 2003)