Saturday, 1 June 2013

Install Music Player Daemon on the Raspberry Pi

To play music on the Raspberry Pi, a music player is needed. A lot of people are using XBMC for that. I Personally prefer Music Player Daemon or just MPD. One way to install MPD on the Pi is simply to write sudo apt-get install mpd. This will however often install an older version. The best way to get the newest version is to compile it yourself from source. Head over to to download the newest stable version.

The easiest way to download it, is probably just to ssh into you Pi from a computer (if using Windows Putty is an excellent ssh client) and then write:

After download has completed, extract it using tar:
tar -zxvf mpd-{version} (or tar -jxvf mpd-{version}.tar.bz2)

Make sure that all the required libraries and build tools are installed. The INSTALL file has a list. If only MP3, FLAC and streaming support through the standard sound driver is needed, install required libraries by typing:
sudo apt-get install libboost-all-dev libasound2-dev libmad0-dev libid3tag0-dev libflac-dev libflac++-dev libglib2.0-dev libcurl4-openssl-dev libmms-dev

Now in the folder where the MPD source was extracted, configure, compile and install by typing:
sudo make install

Before starting MPD for the first time, MPD needs to be configured.

In home folder create a folder named .mpd (mkdir ~/.mpd).
Copy/rename doc/mpdconf.example from the MPD source directory to .mpd/mpd.conf (cp {mpd-source-location}/doc/mpdconf.example ~/.mpd/mpd.conf).
Then create a folder named playlists in the newly created .mpd folder (mkdir ~/.mpd/playlists).
Finally edit the .mpd/mpd.conf file and enable/changes the following settings.

music_directory            "/media/NAS/Music" #location of music
playlist_directory          "~/.mpd/playlists"
db_file                        "~/.mpd/database"
pid_file                       "~/.mpd/pid"
bind_to_address           "any"
audio_output {
        type                   "alsa"
        name                  "My ALSA Device"
        device                 "hw:1,0"           # Keep 0,0 if using the Pi analog audio
        format                "44100:16:2"
        mixer_type          "software"
        mixer_device       "default"
        mixer_control      "PCM"
        mixer_index        "0"

MPD can now be started by typing mpd in the terminal. To actually control MPD, a remote control is needed. Some can be found in Google Play and Apple App Store.

No comments:

Post a Comment