Elliot Brandt


How I manage my music library

I use a local library of music files for my music listening needs. It doesn't save me money, and in some ways it's less convenient than streaming, but I find it satisfying to know I own all of my music and have complete control over it. This post outlines how I obtain, organize, and store the files in my library.

I get my music from a variety of sources. Much of the older music in my library is ripped from CDs in my parents' collection – I'm lucky to have them available, as it allowed me to build out a large library without much cost. For the rest of my music, I either purchase lossless files digitally from marketplaces like Bandcamp and Qobuz, or buy physical media and rip the files myself. It's very uncommon that I can't find an album for purchase either on CD or lossless download. For CD ripping, I use Exact Audio Copy on Windows. I resample high bitrate downloads to 16 bit/44.1kHz to save on storage space.

Once I've obtained an album in lossless quality, I tag it using MusicBrainz Picard. Picard is the tagger built by the maintainers of MusicBrainz, an open encyclopedia of music metadata. I use MusicBrainz for tagging because it rarely doesn't have a release I want to tag, and is easy to contribute to if a release is missing. It also allows tagging specific releases of works, which can be important if I have a specific mastering of an album on CD. I also embed a 1200x1200 jpg of the album art in each file.

With the files properly tagged, they get stored in my music library folder. The structure looks like "~/Music/Album Artist/Album/nn Track.flac". Files in this folder are automatically added to the library of my desktop music player MusicBee. I've found MusicBee to work just a bit better than Foobar2000, without requiring many plugins to be added or much custom configuration. I also use MusicBee to synchronize music to my phone. It supports automatically encoding the files into a lossy format before synchronization to save on space. I use Ogg Vorbis with quality level 5, which produces ~160kbit/s VBR files.

I also use Syncthing to synchronize my full music library between my laptop and PC. Once I get my Pi back up and running again, I'll also have the files synchronized to it as an additional backup and so that I can stream them on my work laptop using Navidrome.

Clearly, this is all much more work than just paying for Spotify and streaming my music. It also costs more, since I buy a few albums a month on average. However, it's worth it to me – I control my music, and won't lose access if I stop using a streaming service or if the service decides to remove an album. I also have offline access to my full library on my phone, laptop, and PC. Finally, the act of curation itself is satisfying, and encourages me to appreciate the music I have more.