Organising a music collection

Also guessing missing metadata

I make music and DJ, and I would like to bulk edit and search my media using my own criteria, especially when it comes to dealing with the crappy media metadata that other artists give me with their tracks. In general I am interested in managing the affiliated artwork and various media artefacts in bulk, en masse and without paying Adobe to waste my hard disk space with their nonsense software.

See also machine listening, playing music, media metadata.

Still no-one agrees on how to do this, possibly because of the brief hegemony of iTunes, which did an adequate job of this before we realised that Apple were going to deprecate it.

There are many nerd feelings about this.

Musicbrainz Picard

The flagship Musicbrainz client is Picard which is quirky but effective online-DB-based analyzer (i.e. it fingerprints your music and looks it up online rather than analyzing it using local machine-listening).


beets A python library: “The purpose of beets is to get your music collection right once and for all. It catalogs your collection, automatically improving its metadata as it goes using the MusicBrainz database. Then it provides a bouquet of tools for manipulating and accessing your music.” In particular, it organises and files music. Free, in every sense.

  • supports acoustic fingerprinting! I mean in a useful way, for you identifying your own tracks, as opposed to some faceless corporation issuing takedown notices against your family videos on youtube. What a change.
  • Also analysing via echonest. Why yes, I would like to be able to index my music by “danceability”, “energy”, “liveness”, “loudness”, “speechiness”, and bpm, whatever they are, why not?
  • …and key detection
  • sync metadata to ITunes or Amarok.
  • Basic GUIs via web or MPD

A gui cousin of beets is ex falso, the metadata managing end of Quod Libet, the media player. OTOH Ex Falso doesn’t seem to organise files for you.


Keyfinder. (macos) Plush lookin’ project that classifies things by musical key, not to mention all the steps along the way – it can visualise chord structures, melodies and key changes too.


beatunes is a GUI for massive tune analysis and automated playlisting with optional iTunes integration. It includes machine listening and online database-backed tunes identifcation techniques. It even has an API (USD35) so you can load your own script in Java/Jpython/javascript.


mp3tag (windows) has a similar feature set.


All-singing all-dancing media manager/player/playlister (windows). (Freemium, USD25)


I think a linux/windows equivalent of the windows-only mp3tag?


Yate was developed for people who are serious about tagging and organizing their audio files. The application was designed from the ground up for Mac users. It is a 100% Cocoa written application and uses its own tagging library. Yate will tag mp3, m4a, AIFF, wav, dsf and FLAC files.

Yate has a long list of features, including an innovative scripting system called actions. The app also supports integration with Discogs, MusicBrainz, AcoustID and iTunes.”



Minimal python script to do the job based on the python media metadata library mutagen.


MediaRage: “A collection of powerful tools for media enthusiasts with a Macintosh using Mac OS X. Media Rage can read and write information stored in MP3, AAC/MP4, FLAC, AIFF, WAVE, BWF, and Ogg Vorbis audio files as well as EXIF (read only) tags in digital images. Media Rage can assist you in cataloging, organizing, sorting, and updating thousands of audio files with ease.” ($29.95)