Assistance with creating a very basic, top level folder structure

Tags: #<Tag:0x00007f05099999f8> #<Tag:0x00007f0509999868>


Greetings everyone,

After thumping around the documentation for the syntax of file and directory structures in MusicBrainzPicard, I’m a bit lost though what I’m looking for is very simple:

[Original Year of Release] - Artist - Album - Media - Country of Origin

In a top level structure only with no nested folders (unless anyone think there should be?) An example of how this would look:

[1967] - The Doors - The Doors - Hybrid SACD - USA
[1968] - The Beach Boys - Friends - SACD - USA
[1968] - The Beach Boys - 20/20 - Cassette - USA

My goal and thinking behind this, is to listen to music as it was actually created around the world, though to then be able to sort per country if I so desire (say I want to only listen to music from China created in the 1980s.) Was thinking perhaps “[Year] - Country - Band - Etc, etc” but then music would be separated by year and then country, making it harder to mix it up.

Any help at all would be appreciated to create this structure (after I tried and the hours I put in were fruitless) and if I am way off with my thinking (to be able to quickly listen to music by year and / or country) I’d appreciate any feedback (especially if this would cause trouble with say, the Various Artist field.)

Thank you!


PS All of this is to be able to listen to music as it was originally released chronologically per country for a thesis I’m working on. So it is doubly important, at least to me :slight_smile:


The most basic File Naming script would be

 [%originaldate%] - %artist% - %album% - %releasetype% - %releasecountry%

Now you have to work around all the possible cases where is no originaldate, no releasetype or no releasecountry. Do you let the space empty between the dashes? Something like:

 [] - The Doors - The Doors - - USA

What do you want to do with invalid characters in the windows file system like the slash in 20/20? Do you replace it with a similar looking character? Do you replace it always with a placeholder like “_”?

In addition you have to find a useful solution for all classical albums (do you want to see them as ‘Beethoven’, ‘Bach’ or ‘Mozart’ or the conductor or the concert or something else?) and compilations with Various Artists. How do you want to see the single tracks inside your structure? With or without track artist?


Wouldn’t it be easier to use a flexible player like foobar2000 and use a filter and sort by tag? With a filter with the value MUSICBRAINZ ALBUM RELEASE COUNTRY;RELEASECOUNTRY;Album Release Country (to account for all tag variations), you can filter your entire library by one or more release countries, and it is easy to sort by date with a column with the date in it.

The advantage of this setup is that you don’t have to rethink your file naming strategy if you want to change or tweak your research method. And I think it is easier than coming up with a file naming string that allows for sorting by both year and country.


[quote=“mfmeulenbelt, post:3, topic:184399”]
Wouldn’t it be easier to use a flexible player like foobar2000 and use a filter and sort by tag?[/quote]

I find the ‘country’ tag very useful, and use Foobar to search it and sort by it if necessary, so this was my first thought when I read the OP as well!

A lot can be done using the tags/metadata while only leaving basic sorting information in your actual folder/file structure. Probably the way of the future tbh :slight_smile:


Would there be a way to include a “if various artists then use %variousartists%” variable and similar for the other points you mentioned? And in regards to the actual tracks, I’m not actually sure - would players be able to read and display basic data without it being mentioned in the file name or should it essentially be a duplicate of the file structure OR a truncation of it? Maybe -

Artist - Song? I don’t have any preference on this, just whatever is easier for someone / a music player to read.


I didn’t realize Foobar could read / sort like this, thank you!

The problem comes into play when accounting for music players on say Android or iOS as their tag viewing / sorting structure is very limited (specifically I’ve only seen one player with a “sort by year” for tracks and playlists, but no column to actually display it is visible.) Folder structure is then a kind of terrible work around for the limitations of every. single. music app I’ve seen: some way to sort and create playlists UNLESS there is a way to import Foobar ones into an Android program?

Not sure how to resolve my need to listen to this on the go.


Don’t have much to say, except that you’re probably right, I don’t have much experience with mobile players but I think they are all currently very limited in functionality.
So hopefully InvixibleMan78’s reply has helped you out/he will help you out further :slight_smile:


[quote=“RutgerHowieeeee, post:5, topic:184399”]Would there be a way to include a “if various artists then use %variousartists%” variable and similar for the other points you mentioned?[/quote]Sure.
If you answer with a specific example from your library for every point and how you exactly want it. We don’t know what devices you have, we don’t know which OS you use and so on. :wink: If you need specific help you should provide specific examples.

In the meantime you can search this community for one of the many already existing scripts, like


I have no preference in regards to the points you noted - whatever is best practice?

For the actual music files that are in the folders, maybe:

  1. You’re the Storm

Track Number - Track Name.

And I’m using various devices:

MacBook ProWindows 10AndroidiOS

Kinda the whole gamut, sadly :frowning: Does this help?