I have a problem regarding the use of multiple values in Mp3tag (v2.43) en Foobar2000 (v0.9.6.5).
In Foobar I've add multiple values in the Publisher field (mp3 file with ID3v2.4) and they show up in Mp3tag, separated by a double backslash (\\), so this seems to work well. If I try it the other way around, it doesn't seem to work at all: Foobar seems to recognise the first value (what is before the double backslash I entered in Mp3tag), but not the others. So it seems Mp3tag saves them using a separator that Foobar cannot recognise. Is this due to a problem (bug?) in Mp3tag or in Foobar? And more important: is there a work around?
(I've also posted this question in the Mp3tag discussion forum: http://forums.mp3tag.de/index.php?showtopic=9412 (http://forums.mp3tag.de/index.php?showtopic=9412) )
i'm not 100% sure if i'm reading your scenario correctly, but I use mp3tag for creating multi-value tags.
i use id3v2.3 tags, but i imagine its prolly not much different.
i've found that in foobar you need to use a semicolon when creating the multi-value tags, when you edit in Properties and save, then open the tag in Mp3tag it will be viewed as \\ instead of ;
in mp3tag, use the \\ to create multi-value tags, but you have to hit Save Tag (if using the tag panel) to translate the \\ into the actual multi tag fields.
hope that makes sense. maybe you can drop some screenshots of what your seeing if that doesn't help.
unless maybe you're referring to Mp3tag only displaying the 1st value of a multi-tag in Column view...that is normal.
that a look at my screen shot:
(http://i43.tinypic.com/2ebhi0x.png)
Probably the problem is in a difference in the ID2v2.4 implementation in both programs, but I'm doing exactly what you do, but it doesn't work. It does work if I create multiple values in foobar - lets say I write "a;b;c" in foobar, it shows as "a\\b\\c" in mp3tag, as expected. The problem it the other way around. If I write "a\\b\\c" in mp3tag (and save ofcourse), it shows just "a" in foobar.
By the way: I did set the used tag fiels as multi value in properties\advanced\display\properties dialog\multivalue fields.
foobar seems to refuse to write multiple values to the TPUB frame (Publisher) the way it does with other frames.
If you write "a;b" in that tag it literally writes this in the frame.
If you add "publisher" to the multi value tags in the advanced properties, and then write "a;b" foobar creates a TXXX frame with a correct multi value tag but not a TPUB frame.
But I don't know why it's doing this.
I don't know about the technical details as you seem to do, but I do know that foobar is able to write multiple values to the publisher tag (which I did add to the list of multi value tags in the advanced properties), because I can assign multiple tags in foobar, which do show up in mp3tag. So far no problem. Once I save in mp3tag, however, al but the first value disappear in foobar. This happens even if I don't change anything in mp3tag and just hit 'save'. So to me it seems that the problem is that the separator that mp3tag writes to file is recognised as end of value string, instead of as separator.
I did some more testing and it seems that you are right that te problem is specific to this tag, or at least that multiple values in mp3tag assigned to the artist tag and in the genre tag are correctly recognised in foobar.
Maybe one of the foobar developers could have a look at this problem? It could be a bug.
it definitely appears to be related to the Publisher tag (TPUB), i was able to reproduce your issue on my machine using both v2.3 & v2.4 tags.
my other custom tags work fine, Style, Mood, Theme, etc and Genre works fine as well.
There seems to be a bug in how foobar reads the publisher tag. Multiple values written in this tag by mp3tag are not read by foobar. See [a href='index.php?showtopic=71521']this post[/a] for more details. Could one of the foobar developers have a look, please?
....
I reported this issue as a possible bug in the [a href='index.php?showtopic=71571']support forum[/a]. I suggest anybody who wants to reply to do so to that topic, as it seems to be a bug.
Threads now merged
Any chance for this getting fixed?
Any chance for this getting fixed?
+1 for getting it fixed
It's quite annoying. I tag all my files with mp3tag using a discogs web script, and there multiple publishers/labels are quite often.
It appears this behavior still exists and there's no good work around. I would have figured when Peter redid the multi-value stuff for tags this would have been fixed, but I guess he missed it.
Any chance for this getting fixed?
+1 for getting it fixedI use a workaround. I use for writing only mp3tag, but I must to use foobar too, for calculating replay gain and bpm (bit per minute) values, and writing them in tags. Because of foobar bugs with multiple values of MP3 tags, in these files I use " / " (without quote) as a limiter between values in COMPOSER, ARRANGER, ARTIST, LYRICIST, CONDUCTOR, PUBLISHER tags.
When I must to use foobar for writing tags:
FLAC: absolutly no probleme, of course.
MP3: I have an action in mp3tag to change all 6 (COMPOSER, ARRANGER, ARTIST, LYRICIST, CONDUCTOR, PUBLISHER) "fals" limiters (" / ") and 2 (GENRE, LANGUAGE) real limiters ("\\") to temporary else (i use "_DPL_"). After I did writings of RG and BPM in foobar, change them back. Important: manually
refreshing in mp3tag after changes in tags with foobar!
These mp3tag actions:
Merging tags before foobar.mta[#0]
T=5
F=COMPOSER
1=$if($eql(%_tag%,'ID3v2.3'),$replace(%composer%, / ,_DPL_),%composer%)
[#1]
T=5
F=ARRANGER
1=$if($eql(%_tag%,'ID3v2.3'),$replace(%arranger%, / ,_DPL_),%arranger%)
[#2]
T=5
F=LYRICIST
1=$if($eql(%_tag%,'ID3v2.3'),$replace(%lyricist%, / ,_DPL_),%lyricist%)
[#3]
T=5
F=ARTIST
1=$if($eql(%_tag%,'ID3v2.3'),$replace(%artist%, / ,_DPL_),%artist%)
[#4]
T=5
F=CONDUCTOR
1=$if($eql(%_tag%,'ID3v2.3'),$replace(%conductor%, / ,_DPL_),%conductor%)
[#5]
T=5
F=PUBLISHER
1=$if($eql(%_tag%,'ID3v2.3'),$replace(%publisher%, / ,_DPL_),%publisher%)
[#6]
T=8
F=GENRE
1=_DPL_
[#7]
T=8
F=LANGUAGE
1=_DPL_
Changing tags back after foobar. FIRST REFRESH!.mta[#0]
T=4
F=TRACK
1=(\\d{1,3}).*
2=$1
3=0
[#1]
T=5
F=COMPOSER
1=$if($eql(%_tag%,'ID3v2.3'),$replace(%composer%,_DPL_, / ),%composer%)
[#2]
T=5
F=ARRANGER
1=$if($eql(%_tag%,'ID3v2.3'),$replace(%arranger%,_DPL_, / ),%arranger%)
[#3]
T=5
F=LYRICIST
1=$if($eql(%_tag%,'ID3v2.3'),$replace(%lyricist%,_DPL_, / ),%lyricist%)
[#4]
T=5
F=ARTIST
1=$if($eql(%_tag%,'ID3v2.3'),$replace(%artist%,_DPL_, / ),%artist%)
[#5]
T=5
F=CONDUCTOR
1=$if($eql(%_tag%,'ID3v2.3'),$replace(%conductor%,_DPL_, / ),%conductor%)
[#6]
T=5
F=PUBLISHER
1=$if($eql(%_tag%,'ID3v2.3'),$replace(%publisher%,_DPL_, / ),%publisher%)
[#7]
T=5
F=GENRE
1=$if($eql(%_tag%,'ID3v2.3'),$replace(%genre%,_DPL_,\\\\),%genre%)
[#8]
T=5
F=LANGUAGE
1=$if($eql(%_tag%,'ID3v2.3'),$replace(%language%,_DPL_,\\\\),%language%)
[#9]
T=1
F=_FIELDNAME
1=2
2=
(A FooBar képtelen kezelni a többszörös mezőket, még az engedélyezett hármat se (előadó, szerző, szövegíró). Megoldás: Ha FooBar-ban kényszerülök címkét írni, előtte lecserélni a 6 személy (COMPOSER, ARRANGER, ARTIST, LYRICIST, CONDUCTOR, PUBLISHER) "ál"-határolóit (" / ") és a 2 valódi határolót (GENRE, LANGUAGE) egyaránt ideiglenes másra, ugyanis íráskor a FooBar valódira-rosszra (";") cseréli, s ekkor adatok tűnnek el. Van rá műveletem (az ideiglenes határoló "_DPL_").)
I wrote:
When I must to use foobar for writing tags:
FLAC: absolutly no probleme, of course.
It was a mistake: there
ARE problems with handling FLAC tags in foobar, too. So I use (similar as above) these 2 actions in mp3tag:
Merging FLAC tags before foobar.mta[#0]
T=8
F=COMPOSER
1=_DPL_
[#1]
T=8
F=ARRANGER
1=_DPL_
[#2]
T=8
F=LYRICIST
1=_DPL_
[#3]
T=8
F=ARTIST
1=_DPL_
[#4]
T=8
F=CONDUCTOR
1=_DPL_
[#5]
T=8
F=PUBLISHER
1=_DPL_
[#6]
T=8
F=GENRE
1=_DPL_
[#7]
T=8
F=LANGUAGE
1=_DPL_
Changing FLAC tags back after foobar. FIRST REFRESH!.mta[#0]
T=5
F=PUBLISHER
1=$if($and($eql(%_extension%,flac),$grtr($len($meta(organization)),0),$not($grtr($len($meta(publisher)),0))),$meta_sep(organization,\\\\),$if($eql(%_extension%,flac),$meta_sep(publisher,\\\\),%publisher%))
[#1]
T=5
F=ORGANIZATION
1=$if($and($eql(%_extension%,flac),$eql($meta(organization),$meta(publisher))),,$meta_sep(organization,\\\\))
[#2]
T=5
F=COMPOSER
1=$if($eql(%_extension%,flac),$replace(%composer%,_DPL_,\\\\),%composer%)
[#3]
T=5
F=COMPOSER
1=$if($eql(%_extension%,flac),$replace(%composer%, / ,\\\\),%composer%)
[#4]
T=5
F=ARRANGER
1=$if($eql(%_extension%,flac),$replace(%arranger%,_DPL_,\\\\),%arranger%)
[#5]
T=5
F=ARRANGER
1=$if($eql(%_extension%,flac),$replace(%arranger%, / ,\\\\),%arranger%)
[#6]
T=5
F=LYRICIST
1=$if($eql(%_extension%,flac),$replace(%lyricist%,_DPL_,\\\\),%lyricist%)
[#7]
T=5
F=LYRICIST
1=$if($eql(%_extension%,flac),$replace(%lyricist%, / ,\\\\),%lyricist%)
[#8]
T=5
F=ARTIST
1=$if($eql(%_extension%,flac),$replace(%artist%,_DPL_,\\\\),%artist%)
[#9]
T=5
F=ARTIST
1=$if($eql(%_extension%,flac),$replace(%artist%, / ,\\\\),%artist%)
[#10]
T=5
F=CONDUCTOR
1=$if($eql(%_extension%,flac),$replace(%conductor%,_DPL_,\\\\),%conductor%)
[#11]
T=5
F=CONDUCTOR
1=$if($eql(%_extension%,flac),$replace(%conductor%, / ,\\\\),%conductor%)
[#12]
T=5
F=PUBLISHER
1=$if($eql(%_extension%,flac),$replace(%publisher%,_DPL_,\\\\),%publisher%)
[#13]
T=5
F=PUBLISHER
1=$if($eql(%_extension%,flac),$replace(%publisher%, / ,\\\\),%publisher%)
[#14]
T=5
F=GENRE
1=$if($eql(%_extension%,flac),$replace(%genre%,_DPL_,\\\\),%genre%)
[#15]
T=5
F=LANGUAGE
1=$if($eql(%_extension%,flac),$replace(%language%,_DPL_,\\\\),%language%)
[#16]
T=1
F=_FIELDNAME
1=2
2=
This bug still persists after 11 years
What bug? In ID3v2, version 2.3, multi-value fields are supposed to be separated by a forward slash. foobar2000 relaxes this to requiring whitespace around the slash, to dodge the issue of certain artists with slashes in their names.
Version 2.4 does no such slash thing. Instead, it uses null byte separators between strings.
This is a genuine bug.
Single values are no problem. Using PUBLISHER gets written to the the TPUB frame like this.
v2.3
(https://i.imgur.com/uDtqP0L.png)
v2.4
(https://i.imgur.com/0PfAp2d.png)
Now look what happens with multiple values and id3 v2.3
(https://i.imgur.com/8zxQCzD.png)
And v2.4
(https://i.imgur.com/kfd3ZaD.png)
Problem acknowledged, thanks for reporting.
And exactly the same story is with the TLAN tag.