How can I control the case sensitivity of id3 tags?

Tags: #<Tag:0x00007fe314f33bb8>

After reading this thread and the various open tickets about case sensitivity in id3 tags I like to ask:
How can I currently control the syntax of id3 tags in my music files with Picard?

Example:
I want to write* the tag Artists (the one with an “s” at the end) with a big A followed by small rtists.

How can I achieve this syntax with a script or another workaround?
(Currently, Picard writes it as ARTISTS back to my tags, regardless of my current existing tag syntax).

* I’m aware that the compatibility with other software could be compromised. I don’t use such software. :wink:

You can’t in general for the “artists” tag, as this is mapped in Picard to TXXX:ARTISTS. You can kind of by leveraging the fact that Picard saves unknown tags as is to TXXX frames.

First you should remove the normal TXXX:ARTISTS tag from the files. That means loading them into Picard, deleting the artists tag and save them.

Then you could load them again but have a script like this:

$setmulti(Artists,%artists%)
$unset(artists)

Then save again. On future saves this will work out as Picard remembers the casing of the tag.

I’m not sure this is worth the trouble, though. I know some players are picky and read the tags case sensitive, but if it does handle the TXXX:ARTISTS tag it most likely expects them all upper or all lowercase.

And on a side note I think anyway the artists tag as it currently exists with a fixed mapping was a mistake. IMHO we should have instead just provided a variable %_artists% and let the users decide what to do with this. E.g. in your case just do a

$setmulti(Artists,%_artists%)

Or maybe someone wants to just properly save multiple values to the normal artist tag, which some players support:

$setmulti(artist,%_artists%)
2 Likes