Building a music streaming box for the living room

01 May 2018 by Nod Steady

I’ve just finished building a small network audio player. It allows me to stream music over the internet to my stereo, without plugging in my computer or phone. I can control the music from Spotify (using Spotify Connect), from a web page or from an app. The box is based on a tiny Raspberry Pi computer running Volumio.

Finished network audio player close-up. This project was smaller in scope than the Arduino-based midi controller that I built last year, and was done just a few days after I first got the idea. Planning and finding the physical components took the most work, just like with the midi controller. A main difference is that I didn’t have to do any programming this time.

I used a smaller version of the chassis that I used for the midi controller. I also used a spare button that I had from that project. Finding a DAC for the audio output took a bit more work, as there are several to choose from.

Although the Raspberry does have an audio output, it is not built for hifi sound. So a DAC (digital to analog converter) is needed. I considered DACs built specifically for the Raspberry, as well as USB DACs. I wanted to get a cheap one, as most DACs would probably do the job as for sound quality. But taking other factors into consideration, I ended up getting the slightly expensive Audiophonics I-Sabre V4. There are several reasons for this: First, I didn’t want to have the network and USB connections on the back and the power and audio connections on the side, which would have been the result with most of the other DACs (see comparisons of some alternatives here). Second, the I-Sabre can power the Raspberry, allowing me to easily hook up just one power source. Third, it has connections for a power button (with LED support) so that I can easily turn on and off the Raspberry. (I assume it would be possible to set this up with other DACs as well, but I liked the idea of having the feature integrated.)

Building the network audio player. Putting the pieces together was easy. But making the holes in the aluminium chassis took some effort. Next time I will be prepared with better tools.

As for software, I didn’t have to do any coding this time. I just downloaded and installed Volumio onto the Raspberry, and then set up a Spotify Connect plugin. There are also other options available, like e.g. Max2Play, RuneAudio and MoOde. I have no idea which one is best (given som definition of best); I just chose one of the alternatives without doing much research. I may try the others later.

I am happy with the result: It sounds and looks good, and it was fun building it. If you like the concept but don’t want to build it yourself, there are several complete network audio players available on the market. Some of them are open source systems built on the Raspberry PI, similar to what I have built. That allows you to tweak and modify them later if you want to.

Finished network audio player.