Skip to main content

Notice

Please note that most of the software linked on this forum is likely to be safe to use. If you are unsure, feel free to ask in the relevant topics, or send a private message to an administrator or moderator. To help curb the problems of false positives, or in the event that you do find actual malware, you can contribute through the article linked here.
Topic: Common Foobar tag fields (Read 39920 times) previous topic - next topic
0 Members and 1 Guest are viewing this topic.

Common Foobar tag fields

This thread is a continuation of an ealier discussion in the general Hydrogenaudio forum (http://www.hydrogenaudio.org/forums/index.php?showtopic=19615) to address foorbar users more direct.

In an attempt to create a tag field overview and improve/extend the Matroska tag fields in the process.
I'm interested to find out which common tag fields foobar is using to store information in the different tag types. Is there a complete list available?
Just from the Masstagger in foorbar, there seem to be no missing fields so far.
Also, I would like to know from the users which other tag fields are being used.
E.g. I came across DISC once or twice but is this one being used on a common base and in the same manner?

So far I created the following list: http://hobba.hobba.nl/audio/tag_frame_reference.html
Which included all "official" tag fields of Matroska, OGG, APE and ID3 tags.

Please let me know if I'm missing out any important tag fields.

Common Foobar tag fields

Reply #1
Quote
Please let me know if I'm missing out any important tag fields.

Great reference... The one problem I have is with the ID3v2 fields. ID3v2 doesn't really store the names of the fields, it stores a four character identifier. Thus, there's no right or wrong name of the field.

Foobar2000 also appears to use TRACKNUMBER more-or-less exclusively, for both APEv2 and Vorbis.

I also use ALBUM ARTIST for grouping DJ mix albums (and artist-oriented multiple artist compilations) by the DJ's name. I use VERSION in APEv2 as well as Vorbis for version data. I rarely ever use SUBTITLE; it's a little too redundant with TITLE for my own tastes.

Common Foobar tag fields

Reply #2
Quote
Great reference... The one problem I have is with the ID3v2 fields. ID3v2 doesn't really store the names of the fields, it stores a four character identifier. Thus, there's no right or wrong name of the field.

Agree, the names listed for ID3v2 are the "official" recommened field names though. I'm still in doubt about if I should add the identifiers because of the overview and the purpose of this specific list. For the completeness I might include it in the next major release.
Quote
I use VERSION in APEv2 as well as Vorbis for version data.

Talking about the VERSION tag, we where having a discussion about this tag field on the Matroska mailing list. In a DVD context EDITION is mostly used but imo VERSION is better from an audio cd point of view. To minimize the amount of tags one general tag field should be used for both. Which one would be the best one to use for both? Or should a new field be introduced to combine the two?

Common Foobar tag fields

Reply #3
Quote
Talking about the VERSION tag, we where having a discussion about this tag field on the Matroska mailing list. In a DVD context EDITION is mostly used but imo VERSION is better from an audio cd point of view. To minimize the amount of tags one general tag field should be used for both. Which one would be the best one to use for both? Or should a new field be introduced to combine the two?

VERSION is the more generic term, IMHO. I usually add other specifiers in the tag; in an audio context it'd be "BT & PvD Edit" or "Burufunk's Acid Tweak Mix" or something like that. "Director's Cut" would work perfectly in that context.

Common Foobar tag fields

Reply #4
For me, version makes me think of the cut, such as "Directors Cut".  Whereas the edition would be the type of encoding such as "Deluxe", or anywhere else where it specifically says "Whatever edition".  Do two seperate fields sound good?  Or is it to difficult to distinguish between the two fields.  I'm just not sure if there is anything that would count as a difference with audio CDs.  Is there anything that you could use to distinguish between a version and edition when it comes to CDs?

Common Foobar tag fields

Reply #5
Quote
Whereas the edition would be the type of encoding such as "Deluxe", or anywhere else where it specifically says "Whatever edition".

But wouldn't that  automatically mean it's a different version (of the original)?
If both edition and version are included some information could be stored in both fields. This will cause confusion imo. Unless of course we include a very very accurate description but this wouldn't rule out all situations.

Are there more people who use the DISC field?
Are we missing out any other tags which are being used or maybe should be used?

Common Foobar tag fields

Reply #6
Quote
Are there more people who use the DISC field?
Are we missing out any other tags which are being used or maybe should be used?

I use DISC as well... Just forgot to mention it.

Some of the more esoteric tags I use (forgot to mention them, because I rarely use them, and they aren't in my standard formatting string:

ALBUM SUBTITLE - if the album name was, say: "Machine Soul: An Odyssey into Electronic Music", the part after the colon is the ALBUM SUBTITLE

QUALITY - an organizational tag I use to store rip/encode information. ie. "Q8","REX" or "aps","EAC".

SUBALBUM - denotes a particular section of an album. ie. Prodigy - Music for the Jilted Generation - The Narcotics Suite - Skylined, where The Narcotics Suite is the SUBALBUM, and Skylined is the TITLE. Also,  Orb - Adventures Beyond the Ultraworld - Earth Orbit - Little Fluffy Clouds, where Earth Orbit is the SUBALBUM.

None of these are particularly necessary, they just hold extra information for people looking at the entire tag. I don't recall if I saw them in your list.

Common Foobar tag fields

Reply #7
DISC is important (for records or compilations that spans over several CD's), though I've seen the field as DISK too, but I think DISC is the one most "commonly" used.

ALBUMARTIST is the way I use the tag, but it's also being used as ALBUM ARTIST, as Canar notes. I've seen both used and don't know which is more common...  (Since the two are not recognized as the same it's a bit confusing...) Personally I think maybe it's better for a tagfield to have no spaces in it's identifier. But I think it's an important field when dealing with compilations. Then you have the ARTIST and TITLE field tagged individually for each track but the ALBUM and ALBUMARTIST field to keep the record together when displayed (ALBUMARTIST then take precedence over ARTIST and ARTIST gets displayed together with TITLE).

Did you have ENCODEDBY, RECORDINGDATE, RELEASEDATE and LASTTRACK on your list....?
"ONLY THOSE WHO ATTEMPT THE IMPOSSIBLE WILL ACHIEVE THE ABSURD"
        - Oceania Association of Autonomous Astronauts

Common Foobar tag fields

Reply #8
Quote
I rarely ever use SUBTITLE; it's a little too redundant with TITLE for my own tastes.

Quote
ALBUM SUBTITLE - if the album name was, say: "Machine Soul: An Odyssey into Electronic Music", the part after the colon is the ALBUM SUBTITLE
I'll just leave it as SUBTITLE as that is more generic.
Quote
I use DISC as well... Just forgot to mention it.
I noticed that this one is not listed at all.  What values are stored in it? Is it similar at all to the SET_PART and MEDIA_PART tags listed in the chart?
Quote
QUALITY - an organizational tag I use to store rip/encode information. ie. "Q8","REX" or "aps","EAC".
I hadn't thought of this one and will add it to the Matroska tags. 
Quote
SUBALBUM - denotes a particular section of an album. ie. Prodigy - Music for the Jilted Generation - The Narcotics Suite - Skylined, where The Narcotics Suite is the SUBALBUM, and Skylined is the TITLE. Also, Orb - Adventures Beyond the Ultraworld - Earth Orbit - Little Fluffy Clouds, where Earth Orbit is the SUBALBUM.
I am a little confused by what fields would be used for each part of the title.  Would you look at the Titles section of the Matroska Tags specs to tell me if this overlaps? 

BTW, there are plans to create specific examples by taking some CDs and DVDs and showing in what should be stored in each field.  That way there is less chance of confusion as to which tag to use for a given piece of information.  Perhaps you could offer up some good examples that could be confusing?
Quote
ALBUMARTIST is the way I use the tag, but it's also being used as ALBUM ARTIST, as Canar notes. I've seen both used and don't know which is more common... (Since the two are not recognized as the same it's a bit confusing...) Personally I think maybe it's better for a tagfield to have no spaces in it's identifier. But I think it's an important field when dealing with compilations. Then you have the ARTIST and TITLE field tagged individually for each track but the ALBUM and ALBUMARTIST field to keep the record together when displayed (ALBUMARTIST then take precedence over ARTIST and ARTIST gets displayed together with TITLE).
This is a difficult one and I will have to consider it some more.  It seems strange to make a specific distinction like that, but I guess it is needed.  As for the syntax, Matroska tags use an underscore "_" between words.
Quote
Did you have ENCODEDBY, RECORDINGDATE, RELEASEDATE and LASTTRACK on your list....?
I know that the Matroska tags have ENCODED_BY, DATE_RECORDING, and DATE_RELEASE.  What is LASTTRACK?

Common Foobar tag fields

Reply #9
Quote
Quote
Please let me know if I'm missing out any important tag fields.

Great reference... The one problem I have is with the ID3v2 fields. ID3v2 doesn't really store the names of the fields, it stores a four character identifier. Thus, there's no right or wrong name of the field.

Foobar2000 also appears to use TRACKNUMBER more-or-less exclusively, for both APEv2 and Vorbis.

I also use ALBUM ARTIST for grouping DJ mix albums (and artist-oriented multiple artist compilations) by the DJ's name. I use VERSION in APEv2 as well as Vorbis for version data. I rarely ever use SUBTITLE; it's a little too redundant with TITLE for my own tastes.

foobar's %tracknumber% is mapped to each tagging format's native field. So it uses TRACK for APEv2.

Three other commonly used and supported tagging fields for are:
CUESHEET = contents of *.cue file for that file (supported by fb2k for APE files)
LOGFILE = EAC logfile
ALBUM ARTIST
"To understand me, you'll have to swallow a world." Or maybe your words.

Common Foobar tag fields

Reply #10
Quote
Quote
I use DISC as well... Just forgot to mention it.
I noticed that this one is not listed at all. What values are stored in it? Is it similar at all to the SET_PART and MEDIA_PART tags listed in the chart?

I think this is one that doesn't exist in the list yet and it's a good one to add. Sometimes an album consists of two disc and instead of adding this info to the ALBUM field, like I'm doing now, using DISC is better imo.

Quote
CUESHEET = contents of *.cue file for that file (supported by fb2k for APE files)
LOGFILE = EAC logfile

Is it used to store the complete content of those log files or a URI to the actual log file?

Common Foobar tag fields

Reply #11
Complete contents, so one APE file can autonomously store a complete CD including its physical layout and metadata.
The contents of CUEFILE are automatically parsed by foo_ape.
"To understand me, you'll have to swallow a world." Or maybe your words.

Common Foobar tag fields

Reply #12
VARIOUS is also a quite common tag, used to indicate that the album the track is from has multiple artists. The content doesn't matter afaik, I have seen VARIOUS tags with a list of all artists on the album and a simple "1" as well.

Common Foobar tag fields

Reply #13
I also use VARIOUS = 1 to denote a various artists CD.

I have been using FAVORITE = 1 to denote a "favorite" track of mine.

I also know that many use a RATING tag.

I believe the next logical step in this process (while maybe questionable as far as its relevance to filesharing, etc) would be to denote which tags are "personal" and which are universal.  i.e. If i compose a song, record it, encode it, and distribute it, I doubt each person who recieves the file wants to carry along other's playcount, favorite, or rating data.

I'm sure there are other usefule tags that could be denoted as personal... I will have a deeper look at this later, as I am simply braeking between classes right now.

Anyhow, maybe something needs to be set up like a "Tag Names and Formatting Standard" or something.

One other thing... It is somewhat ambiguous as far as how tags are to be filled.  For instance, I have seen %tracknumber% (or its equivalent) be zero padded, not zero padded, and sometimes it contains something like "1/12" or sometimes just the number of the track itself.

As a more related to foobar discussion, I know many people who write the formatting strings use their oen arbitrary tags to denote certain things like LASTTRACK, etc.  I think the use of VARIOUS came out of this practice.  These sorts of tags can be arguably preserved, as they prove useful to all, even if they aren't used by all.

Anyways, that's just my $.02 USD.

Common Foobar tag fields

Reply #14
The VARIOUS tag is utterly redundant with the ALBUM ARTIST tag. If there's an ALBUM ARTIST tag, you can successfully assume the album is VARIOUS. There'd be no need to add ALBUM ARTIST unless it is various.

I've been using SUBTITLE on a track-level basis, like this: "Paul van Dyk - The Riddle (Tell Me Why)" becomes TITLE = "The Riddle", SUBTITLE = "Tell Me Why".

As for SUBALBUM, there are some places where it could be useful. Check Music for the Jilted Generation for an example of where it's useful. The last three tracks in particular.

@dev0: Does it really remap? Interesting. I wouldn't think that foobar would second-guess the user like that, hehe.

[span style='font-size:14pt;line-height:100%']Edit:[/i][/span]

Instead of spamming you all by posting another topic, I'll add to this one.

Looking at DISC, it doesn't appear to be redundant at all, as Prodoc mentioned. SET_TITLE appears to want to be filled with text. DISC refers to the specific disc in the set. SET_NUMBER may work though, and I suppose SET_TITLE could work too, but it'd be a bit of a hack, IMO. Whatever it is, it's a grouping of Chapters in Matroska terminology.

Like spase mentioned, there's the question of how to list the number of tracks. I currently format my TRACKNUMBER tag as 01/12 for example. That doesn't feel right to me. There should be a LASTTRACK tag or something. Likewise for DISC, if that's adopted as the proper way.

We should also have an implicit distinction between the different levels of meta-data. Perhaps some redundancy can be eliminated this way. Here's how I see it, with bracketed entries being things that I've seen, but don't happen very often.
  • Artist
  • Album
  • Disc
  • (Subalbum)
  • Track
  • (Subtrack)
With the main entries, meta-data can be added at that level to eliminate redundancy. For example, if you were tagging an album, you should only really need to add ARTIST once. It should then be inherited to all the tracks. Likewise for ALBUM and DATE.

Subalbum I've seen in places where I use the SUBALBUM tag. It's probably the most useful of the two odd ones.

Subtrack is another odd one. One clear distinction of it is on Underworld's "Second Toughest in the Infants" CD, tracks 1 and 2. Here's the title of track 1: Juanita/Kiteless/To Dream of Love.

I've listened to the track, and there appear to be three logical places where you could segment the track into its three namesakes. They're just more closely linked to each other than to track 2. There's a pause between tracks 1 and 2, but all the subtracks flow together.

Mike Oldfield's Amarok could be another good distinction. Although a lot of people view it as a CUE file, the components aren't really stand-alone tracks. Instead, they appear to be more just elements of the cohesive whole.

I've really gone off here; if we keep things simple, a lot of this complexity isn't necessary. I can stand to add album-level elements to the tracks.

Common Foobar tag fields

Reply #15
As Canar said the usage of %various% or similiar fields is strongly dicouraged. %album artist% is more flexible (just set it to VA for Albums with multiple artists) and also allows more flexible titleformatting/diskwriter strings.
"To understand me, you'll have to swallow a world." Or maybe your words.

Common Foobar tag fields

Reply #16
Imo this goes for FAVORITE as well, something like RATING or RATE makes FAVORITE redundant.
I must say I didn't expected to see fields which are just being set to 1 to mark something.

Common Foobar tag fields

Reply #17
Quote
Like spase mentioned, there's the question of how to list the number of tracks. I currently format my TRACKNUMBER tag as 01/12 for example. That doesn't feel right to me. There should be a LASTTRACK tag or something. Likewise for DISC, if that's adopted as the proper way.

I don't like the use of the 01/12 format at all. I'm wondering if there realy is a need for LASTTRACK or whatever way you want to store the total amount of track of an album.
In all situations you're storing info of a specific track or it's compilation. Not information about what should be there. If you realy need to know the total amount of tracks you can just look at the list of tracks you've got. Imo it's overkill to add it but I might be overlooking something. If we are storing the total amount we might as well start adding the name of the next en previous track in each track ;-)

I agree there should be a consistent way of adding e.g. the track numbers. I prefer padding it with a zero because it's easier to handle incase e.g. you're renaming your files based upon the track number. Padding it isn't the best solution though, suppose an album turns up with more than 100 tracks? Do we only pad that album with two zero's? Do we need to alter our entire collection to be consistent again?

Having that said I think I should stop padding the track numbers with a zero...

Quote
We should also have an implicit distinction between the different levels of meta-data. Perhaps some redundancy can be eliminated this way. Here's how I see it, with bracketed entries being things that I've seen, but don't happen very often.

I agree with the with the idea of adding levels. Partially this is already being done in the Matroska tags. I suggest adding an Original level as well. This way stuff like ORIGINAL_PERFORMER/ORIGARTIST and ORIGINAL_LYRICIST/ORIGLYRICIST could be eliminated. In this level basically, if necessary, each field can be added again in case of e.g. a cover, remix, parody, re-encoding, etc.

Common Foobar tag fields

Reply #18
Quote
As for SUBALBUM, there are some places where it could be useful. Check Music for the Jilted Generation for an example of where it's useful. The last three tracks in particular.

So in this example, would it be written like this?
<album>   Music for the Jilted Generation</album>
<subalbum>The Narcotic Suite</subalbum>
<title>3 Kilos</title>

BTW, where is the name of the band "Prodigy" stored?

Thanks for pointing out this rather troublesome situation.  I was completely unaware that this occured.
Quote
Looking at DISC, it doesn't appear to be redundant at all, as Prodoc mentioned. SET_TITLE appears to want to be filled with text. DISC refers to the specific disc in the set. SET_NUMBER may work though, and I suppose SET_TITLE could work too, but it'd be a bit of a hack, IMO.
Matroska uses:
[span style='font-size:8pt;line-height:100%']SET_PART - A numerical value indicating which part of a set from TOTAL_SET_PARTS this item is. TRCK tag in ID3.
TOTAL_SET_PARTS - A numerical value indicating the total number of parts to this set. For example, tracks on a CD, or CD/DVDs in a case.
MEDIA_PART - A numerical value indicating which number of media in TOTAL_MEDIA_PARTS this item came from. This is akin to the TPOS tag in ID3.
TOTAL_MEDIA_PARTS A numerical value indicating the total number of media (the type defined in ORIGINAL_MEDIA_TYPE) to this set. For example, CD/DVDs in a case.[/span]

So, you are able to see the track number, and the total number of tracks.  You are also able to see the disc number, and the total number of discs.  Also, the information is all seperated, making it a little easier to parse.
Quote
Whatever it is, it's a grouping of Chapters in Matroska terminology.
Well, you could also use seperate audio streams.  Its better to stick with refering to sources that audio/video will most likely originate from, such as CD/DVD. 
Quote
For example, if you were tagging an album, you should only really need to add ARTIST once. It should then be inherited to all the tracks. Likewise for ALBUM and DATE.
With the Matroska tags, you can specify for a single tag to apply to a single chapter and/or track, all of them, or any combination of them.  However, as with most tagging standards, it shouldn't be that big a deal if you make 10 copies of the ALBUM tag, one for each song.
Quote
Subtrack is another odd one. One clear distinction of it is on Underworld's "Second Toughest in the Infants" CD, tracks 1 and 2. Here's the title of track 1: Juanita/Kiteless/To Dream of Love.

I've listened to the track, and there appear to be three logical places where you could segment the track into its three namesakes. They're just more closely linked to each other than to track 2. There's a pause between tracks 1 and 2, but all the subtracks flow together.
The Matroska Chapters allow for sub-chapters to be defined that would work perfectly for this. So the divisions would be defined at the chapter level, and then you could also tag each of those sub-chapters independantly.  I don't really know how you would do this if you wanted to do it only in the tags.

Common Foobar tag fields

Reply #19
Quote
I agree with the with the idea of adding levels. Partially this is already being done in the Matroska tags. I suggest adding an Original level as well. This way stuff like ORIGINAL_PERFORMER/ORIGARTIST and ORIGINAL_LYRICIST/ORIGLYRICIST could be eliminated. In this level basically, if necessary, each field can be added again in case of e.g. a cover, remix, parody, re-encoding, etc.

ORIGINAL has not yet been added specifically to the Matroska specs.  But it is safe to say that it will be soon.  In this way you could do something like:

<ORIGINAL>
. . <LYRICIST>Some Guy</LYRICIST>
. . <PERFORMER>Some Singer</PERFORMER>
. . <DATE_RELEASE>1972</DATE_RELEASE>
</ORIGINAL>

Common Foobar tag fields

Reply #20
Quote
So in this example, would it be written like this?
<album>   Music for the Jilted Generation</album>
<subalbum>The Narcotic Suite</subalbum>
<title>3 Kilos</title>


Yup. Bang on.

Quote
BTW, where is the name of the band "Prodigy" stored?


<artist>Prodigy</artist>, by your syntax.

Quote
Matroska uses: SET_PART . . .TOTAL_SET_PARTS . . . MEDIA_PART . . . TOTAL_MEDIA_PARTS


Okay, that works perfectly.

Quote
Well, you could also use seperate audio streams.  Its better to stick with refering to sources that audio/video will most likely originate from, such as CD/DVD.


It would be nice to make that standard for the "one album-one file" paradigm. We seem to be attempting to create a standard here, so we might as well put a few recommendations in place.

Quote
With the Matroska tags, you can specify for a single tag to apply to a single chapter and/or track, all of them, or any combination of them.  However, as with most tagging standards, it shouldn't be that big a deal if you make 10 copies of the ALBUM tag, one for each song.


Cool... does the foobar2000 plugin automatically do this?

Quote
The Matroska Chapters allow for sub-chapters to be defined that would work perfectly for this. So the divisions would be defined at the chapter level, and then you could also tag each of those sub-chapters independantly.


That is precisely what I was looking for, though I didn't know it at the time.

Wow. The Matroska spec has been thought through insanely well. I'm very impressed.

Common Foobar tag fields

Reply #21
Quote
I currently format my TRACKNUMBER tag as 01/12 for example. That doesn't feel right to me.
whats not right with that? (you get info about how many tracks are there by just looking at one tag, for example there may be missing tracks otherwise not found when using last=1 or something funny like that...)
PANIC: CPU 1: Cache Error (unrecoverable - dcache data) Eframe = 0x90000000208cf3b8
NOTICE - cpu 0 didn't dump TLB, may be hung

Common Foobar tag fields

Reply #22
Quote
whats not right with that? (you get info about how many tracks are there by just looking at one tag, for example there may be missing tracks otherwise not found when using last=1 or something funny like that...)

They're two different data. Furthermore, the total number of tracks is an album-level tag, while the current track number is a track-level tag. By seperating the two, you don't need to parse the tags to get the two values.

Common Foobar tag fields

Reply #23
Quote
Quote
BTW, where is the name of the band "Prodigy" stored?
<artist>Prodigy</artist>, by your syntax.

So, what tags are used by the singer, drummer, guitarist, etc?
Quote
Quote
With the Matroska tags, you can specify for a single tag to apply to a single chapter and/or track, all of them, or any combination of them. 
Cool... does the foobar2000 plugin automatically do this?
Not as far as I know, however Peter could tell you best as he is the one developing it.
Quote
Wow. The Matroska spec has been thought through insanely well. I'm very impressed.
Well, it definately isn't perfect.  But it was in the planning stages for over a year and had one complete redesign before any code was even written.  It became a choice of either freezing the specs and writing code or being labeled a vaporware group for eternity.

Common Foobar tag fields

Reply #24
In addition ot the MOOD tag, I use TEMPO. (S - Slow; SM - Slow with Medium; SF - Slow with Fast; M - Medium; MF - Medium with Fast; F - Fast). The system is crude, but is invaluable when you wish to listen to certain type of music.

For sets, I use DISC and DISCS. For album, I use TRACKNUMBER and TRACKS.

I have two date fields: ALBUMDATE and TRACKDATE. This is especially useful for compilations.

To cater for versions, I use the following tags: FEATURING, LOCATION, LANGUAGE, PERFORMER, REMIXER; STUDIO/LIVE (boolean), and VERSION. I also use the RELEASESTATUS (Official, Promotion, Bootleg) tag.

I have also given up on the ARTIST tag and use ALBUMARTIST and PERFORMER.

PS: The MOOD tag is a 2 character code:
(LL) Low stress, Low arousal - calm-tiredness, e.g. contentment, serenity;
(LH) Low stress, High arousal - calm-energy, e.g. exuberance, euphoria, ecstatic;
(HH) High stress, High arousal - tense-energy, e.g. fight/flight or freeze response, frantic; and
(HL) High stress, Low arousal - tense-tiredness, e.g. depression, crankiness, disphoria, ominous.
"There is no point in saving WAV... unless you have a huge HD in a very slow computer" - Jan S. (WAV or FLAC, Space No Problem)