Picard Scripting - Radio Library


Please forgive me if this is covered elsewhere. Rather than struggle with this, I’m hoping I can trouble one of the wise Picard scripting gurus for some help. If I’m right, this software will solve a major problem for my radio station, and possibly others.

I need a simple script to rename a massive public radio station music library, one category at a time, so without folders. All info needs to end up in the filename, separated by " - ".

The output names need to be in this format:

Artist - Title - Album - Label.mp3


Beatles - Taxman - Revolver - Capitol.mp3

The idea is to end up with something that my iMediaTouch automation system can re-import, with the database info necessary for SoundExchange reporting. It’s very finicky about reading metadata so I’m trying to feed it what it needs in the filenames.

Also, if there is any way to get Picard to favor the original artists’ album titles instead of all the various artist compilations, that would be preferred.

Thanks to anyone who even bothered reading this. I will send KSKO swag from mighty McGrath, Alaska.


I’m assuming you don’t have full albums, just popular songs, right? Is there metadata already?


Yes… It’s a horrible mess, created over a number of years by a multitude of people and every media source imaginable. A music recognition system is my only reasonable hope to bring it into focus.

My tripping point seems to be the Record Label. It’s not coming up with that data for a lot of albums. However, if I could fill in valid and uniform artists, song titles, album titles and even half of the labels, I’d be mostly there.

The album metadata doesn’t appear to be uniform either… Different fields are used from album to album? Shoot me now.


The very simple approach to this naming would be the following file naming script:

%artist% - %title% - %album% - %label%

Note that this really only sets the artist of the song, the album artist could be different. Not sure if this is something you need to come Sider for your needs.

For only using the original album there is no built-in option for that. What you can do is to prefer album over compilations by going to Options > Metadata > Preferred releases and move the slider for Album to the right and the sliders for release types you don’t want to have to the left. This does not guarantee that Picard will never choose a compilation, but if there is also a fitting album that will be preferred.

But that actually will not necessarily use the oldest album, it also could be a later re-release.


I thought it was going to be that simple too, but %label% isn’t coming through so simply. That data appears to float from field to field, perhaps depending on version of metadata. I haven’t gotten that far yet.

The reason I dropped this here is to ask opinions on my situation, rather than do trial and error. I run this station virtually alone, and wear a lot of hats. This is a weekend project for me.


A quick reminder to work with a copy of your files first, just in case! Happy tagging!