M4A files with ALBUMARTISTS tag MBID Shown as Artist Name
#1
I have an album, Im Prater blüh’n wieder die Bäume, where it is not working.
The files are MA4 (AAC, with APEv2 tags), full and correct tagged with Picard (recent version, v2.6.1), incl. "albumartists" (multiple values, 4 values: "Erich Kunz; Orchester der Wiener Volksoper; Anton Paulik; Wiener Schrammeln") and also four artists (multiple values) in tag "musicbrainz_albumartistid" ("bf4e7cb6-938d-4c66-935c-d1df4387c09c; df7727c9-2b6d-4472-a4b1-bc57e0fdd0ff; 5c990b14-0062-44c4-baa4-64775f81d8e6; 8b30fb98-1bee-4f32-a451-596be2cad0b6").
The first two artits are correct, the third is named "Anton Paulik und den Wiener Schrammeln" (where it should only be "Anton Paulik") and the last one is just the MD-ID (where is should be "Wiener Schrammeln").
I see no errors in the tags and I don't know why it is not working.

Kodi-Settins (advancedsettings - artistseparators) are default, i.e. "artistseparators" is not set.


P.S.: Also for correct tagged WMA files (by Picard, incl. RIFF INFO, Cp 1252) it is not working for me and the second artist is always just added with MB-ID. For this case I've switched to OGG (with Vorbis Comment) and here it is working fine.
Reply
#2
@"NeroRome" I suspect this is a Picard problem, at least I have had problems with getting Picard to add ALBUMARTISTS tag for this album to fake files of that format as a test.

Can you make example files from these two albums available to me via the cloud (PM me a link)? I really need to be able to examine it in detail.

Probably going to split this into own thread if it becomes a drawn out discussion.
Reply
#3
Thanks for the test files @"NeroRome" they are very useful. The actual music does not matter, only that there are fundamentally the same format of file and have the same metatdata. Your approach to producing them both kept the size down, and avoids any copyright questions, all good.

I have an older version of Picard installed (I reverted to it some time ago to avoid a regression/bug, but I have now forgotten what it was to notice if it is now fixed and have no motive to risk update) and that does not see an AMBUMARTISTS tag value at all. Something that they must have fixed. Looking with Mp3Tag it sees a single value for ALBUMARTISTS of "Wiener Schrammeln" and only a single albumartist mbid 8b30fb98-1bee-4f32-a451-596be2cad0b6 (which at least matches). Reading tags from .m4a (AAC, with APEv2 tags) files may well not be covered consistently by all the software out there!

So it was not really a surprize to find that things are breaking down in the tag reading phase which is done using the Taglib library, and not in the processing of the retreived tag data into library entries. Taglib is not reading the ALBUMARTISTS tag values from that file format, so Kodi is struggling to identify 4 artists in the string "Erich Kunz mit dem Orchester der Wiener Volksoper, Ltg.: Anton Paulik und den Wiener Schrammeln" to match to the 4 mbids (that are read correctly).

I will pursue with the dev of Taglib, meanwhile if you modify the ALBUMARTIST tag to "Erich Kunz;  Orchester der Wiener Volksoper;  Anton Paulik Wiener Schrammeln" then Kodi will be able to match up the mbids. Although";" is not the default separator it tries to recover when it has not found enough artist names to match with the mbids and applies ";" as a separator.
Reply
#4
(2021-04-26, 16:49)DaveBlake Wrote: Looking with Mp3Tag it sees a single value for ALBUMARTISTS of "Wiener Schrammeln" and only a single albumartist mbid 8b30fb98-1bee-4f32-a451-596be2cad0b6 (which at least matches). Reading tags from .m4a (AAC, with APEv2 tags) files may well not be covered consistently by all the software out there!

Same here: Mp3Tag only shows just one entry for multiple-values fields, also for other fields like ISRCs.
However, the data of all 4 artists are in the file (e.g. if you look into with a hex viewer) but I cannot say if the format is correct at all.
Loading the tagged files in Picard again sows also all 4 artists, the names from/in "albumartists" and the IDs from "MusicBrainz Album Artist Id"/in "MusicBrainz Release Artist Id". Within Picard (v2.6.1) everything is correct!


I don't know the defined standards (if there are any) of such files and tags and so I don't know what is correct but it looks, not all programs are doing it well.


I also don't know which library Picard uses here. Picard seems to use mutagen.
Since Kodi is somehow focused on Picard, it might be helpful to use the same lib, if possible (but I think it's not).
 
(2021-04-26, 16:49)DaveBlake Wrote: I will pursue with the dev of Taglib, meanwhile if you modify the ALBUMARTIST tag to "Erich Kunz; Orchester der Wiener Volksoper; Anton Paulik Wiener Schrammeln" then Kodi will be able to match up the mbids. Although";" is not the default separator it tries to recover when it has not found enough artist names to match with the mbids and applies ";" as a separator.
Default? I guess it is the default in Picard for AAC (and also ID3 v2.4). I guess I did not change anything here.

BTW: For ID3v2 v2.3 it is possible to select a join-phrase for multiple values in Picard. Here slash, without spaces, is the default. For v2.4 you cannot set it and "; " seems to be uses always.

For Kodi I have the default settings, i.e. noting set in advancedsettings.xml.
For me this means the listed values at https://kodi.wiki/view/Advancedsettings....siclibrary should be in force, i.e. artistseparators are ";", ":", "|", " feat. " and " ft. ".

Changing the tag is one solution but I prefer to set the artist name in the DB ("strArtist" in table "artist" for give "strMusicBrainzArtistID"), like I do it for fixing the artist name for strange/uncommon "credited as" of MusicBrainz (if necessary for me).
Reply
#5
(2021-04-26, 23:16)NeroRome Wrote: I don't know the defined standards (if there are any) of such files and tags and so I don't know what is correct but it looks, not all programs are doing it well.
There are official standards for ID3 format tags (they don't include ARTISTS, ALBUMARTISTS and the various mbids), but not any other tag formats AFAIK. Mostly common tag use is community lead, certain things become common practice over time with organisations like Musicbrainz solving common problems e.g. how to identify individual artists etc. and popularity in turn driving other tag reading/writing software adopting it as a standard. So it is always evolving (in a backwards compatible way)

(2021-04-26, 23:16)NeroRome Wrote: Picard seems to use mutagen. Since Kodi is somehow focused on Picard, it might be helpful to use the same lib, if possible (but I think it's not).
Kodi uses Taglib for reading most formats and ffmpeg for a few others, I don't see that changing anytime soon. If someone wanted to write a tag factory for mutagen too they could, but really there isn't a reason to do so. Mutagen has problems too sometimes.

Just to clarify Kodi is not Picard focussed, just we recognise the great work being done by Musicbrainz as a fellow FOSS project and take advantage of Musicbrainz Id values (and scrape Musicbainz's additional artist/album info) when users have tagged with them. We recommend that users use Picard to tag their music files because it solves so many problems that users often have, but it isn't essential. Kodi goes back far longer than them.


(2021-04-26, 16:49)DaveBlake Wrote: Although";" is not the default separator it tries to recover when it has not found enough artist names to match with the mbids and applies ";" as a separator.
(2021-04-26, 23:16)NeroRome Wrote: Default? I guess it is the default in Picard for AAC (and also ID3 v2.4). I guess I did not change anything here.
Ah, I mean default item separator in Kodi.
Beware with Picard that the UI shows ";" when displaying mutiti-frame tag values as a single string, it does not always mean there is a ";" in the actual tag value. ID3 v2.4 is a multi-frame format so does not have item separators. It is v2.3 that is single frame and has "/" (no spaces) as the official separator. This brings the "AC/DC" problem - "/" is a poor choice as it appears in artist names as does most other punctuation symbols. The community therefore adopted using " / " to solve the "AC/DC", and Kodi has that as its default item separator. It applies it in any format of tagging (because users and old software often just move values from one format to another, so we were seeing single values with separator data in multi-frame formats.

For more robust artist handling additional separators are used for artist names (since v16 I think), but really using a multi-frame format is the easiest way to enable Kodi to identify separate artists when there are many associated with a track. Just need all the software to be reading/writing the same tags.

(2021-04-26, 23:16)NeroRome Wrote: Changing the tag is one solution but I prefer to set the artist name in the DB ("strArtist" in table "artist" for give "strMusicBrainzArtistID"), like I do it for fixing the artist name for strange/uncommon "credited as" of MusicBrainz (if necessary for me).
It was only a suggestion. In time I'm sure we will get a fix to the tag reading, just I can't promise when.
Reply
#6
Ha, the issue isn't Taglib! My friend @black_eagle has discovered that the issue is the way Picard names the ALBUMARTISTS tag for mp4/m4a files. It writes using uppercase for most bespoke tags e.g. "----:com.apple.iTunes:ARTISTS" for  ARTISTS, "----:com.apple.iTunes:COMPOSER" for COMPOSER but for ALBUMARTISTS inconsistently uses lowercase e.g.  "----:com.apple.iTunes:albumartists".

Kodi is looking for "----:com.apple.iTunes:ALBUMARTISTS". Yes I know, having case sensitivity in tag names is a little too picky especially now bespoke tag data is so common but it is historic. But it means that we can get a simple fix into v19.1
Reply
#7
Smile 
Fine!
V19.1 will come soon, I think (hope).


P.S.: Maybe there is something similar also for WAV WMA files but I fear it might be more complex and complicated. Luckily I don't have a big problem with WAV since I only have a few files and I'm working to get rid of them.
Reply
#8
(2021-04-27, 20:53)NeroRome Wrote: P.S.: Maybe there is something similar also for WAV files but I fear it might be more complex and complicated. Luckily I don't have a big problem with WAV since I only have a few files and I'm working to get rid of them.
I think using WAV (traditionally a format without metadata) for a music collection is bonkers, so yes do get them converted. I suggest a nice losses format like FLAC Smile

Thanks for the useful test files that facilitated being able to resolve this issue.
Reply
#9
(2021-04-28, 20:22)DaveBlake Wrote: I think using WAV (traditionally a format without metadata) for a music collection is bonkers, so yes do get them converted. I suggest a nice losses format like FLAC Smile

Corr.: It's not about WAV but lossy WMA files.

Typically I convert them just to Ogg because of space (and Vorbis comment), even if I might lose little quality. Most of these (old) music files are not so important for me anymore.
For WAV (and if important enough) I use FLAC, of course.
Reply
#10
(2021-04-29, 00:49)NeroRome Wrote:
(2021-04-28, 20:22)DaveBlake Wrote: I think using WAV (traditionally a format without metadata) for a music collection is bonkers, so yes do get them converted. I suggest a nice losses format like FLAC Smile

Corr.: It's not about WAV but lossy WMA files.

Typically I convert them just to Ogg because of space (and Vorbis comment), even if I might lose little quality. Most of these (old) music files are not so important for me anymore.
For WAV (and if important enough) I use FLAC, of course.
On musicvideo I've switched from AAC to opus.  Haven't tried on straight music yet (so can't comment on tags).

scott s.
.
maintainer of skin  Aeon MQ5 mods for post-Gotham Kodi releases:
Matrix see: Aeon MQ5 Mod Matrix release thread
Nexus see: Aeon MQ5 Mod Nexus release thread
Aeon MQ 5 skin and addon repo 11.1.0
Reply
#11
(2021-04-27, 12:12)DaveBlake Wrote: ... the issue is the way Picard names the ALBUMARTISTS tag for mp4/m4a files. It writes using uppercase for most bespoke tags e.g. "----:com.apple.iTunes:ARTISTS" for ARTISTS, "----:com.apple.iTunes:COMPOSER" for COMPOSER but for ALBUMARTISTS inconsistently uses lowercase e.g. "----:com.apple.iTunes:albumartists".

I've tested it in Picard and for me it is doing it rather "correct", at least as I'd expect it (beside the not working change from all lowercase to all uppercase in Picard).
As we know, we don't have the tag "albumartists" in Picard by default and we have to make it with a script.

Test-Script for "AlbumArtists" (note the mixed case!):
Code:
$if($eq(%musicbrainz_albumartistid%,89ad4ac3-39f7-470e-963a-56509c546377),$set(AlbumArtists,Various Artists),$setmulti(AlbumArtists,$replace(%_albumartists%,‐,-)))

Picard (tested with v2.6.2) seems to write (user defined) tags as they are named into the M4A-files, keeping the letter case, here "AlbumArtists" for my test-script.
I don't know if this has changed in the past or if it is different for standardized tags or different in other metadata systems.

In my regular script I have the tag in lower case, "albumartists", like it is in the Wiki.
It's also possible to have the same tag name in different styles (eg. all caps and mixed case). However, it seems not to change from all lower case to all upper case in Picard, v.v.

Conclusio: A non-case-sensitive approach might be the best way, even duplicate names in different styles should be handled somehow (e.g. a clear way which style is preferred or at least, it should not crash and maybe it should also not integrate different styled tags).


P.S.: The special processing for "Various Artists" in my script is to keep the English name also for translated artist names.
Reply
#12
Interesting experimentation with Picard @"NeroRome".

It is a continuing shame that while Picard added ARTISTS as a default tag, ALBUMARTISTS remains custom and requires a script to add it. It is equally useful for all the same reasons, and I always assumed it is just a matter of time and someone will get around to implementing it. Since my lowercase script produced an upper case tag in FLAC files I have never considered there could be that level of user control.

Much of the tag processing Kodi does is case insensitive, but mp4 has mixed case for "standard" tags and that makes it a bit of trip hazzard. Tagging has grown organically, so has the implenentation in both Kodi and Picard, and there are inconsitencies newer formats for tagged music like mp4 as almost bound to suffer a little as things settle in. Anyway it is good that Kodi will accommodate upper of lower case depending on what users have done.

Talking about inconsistencies, my favorite is the comparison of Muiscbrainz recording ID and track id in various tag formats:
Internal Name: musicbrainz_recordingid
ID3v2UFID: "http://musicbrainz.org"
Vorbis: "MUSICBRAINZ_TRACKID"
APEv2: "MUSICBRAINZ_TRACKID"
iTunes MP4: "----:com.apple.iTunes:MusicBrainz Track Id"
ASF/Windows: "MediaMusicBrainz/Track Id"

Internal Name: musicbrainz_trackid
ID3v2: "TXXX:MusicBrainz Release Track Id"
Vorbis: "MUSICBRAINZ_RELEASETRACKID"
APEv2 "MUSICBRAINZ_RELEASETRACKID"
iTunes MP4: "----:com.apple.iTunes:MusicBrainz Release Track Id"
ASF/Windows:  "MediaMusicBrainz/Release Track Id"

In effect recording id is "track id" and track id is "release track id". Kodi in both documentation and code uses the tag name as it reads from files e.g "MUSICBRAINZ_TRACKID" and so calls this Musicbrainz Track Id (rather than what is displayed on the the Picard UI  or documented as internal name). Oh history...

Then you have spaces, slashes or dashes, for example Musicbrainz Artist Id is variously "MusicBrainz Artist Id", "MUSICBRAINZ_ARTISTID",
"----:com.apple.iTunes:MusicBrainz Artist Id" and "MusicBrainz/Artist Id". That has caused users and some tagging software devs no end of fiddling.
Reply
#13
(2021-04-29, 18:11)DaveBlake Wrote: Talking about inconsistencies ...

Yea, it's quite a mess.
Reply
#14
Tagscanner’s AlbumArtist and Artist tags are both correctly used in Kodi. That may be a workaround for your m4a files.

I use m4a files to hold an Atmos stream for Atmos Blu-ray audio disc conversions to Kodi’s music library without any issue (you need Kodi 19 to play Atmos m4a files). M4a can also hold DTS-HDMA & TrueHD streams for decoding on an AVR via HDMI Passthrough.
Reply
#15
(2021-05-09, 03:23)HomerJau Wrote: Tagscanner’s AlbumArtist and Artist tags are both correctly used in Kodi. That may be a workaround for your m4a files.

With the fix for the very recent v19.1 it should work now also for Picard (as long as there are no special case cases Wink ).
Reply

Logout Mark Read Team Forum Stats Members Help
M4A files with ALBUMARTISTS tag MBID Shown as Artist Name0