Track Title

Tags: #<Tag:0x00007f6d4fdfb650> #<Tag:0x00007f6d4fdfb330> #<Tag:0x00007f6d4fdfb1c8>

Hello, this is the first time I’m using MusicBrainz Picard, I just clustered my entire library and changed the tags to %TCMP%/%album%/%tracknumber% %title% so that Navidrome can detect multiple artists on the same track.


I have saved the changes, but now the album and artist are added to the name of each song, which did not appear before. How can I rectify this?

Thanks for your time and help

So you used the “Tags from file names” function to read the tags from the file name sructure, right?

To me this looks like your files had title, album name and artist as part of the name, and with %tracknumber% %title% you read this all into the title tag. With the already tagged files this will be difficult to remove, as there is nothing delimiting the individual parts and it is unclear what belongs to the track title, album title or artist.

Best would be if you hopefully still have a backup of your files and process them again. If you can share the folder and file structure we could help coming up with the proper pattern for “Tags from filenames”.

If you don’t have a backup it gets more difficult. Are album and artist still tags still present in the files? You could add a script like this in Options > Scripting:

$set(title,$replace(%title%,%artist% %album%,))

That script would attempt to replace “Artist Album” from the track title. That requires that the spelling in the artist and album tag is exactly the same as it is now in the title. Add this as a new script, give it a nice name (“Remove artist + album from title”), but keep the script disabled. Then load your files and run the script manually via right click context menu → Run scripts. It might not work in all cases, but maybe it cleans things up enough. Check the results before you save.

Another way out would be to actually tag all your files against MusicBrainz data. But I understand the only thing you wanted to do is the compilation flag, right?

One thing I noticed in your screenshot is that %TCMP% is not a variable name known to Picard and hence this won’t do what you expect (it would add a custom tag called “TCMP”). The proper variable for the compilation flag would be %compilation%, and it would be expected to be set to “1” for compilations and “0” or not set at all otherwise. Not sure about your folder structure, but your attempt to fill this from the folder structure indicates you have this info as a folder. But probably that folder name is not “1”, or is it?


Wow, that’s a lot of information. Let’s keep it simple, I have a backup! What do I have to do to make it work properly this time?

1 Like

That’s great :smiley:

Can you show me an example of the exact folder structure and file name? If we want to only set the compilation flag maybe something like this would do for tags from file names:

%compilation%/%_album%/%_tracknumber% %_title%

Note the underscores, this marks variables that will not get written to the tags. I’d use this here so we get a pattern that matches your files, but the only thing we really fill is %compilation%.

I just don’t know if this will work, because I don’t know how your folder structure marks the compilations. I am pretty sure it won’t work directly and we need some scripting to convert whatever is read from the folder structure to either “1” or nothing.


An example of my folders structure and files name:

Ok. And what data would you like to have updated? Am I right about the compilation flag (TCMP on ID3) that should be set?

If so your tags from file name pattern was reading this from the folder that is in your example called “Albums”. What other folders are there on that level, especially which name is used for those that should be considered compilations?

1 Like

When I upload this to Navidrome, it splits me up into several albums when one of the songs on the album has multiple artists. I would like the different artists to appear, but the songs to be part of the same Album.

By entering %TCMP%/%album%/%tracknumber% %title% this problem has been solved, the albums are not separated, but the name of the album and the artist has been added to the song titles.

I’m honestly a bit confused, because I don’t understand exactly which tag change triggered things to work in that Navidrome thing :slight_smile:

But anyway, since your original approach did fix it but messed up the title I would probably just retry it, but this time without changing the title. What happens when you use this for your tags from filenames?

%TCMP%/%album%/%tracknumber% %_dummy%

Note that it does not fill %title% and just stores this into a dummy variable that will not get written to tags.


This is the preview I get

edit : No, it doesn’t seem to be the right configuration, as you can see, the first CD is the old version, the second the new one, the title has messed up

So, I just realized that the operation works when the pieces have the label “Excellent match”.