Raspberry Pi music player project

My passion is vintage analogue audio but, pragmatically, I also listen to digital stuff for convenience. The trouble is that, with a large collection, it isn’t that convenient to use.  This is a project to do something about that.

Pi Music Player Components
Pi Music Player Components

I have been buying CDs since soon after they where invented. I have a very large collection. Over the last few years I have got myself organised and ripped the lot to high resolution mp3 files. At last count I had over 2000 albums in my library and it took up about 220 GB on disc.

My music files are all stored safely in several places, including my Synology NAS. The Synology functions as a Media Server, hosting my music library and making it available to any devices on the home network which understand how to communicate with it. This includes a PlayStation, X-Box, smart TV and our smart phones and tablets.

This is OK, but hardly Hi-Fi. My next refinement was to purchase a couple of QED uPlay network music players. These gadgets connect to your network and output audio via a 3.5mm jack, so you can feed the Aux input of your Hi-Fi. The sound quality is actually pretty good for something that could be bought at the time for £30. The QED is controlled by a phone or tablet application.

So here we get to the crux of my problem. I don’t want to have to control my music with a phone app. It’s an ergonomics thing. I want my Hi-Fi to be self contained. I don’t mind using a phone as an optional remote control, but the main control should be a box next to my amplifier, with a nice interface.

Other ergonomic problems are caused by the sheer size of my music collection. A screen bigger than a phone is a must, to better accommodate the volume of text to be displayed. It’s also important to be able to search, so a keyboard would be nice.

Another significant problem is speed. The display must update quickly as I scroll and search for music. This has been a problem with phone interfaces, which are in constant communication with the server over the network to retrieve the information to display. It all gets rather clunky with a large library. Portable music players (eg Sansa Clip) get round this problem by building up their own index information when you change the library.  As a result subsequent searches and menus are quick. Maybe i can do something similar here?

For more about how I went about this, this read about the hardware here and about the software here.