Question about merging tags, possible? [script]

Afternoon all,

Quick question. Let’s say, I am retagging a few classical albums and feel like taking tags from the performer:piano and performer:violin tags, and copying them (not moving them) to the PERFORMER field. Because, reasons. :slight_smile:

I already have awesome scripts set in place to do this on a single-level.
i.e. copy perf:piano to PERFORMER via ‘$set(Performer,$get(performer:piano))’ and it works beautifully.

But I’m curious, as an OCD music nerd. Is this possible to combine this into one step for both performers evenly, not just the ‘soloist’? Both performers merged with a semi-colon into the performer field please?


Example: can you merge the fields
performer:piano AND performer:violin
INTO the “PERFORMER” field, so it results as:

PERFORMER = Violinist_Name;Pianist_Name

I really hope this is possible, but I am sadly not a scripting guru.
Yet. :slight_smile:

Thanks everyone!!

PS. I only got as far as something like this, but I failed :frowning:

$set(_performers,$performer(violin);$performer(cello);$performer(piano))
$copymerge(performer,_performers)

– this works, and seems to write a performer tag with the names;names;names correct, but MusicBee and other programs don’t recognize this in the standard PERFORMER tag.

Any new tags set or tags modified by the file naming script will not be written to the output files’ metadata. – I don’t understand this, why aren’t my tags sticking to the performer tag field in other programs when I hit “save” in Picard?

Your script in general would work. It would write the performers with a generic role of “performer” to the file (instead of the individual instruments).

I am not sure if the list of instruments is specific, or if the actual goal was to flatten all performers if so you could also do this:

$setmulti(_performers,$performer(/.*/,;))

$performer(/.*/,;) will give you all performer names independent of role / instrument, and separate them by semicolon.

I think the rest is answered in:

One additional note would be that MusicBee to my knowledge has no standard “PERFORMER” tag. I don’t know right now how the list of performers you see in the UI is internally called. But I assume when you talk about “standard PERFORMER” tag is that you just added a custom tag with that name to MusicBee?

One option would be to avoid confusion and have the plain list of performer names you want to have with a different tag name, e.g. “PERFORMERS”, to avoid confusion with the internal name performer:

$copymerge(PERFORMERS,$performer(/.*/,;))
2 Likes

Whoa, that flatten script is exactly what I was after, thanks so much.

I am considering making a ‘custom’ type tag indeed, like a PERFORMERS or something.

Appreciate the help so much.