MusicBrainz Picard/Tags

From MusicBrainz Wiki
< MusicBrainz Picard
Revision as of 10:32, 22 July 2014 by Mineo (talk | contribs) (Basic Variables: these are available for other formats as well)

This page describes both Tags (which are saved inside your music files and can be read by your music player) and Picard variables which can be used in Picard scripts (for tagging, for file renaming and in several other more minor settings).

All tags are also available as variables, but additional variables which start with '_' are not saved as Tags within your music files.

Variable are used in scripts by wrapping the name between '%' character e.g. '%title%'.

Some variables can contain more than one value (for example, musicbrainz_artistid), and if you want to use only one of the values then you will need to use special script functions to access / set them. To access all the multiple values at one, use the variable normally and Picard will combine them into a single string separated by '; ' (semicolon space).

If a later version of Picard is shown here than the current official version on the MusicBrainz Picard page, then these are beta functionality which will be available in the next official release and a description of how to gain access to these beta versions for testing can also be found on the MusicBrainz Picard page.

Basic Tags

The following tags are populated from MusicBrainz data for most releases, without any special Picard settings.

All of these are also available as variables for use in Picard Scripts (for tagging, for file renaming and in several other more minor settings) by wrapping them between '%' symbols e.g. '%title%'.

title Track Title
artist Track Artist Name(s) (string)
artists Track Artist Name(s) (multi-value) (since Picard 1.3)
artistsort Track Artist Sort Name
albumartist Release Artist
albumartistsort Release Artist's Sort Name
releasestatus Release Status
releasetype Release Group Type (see also _primaryreleasetype / _secondaryreleasetype)
album Release Title
asin ASIN
language Work lyric language as per ISO 639-3 if track relationships are enabled in Options and a related work exists. (since Picard 0.10)
script Release Script (since Picard 0.10)
releasecountry Release Country
date Release Date (YYYY-MM-DD)
originaldate Original Release Date (YYYY-MM-DD) of the earliest release in the Release Group intended to provide e.g. the release date of the vinyl version of what you have on CD. (Included as standard from Picard 0.15, and using the Original Release Date plugin if you are still using a non-NGS version earlier than Picard 0.15)

Note: If you are storing tags in mp3 files as ID3v23 (which is the Windows / iTunes compatible version) then original date can only be stored as a year.

catalognumber Release Catalog Number(s)
label Release Label Name(s)
barcode Release Barcode
media Release Format
discnumber Disc Number of the disc in this release that this track is on
totaldiscs Total number of discs in this release
discsubtitle The Media Title given to a specific disc.
tracknumber Track number on the disc
totaltracks Total tracks on this disc
isrc ISRC (since Picard 0.12)
compilation (since Picard 1.3, compatible with iTunes) 1 for Various Artist albums, 0 otherwise

(Picard 1.2 or previous) 1 if multiple track artists (including featured artists), 0 otherwise

musicbrainz_trackid Recording MusicBrainz Identifier
musicbrainz_releasetrackid Release Track MusicBrainz Identifier (since Picard 1.3)
musicbrainz_artistid Track Artist's MusicBrainz Identifier
musicbrainz_albumid Release MusicBrainz Identifier
musicbrainz_albumartistid Release Artist's MusicBrainz Identifier
musicbrainz_discid Disc ID if album added using CD Lookup (since Picard 0.12)

Basic Variables

These variables are also populated from MusicBrainz data for most releases, without any special Picard settings.

_albumtracknumber The absolute number of this track disregarding the disc number i.e. %_albumtracknumber% of %_totalalbumtracks% (c.f. %tracknumber% of %totaltracks%). (Since Picard 1.3)
_totalalbumtracks The total number of tracks across all discs of this release.
_releasecomment Release disambiguation comment (since Picard 0.15)
_releaselanguage Release Language as per ISO 639-3 (since Picard 0.10)
_releasegroup Release Group Title which is typically the same as the Album Title, but can be different.
_releasegroupcomment Release Group disambiguation comment.
_primaryreleasetype Release Group Primary type i.e. Album, Single, EP, Broadcast, Other.
_secondaryreleasetype Zero or more Release Group Secondary types i.e. Audiobook, Compilation, DJ-mix, Interview, Live, Mixtape/Street, Remix, Soundtrack, Spokenword
_length The length of the track in format mins:secs.
_rating Rating 0-5 by Musicbrainz users
_dirname The name of the directory the file is in at the point of being loaded into Picard. (Since Picard 1.1)
_filename The name of the file without extension (since Picard 1.1)
_extension The files extension (since Picard 0.9)
_format Media format of the file e.g. MPEG-1 Audio
_bitrate Approximate bitrate in kbps.
_channels No. of audio channels in the file
_sample_rate Number of digitising samples per second Hz
_bits_per_sample Bits of data per sample
_multiartist 0 if tracks on the album all have the same primary artist, 1 otherwise. (Since Picard 1.3)

Advanced Tags

If you enable tagging with Advanced Relationships, you get these extra tags:

work Work Name (since Picard 1.3)
writer Writer Relationship Type (since Picard 1.0; not written to most file formats automatically[1]).
composer Composer Relationship Type
conductor Conductor Relationship Type (releases, recordings), Chorus Master Relationship Type (releases, recordings)
performer:<type> Performer Relationship Type (releases - vocals/instruments, recordings - vocals/instruments),

Orchestra Relationship Type (releases, recordings), <type> can be "orchestra", "vocal", "guest guitar", ...

arranger Arranger Relationship Type,

Instrumentator Relationship Type, Orchestrator Relationship Type (since Picard 0.10)

lyricist Lyricist Relationship Type
remixer Remixer Relationship Type
producer Producer Relationship Type
engineer Engineer Relationship Type
mixer Engineer Relationship Type ("Mixed By") (since Picard 0.9)
djmixer Mix-DJ Relationship Type (since Picard 0.9)
license License Relationship Type (releases, recordings) (since Picard 1.0)

And if you enable folksonomy tags, you get:

genre Pseudo-genre based on folksonomy tags

Advanced Variables

If you enable tagging with Advanced Relationships, you get these extra variables:

_recordingtitle Recording title - normally the same as the Track title, but can be different.
_recordingcomment Recording disambiguation comment (since Picard 0.15)


Plugins from Picard Plugins can add more tags.

genre Pseudo-genre based on folksonomy tags Plus

The LastFMPlus plugin is a sophisticated plugin that tries to provide stable and meaningful genre selections from the ever-changing and idiosyncratic list provided by lastFM.

The LastFMPlus plugin is very configurable and examples provided here are based on the default lists provided on the Tag Filter List tab of the LastFMPlus options page.

grouping Top-level genres - default list: Audiobooks, Blues,

Classic rock, Classical, Country, Dance, Electronica, Folk, Hip-hop, Indie, Jazz, Kids, Metal, Pop, Punk, Reggae, Rock, Soul, Trance

genre Specific detailed genres, e.g. if group is Rock, genre

could be one of Acid rock, Acoustic rock, Alternative metal, Alternative rock, Art rock, Blues rock, Boogie rock, Brit rock, Christian rock, College rock, Country rock etc.

mood How a track 'feels' e.g. Happy, Introspective, Drunk etc.
Comment:songs-db_Occassion Good situations to play a track e.g. Driving, Love, Party etc.
Comment:songs-db_Custom1 Decade e.g. 1970s
Comment:songs-db_Custom2 Category e.g. Female Vocalist, Singer-Songwriter etc.
Comment:songs-db_Custom3 Country e.g. British
Original Year Original Year that the track was released

(compared to Original Release Date, the earliest release date of the entire Album)

Note 1: This plugin makes a large number of web services calls to get track-specific data, so loading a large number of albums / tracks could take a significant amount of time.

Note 2: Original Year does not seem to be working correctly at present.

Other Information

For technical details on how these tags are written into files, see Picard Tag Mapping.

If you set new variables, these will be saved as new tags in ID3, APEv2 and VORBIS based files. For ID3 based files these will be saved to, and reloaded from, ID3 user defined text information (TXXX) frames. They will not be saved in ASF, MP4 or WAV based files.

For ID3 based tags i.e. mp3 files, you can also set ID3 tags directly from your scripts by setting a special variable starting '_id3:'. Currently these tags are not loaded into variables when you reload the file into Picard.. (Since Picard 0.9)


  1. You can merge this with composers with a script like
    $copymerge(composer, writer)