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: Foobar 1.1.7 combines multiple artist tags into one, and multiple arti (Read 7813 times) previous topic - next topic
0 Members and 1 Guest are viewing this topic.

Foobar 1.1.7 combines multiple artist tags into one, and multiple arti

Hey everyone-
I'm having a couple issues with multiple tags in Foobar and wanted some help.
I use Mp3Tag to tag my files and Foobar to play them.
So, in Mp3Tag, I have tagged a number of files to have multiple tags (e.g. multiple artist tags). For example, I tagged DJ Tiesto's Just Be to have BT as a second artist on the track.
So, in Mp3Tag, in the individual file info, it has two ARTIST tags, DJ Tiesto and BT.
When I play it in Foobar, it shows up as having two artists separated by a comma in the playlist and a semicolon in the metadata field. So that's working as planned.
After I play a song in Foobar, it doesn't change the tags, and Mp3Tag notes it as having 2 ARTIST fields.
However, when I change something in Foobar (like when I run a script to change the rating of a song as I'm listening to it) Foobar rewrites all the tags in the file and while doing that it combines the two artist tags into a single artist tag. When I open the file back up in Mp3Tag, it has the artist listed as DJ Tiesto / BT (not \\) and looking at the individual tag data there is now only a single artist tag. So it combined both artist tags into a single artist tag. Why is it doing that? Is it also combining the multiple title tags I have? It's so frustrating spending time fixing this stuff and then having it undone!

Also, had a question for you all regarding multiple artists in the album view area. I've made a design that looks to see if there is an albumartist, and if so, uses that to sort files, else uses the artist.
$if($meta(album artist),$meta(albumartistsortorder),$meta(artistsortorder))|%albumsortorder%|%track% - %title%
This shows all the albums I have, sorted by album artist, and if there isn't one, then just by the artist. Great. This uses the tags albumartistsortorder and artistsortorder so that I can sort things like Ben Folds as Folds, Ben.
The default "by artist" sort is such: %<artist>%|%album%|[[%discnumber%.]%tracknumber%. ][%track artist% - ]%title%
And this lists multiple songs in multiple branches if there are multiple artists, which is the way it should be.
What I want to do sometimes is do the %<artist>% sorting, but with %<artistsortorder>% instead, but this doesn't work. Foobar doesn't recognize the multiple artistsortorder tags. They don't even show up in the properties.

So, what am I doing wrong? I'd appreciate your help! Do I just need to upgrade to 1.1.8beta (maybe for the second problem)?  I'm afraid to put so much time into getting things the way I want them, just to have Foobar change it all back.
Thanks!

Foobar 1.1.7 combines multiple artist tags into one, and multiple arti

Reply #1
When I open the file back up in Mp3Tag, it has the artist listed as DJ Tiesto / BT (not \\) and looking at the individual tag data there is now only a single artist tag.

foobar2000 writes ID3v2.3 tags by default, and that is how multiple artists are supposed to be formatted:

Quote
TPE1
The 'Lead artist(s)/Lead performer(s)/Soloist(s)/Performing group' is used for the main artist(s). They are seperated with the "/" character.

" / " with spaces is used because of artists like AC/DC.

See Preferences, Advanced, Tagging to switch to ID3v2.4, which does not have this restriction.

Quote
Foobar doesn't recognize the multiple artistsortorder tags. They don't even show up in the properties.

Confirmed for 1.1.8 beta 4 - the first value shows up, while the rest is ignored.

Foobar 1.1.7 combines multiple artist tags into one, and multiple arti

Reply #2
Thanks so much for the quick reply.
I changed to ID3 v2.4 in Foobar, and it still does the same thing. Does the "official" id3 not support multiple tags (as opposed to the "artist" tag having values separated by slashes? That makes it catergorize songs that are really by multiple artists (e.g. Ben Folds\\Regina Spektor), no? Does Fb2k recognize " / " the same as "\\" (which is what Mp3Tag uses)?

I guess the crux of this question is, how do I tag files so that the multiple values within them can be batch processed by Foobar (in terms of albumartistsort and stuff that lets me tree the albums the way I want) and by Mp3Tag (to allow me to implement my own organization system)? If " / " is the wave of the future (and is batchable) then I can do that, but I just want to not have to do this all over again a few years from now. Does that make sense?

As for multiple values of the sorting fields, how does foobar want me to format those?

Thanks!

Foobar 1.1.7 combines multiple artist tags into one, and multiple arti

Reply #3
Quote
I changed to ID3 v2.4 in Foobar, and it still does the same thing.

As your files have existing ID3v2.3 tags, you will have to use "MP3 tag types" from the tagging context menu to rewrite them as ID3v2.4. Check the properties for the current version. Note that even though 2.4 resolves this problem, other hard- and software might not support it, which is why foobar2000 has recently switched to the older version.

In general, you indicate multiple values with ; in foobar2000 and \\ in Mp3tag. foobar2000 additionally requires you to declare multivalue fields at preferences, advanced, display, properties dialog. These separators are arbitrarily chosen, what is actually written to the files depends on the specification of the respective tag format.

So much for the theory, as you have been able to point out specification-compliance issues in both programs, namely Mp3tag not reading multiple artists according to ID3v2.3 spec, and foobar2000 not supporting multiple artist sort order fields. All you can do at the moment is to wait for these limitations to get fixed.

(Insert rant about how ID3v2 is way too complex to be fully implemented. It is because of such problems that I stick to APEv2.)

 

Foobar 1.1.7 combines multiple artist tags into one, and multiple arti

Reply #4
Foobar doesn't recognize the multiple artistsortorder tags. They don't even show up in the properties.


In Mp3tag, the ARTISTSORT tag is written to the TSOP frame (as per iTunes). Foobar apparently reads this frame (only the first TSOP frame it encounters, however), but does not write to it. Instead Foobar, writes its ARTISTSORTORDER tags to custom text frames (TXXX). This one can guess is due to the TSOP frame being non-standard in ID3v2.3.

Upon investigation, I found that if you use Mp3tag to write an ARTISTSORT tag but do not split it into multiple values, you can then use Foobar to split that tag using its Properties dialog. This will split it into multiple ARTISTSORTORDER tags which will be used by Foobar. The drawback to this however is that Foobar will delete the TSOP frame. Doing this obviously isn't a problem if you only use Foobar, but if you also use other media players which utilize the TSOP frame... you're probably screwed.

There is an easier alternative to the method mentioned above. In Mp3tag, use a custom tag field named ARTISTSORTORDER. (You can split it into multiple values ). Mp3tag will write it to TXXX frame(s) as Foobar does which Foobar will recognize and use.

Unfortunately, if you also want iTunes etc. compatibility and also use ARTISTSORT in Mp3tag, you'll be faced with partially broken redundant tags in Foobar. It would be better if Foobar either read and used the TSOP frame, completely ignored the TSOP frame or copied the TSOP frame's contents to a new Foobar field that uses TXXX frames (after which it would ignore the TSOP frame). Foobar reading and taking over but not using the TSOP frame just creates headaches for end-users. The current implementation is greedy and inconsiderate.

EDIT:

Forgot to make it clear that this post is in reference to MP3s and ID3v2.3 tags.