Gold!

... wait a minute, stop! No cheap 80s New Wave references here. This week's topic is about gold music libraries; what they are, and why they are a useful way of thinking about how you store your music collection.

I've long thought a useful way of thinking about your music library is as a "gold copy". A gold copy is a master version of a piece of information or data. The meaning is moulded a little when applied to music libraries; but here I mean the master copy of all music files (and albums, artists etc therein) which make up your music library.

Most people just have one music library; often a jumble of music files in a directory somewhere on their computer. In limited cases this is ok, but when your home music network gets more complicated encompassing difference devices, software and more, things get more difficult. Some devices won't play certain music file formats. Some devices have large screens and you want high resolution album art to show off your music library.

You have two choices: lowest common denominator or best of breed. "Lowest common denominator" means trying to establish common ground between music players for an acceptable experience. In some cases that isn't even possible, and in others it may lead to an unacceptably reduced experience. Meanwhile, if you want "best of breed", that means maintaining multiple copies of your music library, but if you aren't careful that can introduce significant extra maintenance cost.

If "best of breed" is what you want, then you'll need to know how to create a gold music library.

What's the ideal gold library?

Put simply, your gold music library should comprise objective data, stored at the highest possible fidelity level. This is the best way of ensuring faithful, best-possible copies can be made from this library.

Phew, that's abstract! But let's make this a little more concrete and apply it to three areas of music library collections: audio quality, metadata and cover art.

We've been over audio quality many times. The short answer is that you should store music files in your gold library in as high a quality as possible. That really means in a lossless format if ripping from CD. The thing about lossless is that you can afford to make a mistake in which lossless format you choose, because lossless means you can always convert to another lossless format without losing any quality.

It also means conversions into lossy formats (for example, for a car stereo that only supports MP3) occur maintaining the highest possible quality in the resulting audio.

For metadata, it's more about objectivity. What you need is a bare minimum amount of metadata that identify the musical entities stored in your collection. That's because, so long as the music is correctly identified, other metadata can be easily derived. For example, if a group of tracks is identified as being from a particular album, it's easy to find the year that album was released.

In reality, the year of release is likely to be a consistently useful field, so you may want to retain that in the gold copy. An example where there may be changes would be something like track number; maybe a target music player for which a copy of the gold library is taken requires padded track numbers to display track order correctly. There are many, many possibilities.

For cover art, it's about storing the highest possible quality artwork, which means high resolution and ignoring data size. Storage cost is low compared to the cost of your time finding new, higher quality artwork.

One open question here is duplication. It's ideal to avoid duplication, but embedding and storing separate cover art files introduce it. In a pure setup, it would be best to just store one cover art file, so long as you realise it's likely you'll need to embed for many music players to show the artwork in any copy libraries.

You can't always be perfect

That brings me to another point: while you can strive for a pure gold music library, there will be compromises. It might not be worth your time re-ripping old rips you made before you discovered FLAC, for instance.

In those cases it's best to at least have a handle on the weaknesses of your gold library, so you can improve them later. You can use a tool like bliss to actually audit and mark where you have music files that are not ideal, so you can easily track where you can improve your collection.

So how do I create copy libraries?

Once you have a gold music library, you have the possibility of creating copy libraries which are tuned for display on differing music players.

You'd be right to think "is it worth the bother"? The answer to that is down to you; but I'm sure that either way you'd want to save what time you can in creating copy libraries. So the key word is automation.

The absolute ideal case is to use fully automated mirror software like mp3fs. mp3fs doesn't even create copy files, as such; it creates the illusion of copy files, when your file explorer or whatever other software you are using lists the contents of a mirrored music library.

Second choices are automated mirror software that work in batch mode. Set them up, run them, and they run through and create copies of all of your music files in a target location, changed as required. Maintaining mirrors has been a long term suggestion in the bliss ideas forum. We could take that idea one step forward by as well as maintaining different file formats, also allowing other transformations of metadata, cover art, and more.

A warning

I think a warning to end this post. Introducing duplicate libraries can work well to give you your best-of-breed music experience. However, having those duplicates will introduce management problems if you begin to treat the duplicates as music libraries in their own right.

This would be a big mistake. Instead, you should only make changes to the gold library or the transformation scripts that create the copy from the gold library.

An example would be that maybe you decide you want your music to be a lower quality for playback in your car, to save space on the SD card used to play music in the car. Your car only supports MP3 and MP4, whereas your gold library is stored in FLAC. So you have a duplicate library for transcoded files, transcoded to 320kbps.

The WRONG way to solve this problem would be to perform a batch operation on the MP3s on your SD card, reducing quality to 192kbps (say). The correct way would be to alter the gold -> car transformation scripts so MP3s at a lower quality are generated. That's because subsequent changes to the gold library (for example, the addition of an album) would wipe out your batch transcoding when you then copied the new album onto your car.

The basic rule of thumb is to avoid branching, because that enormously increases the amount of management you have to do.


I hope that was an interesting post and raises some thoughts about the best way of structuring your music library. If you have a similar setup, let us know in the comments below!

Thanks to One Way Stock and gripso_banana_prune for the images above.
tags: archive

The Music Library Management blog

Dan Gravell

I'm Dan, the founder and programmer of bliss. I write bliss to solve my own problems with my digital music collection.