8.0 KiB
MusicBrainz Picard File Naming Script v3.0
Automatically organize your music library with extensive customization options.
What is This?
This is a powerful file naming script for MusicBrainz Picard that automatically organizes your music collection into a clean, consistent directory structure. Instead of manually renaming files and creating folders, this script does it all for you based on metadata from MusicBrainz.
File Organization
- Picard_Rename_Script.txt - The working script file (human-readable with full formatting)
- Picard_Rename_Script.ptsp - Picard Script Package format for easy import into Picard
- README.md - This beginner-friendly guide
- SCRIPT_GUIDE.md - Complete technical reference and customization guide
Key Features
- Organized by artist with alphabetical folders (A/, B/, C/, etc.)
- Separate albums, singles, EPs, and live recordings into subfolders
- Multi-disc album support with disc subfolders and subtitles
- Special handling for Various Artists, Soundtracks, and Audiobooks
- Vinyl support with MusicBrainz-style track numbering (A1, A2, B1, B2)
- Audio quality display in filenames (bitrate, sample rate, CBR/VBR)
- Genre-based pre-sorting for advanced organization
- Incomplete album handling to keep partial albums separate
- Cross-platform filename compatibility (Windows/Linux/macOS)
Quick Example
Before: Messy files with inconsistent names
Various Artists - Now 80.mp3
beatles-come together (1).mp3
Pink Floyd - The Wall - CD1 - 01.flac
After: Clean, organized structure
/B/Beatles, The/(1969) Abbey Road [CD - MP3]/01. Come Together [4m20s] [320 44100KHz CBR 2ch].mp3
/P/Pink Floyd/(1979) The Wall [CD - FLAC]/Disc01/01. In the Flesh [3m19s] [96000KHz 24bit 6ch].flac
/V/Various/(2011) Now That's What I Call Music! 80 [CD - MP3]/Disc01/01. Somebody That I Used to Know [4m04s].mp3
Prerequisites
Required Software
-
MusicBrainz Picard (version 2.0 or later)
- Download: https://picard.musicbrainz.org/downloads/
- Free and open-source music tagger
-
Additional Artists Variables Plugin (REQUIRED)
- Author: Bob Swift [rdswift]
- Source: https://github.com/rdswift/picard-plugins/tree/2.0_RDS_Plugins
- License: GPL-2.0 or later
- Why needed: This plugin provides enhanced artist variables that the script uses for proper artist sorting and featured artist detection
Optional Plugins
-
Last.fm.ng Plugin (for genre-based category sorting)
- Source: https://github.com/fdemmer/Picard-Last.fm.ng-Plugin
- Only needed if you want to organize by genre/category at the root level
-
Classical Extras Plugin (for classical music workflow)
- Only needed if you want special handling for classical music
- Requires setting
$set(_isClassical,1)in a separate script
Installation
Step 1: Install MusicBrainz Picard
- Download Picard from https://picard.musicbrainz.org/downloads/
- Install and launch the application
Step 2: Install Required Plugin
- In Picard, go to Options -> Options -> Plugins
- Click Install plugin from URL
- For the Additional Artists Variables plugin:
- Download from https://github.com/rdswift/picard-plugins/tree/2.0_RDS_Plugins
- Or search for "Additional Artists Variables" in the plugin list
- Enable the plugin and restart Picard
Step 3: Install This Script
Option A: Using the .ptsp package (recommended)
- Download or use
Picard_Rename_Script.ptspfrom the repository - In Picard, go to Options -> Open file naming script editor -> File -> Import a script file
- Click select the
Picard_Rename_Script.ptsp - Click Open
Option B: Using the .txt file
- Open the script file:
Picard_Rename_Script.txt - Copy the entire contents
- In Picard, go to Options -> Open file naming script editor -> Script -> Add a new script -> Empty/blank script
- Paste the script into the Script text box
Step 4: Configure Destination Directory
- In Picard, go to Options -> Options -> File Naming
- Check Rename files when saving
- Set Destination directory to your music library root
- Example:
/Users/yourname/MusicorD:\Music
- Example:
- Click Make It So!
Step 5: Review Configuration (Optional)
The script uses sensible defaults, but you can customize it:
- Open the script editor
- Find SECTION 2: CONFIGURATION (around line 115)
- Modify settings as needed (see Configuration Reference below)
- Copy and paste the updated script back into Picard
How It Works: Default Configuration
The script uses sensible defaults that work great for most users. Here's what you get out of the box:
Default Organization Structure
Standard Album Example:
/B/Beatles, The/(1969) Abbey Road [CD - MP3] [mbid] {catalog}/
01. Come Together [4m20s] [320 44100KHz CBR 2ch].mp3
02. Something [3m03s] [V0 44100KHz VBR 2ch].mp3
03. Maxwell's Silver Hammer [3m27s] [96000KHz 16bit 2ch].flac
...
Multi-Disc Album Example:
/P/Pink Floyd/(1979) The Wall [CD - FLAC] [mbid] {catalog}/
Disc01/
01. In the Flesh [3m19s].flac
02. The Thin Ice [2m29s].flac
...
Disc02/
01. Hey You [4m42s].flac
...
Various Artists Compilation Example:
/Various/N/(2011) Now That's What I Call Music! 80 [CD - MP3] [mbid] {catalog}/
Disc01/
01. Somebody That I Used to Know [4m04s].mp3
02. We Found Love [3m35s].mp3
03. Rolling in the Deep [3m48s].mp3
...
Albums, Singles, and EPs Separated Example:
/M/Madonna/
(1984) Like a Virgin [CD - MP3] [mbid] {catalog}/
01. Material Girl [4m01s].mp3
02. Like a Virgin [3m38s].mp3
Singles/
(1985) Into the Groove [CD - MP3] [mbid] {catalog}/
01. Into the Groove [4m44s].mp3
EP/
(1989) Remixed Prayers [CD - MP3] [mbid] {catalog}/
01. Like a Prayer (remix) [7m43s].mp3
Vinyl with MusicBrainz Track Numbers:
/D/David Bowie/(1972) The Rise and Fall of Ziggy Stardust [Vinyl - MP3] [mbid] {catalog}/
Side 1/
A1. Five Years [4m43s].mp3
A2. Soul Love [3m35s].mp3
Side 2/
B1. Lady Stardust [3m22s].mp3
B2. Star [2m47s].mp3
Special Collections (Automatic)
The script automatically routes certain types of releases to dedicated directories:
- Soundtracks ->
/Soundtrack/G/Guardians of the Galaxy.../ - Various Artists ->
/Various/N/Now That's What I Call Music.../ - Audiobooks ->
/Audiobook/A/Audiobook Name.../ - Podcasts ->
/Podcast/P/Podcast Name.../ - Incomplete Albums ->
/- Partial/Artist/Album.../
For detailed configuration options and advanced scenarios, see SCRIPT_GUIDE.md.
License
This script is licensed under GPL-3.0 (GNU General Public License v3.0).
You are free to:
- Use this script for any purpose
- Modify it to suit your needs
- Share it with others
Conditions:
- If you distribute modified versions, you must also license them under GPL-3.0
- Include a copy of the license and state changes made
- Make source code available
Credits
Version History
v1.0 - "MBP YA Magic-Script v2.7"
- Created by: amd/17500mph
- Based on: "MBP Magic Script" by Ski-lleR
- Character filter contributions: avibrazil
- Source: https://github.com/avibrazil/picard-scripting
v2.0 - Custom Additions
- User modifications and enhancements
v3.0 - Comprehensive Refactoring
- Complete reorganization and documentation
- Inline examples and reference tables
- Beginner-friendly documentation
- Technical reference guide
Plugin Credits
Additional Artists Variables Plugin
- Author: Bob Swift [rdswift]
- License: GPL-2.0 or later
- Source: https://github.com/rdswift/picard-plugins