Home Music Control

Setting up a budget home music system with Ubuntu was at the heart of this project.

The hardware I used for my setup is an old EeePC running Ubuntu 12.10, a set of speakers, an external harddrive and several smartphones. I had all of there components where already available, so nothing to buy, which makes this setup a cheap one for me.

Ubuntu EeePC: the music server

I run the standard Ubuntu media player on this machine, so now it is Rhythmbox, previously it was Banshee. Both of these players follow the mpris2 convention, which allows e.g. the sound indicator to control both applications. This mpris2 convention is also used in this setup to remote control the player.
I have written a small django app (and I run it as a standalone program via the debugging server), to provide a simple interface (a most basic REST interface) to the mpris2 commands.
While the documentation on dbus is sparse, it is enough to get going.
All code is of cause Python :-)

External Harddrive

I use an USB powered external harddrive to contain all our music. Not having an additional power supply and power switch is nice, because it helps to make this setup feel more hi-fi system and less computer like.
My music is stored in a variety of formats: flac, ogg, avi, and of cause mp3, because neither the Ubuntu One music store nor Amazon sell other formats.

Smartphones: iPhone and N900

To be able to use any smartphone (my N900, my wifes iPhone, and whatever phone guests will have...) as a remote control, I created a jquery mobile interface.
Together with two QR codes (created with Qreator), which I have placed clearly visible beside the EeePC, one for the WIFI connection and one for the remote control interface), every guest of ours can now choose music, change the volume and so on.

Code

You can find the code in my launchpad account, or get it via
bzr branch lp:homemusiccontrol
Have Fun!

comments powered by Disqus