I’ve already gone on about how fantastic MPD (Music Player Daemon) is. The server-client music player has totally changed the way I listen to music at home. By having the MPD server (that actually does the playing) constantly running on my HTPC connected to my amp and speakers, I can control the music playback from any device that has an MPD client written for it. Since the server doesn’t stop playing if a client quits, I can start playback using one client and stop it using another.
Until today, I had a couple of text-based clients on the HTPC itself (for controlling playback over SSH ;), two-three clients on my laptop, one on my girlfriends laptop and one on her iTouch. Chances are quite high that at least one of these are switched on and within reach at any given time. However, there are times when both laptops are shut down, the iTouch has run out of batteries, I’m late for work and MPD is happily playing since I forgot to stop it before I put my Macbook to sleep. This morning was such a time.
When I was new to MPD and wanted to install clients on everything including the toaster and microwave oven, I tried out a client for S60 mobile phones. As far as I remember, something didn’t work and I probably lost interest and thought that my gazillion clients already installed would suffice. Well, today I started looking into it again, the JavaME client for MPD, Remuco.
Ok, Remuco is more than a client for MPD. It’s a remote control for a whole bunch of media players, including XMMS, Amarok, Totem and VLC. But I haven’t come over any other mobile phone clients for MPD that this one. It has a python “server” which runs on the same machine as the media players it communicates with, and a JavaME client for Java enabled phones.
Installing it on Ubuntu Hardy wasn’t as straight forward as the documentation let me understsand. Although it wasn’t rocket science, it required a bit of dependency package installing. If you’re using Ubuntu Intrepid it should be a bit easier. This is what I did:
- I downloaded the Remuco Client from the Remuco website and installed it on my mobile phone. Nothing strange there.
- Then I followed the instructions on how to install the latest Remuco package on your MPD machine. It went fine until the ‘sudo make install-mpd’ part where I got some errors about unsatisfied Python dependencies.
Unsatisfied Python requirement: No module named bluetooth.
This was fairly easily fixed with
sudo aptitude install python-bluez
- On the next run of ‘sudo make install-mpd’ I got the following error
Unsatisfied Python requirement: No module named mpd.
This was a bit trickier to resolve. I tried to install every package that had anything to do with both python and MPD, but to no avail. As it turned out, while Hardy does have a python-mpdclient package, it lacks the python-mpd package which is needed here. However, the Intrepid package works fine with Hardy, so I downloaded and istalled it manually. As said, if you’re using Intrepid, it should be available in aptitude.
- After successfully running the ‘sudo make install-mpd’ I had to run ‘remuco-mpd’ once to generate a default configuration file which I edited a bit before running ‘remuco-mpd’ a second time to start the server.
After that, it was quite straight forward to connect the JavaME client over the LAN and start playing around with it. A nice feature is also that you can configure the key bindings of the client to whatever you feel right, like using the navigation button instead of the number keys.