Soundirok

Your Remote App for MPD (Music Player Daemon)

Soundirok allows you to control your MPD, RuneAudio or Volumio instance from your iPhone, iPad or Android device.

Soundirok needs access to your cover arts in order to display them. Starting with version 1.2 Soundirok can access your cover arts from a http share of your collection or with the help of a PHP script. If you’re experienced you can also use scripts in other languages. Have a look at the coverart.php to see how things work.

Below are some common examples on how to set up the coverart script or the http share. Every example assumes that your device running MPD has the IP address 10.0.1.10. You need to change this to the actual IP address.

Volumio 2

Soundirok can directly access your cover art on devices running Volumio 2. Just enter http://10.0.1.10/albumart?path= in Soundiroks settings as Collection URL for the device.

Volumio 1

The easiest way to give Soundirok access to your cover arts is to share your collection through http directly on the Volumio device. Connect to your device via ssh (already installed on OSX and most Linux distributions; on Windows use a tool like PuTTY) ssh root@10.0.1.10 (the default root password is volumio) and execute the following command:

ln -s /var/lib/mpd/music /var/www/music

Back in Soundirok settings enter http://10.0.1.10/music/ in Collection URL.

RuneAudio

The easiest way to give Soundirok access to your cover arts is to share your collection through http directly on the Rune Audio device. Connect to your device via ssh (already installed on OSX and most Linux distributions; on Windows use a tool like PuTTY) ssh root@10.0.1.10 (the default root password is rune) and execute the following command:

ln -s /mnt/MPD /var/www/music

Back in Soundirok settings enter http://10.0.1.10/music/ in Collection URL.

Pi MusicBox

Soundirok 1.4 and newer is able to display covers from Pi MusicBox. You have to share your collection via http. Enable SSH in Pi MusicBox’ settings and connect to it. Enter the following command:

ln -s /music /opt/defaultwebclient

Back in Soundirok settings enter http://10.0.1.10/music/ in Collection URL.

Moode (4.0)

Soundirok can directly access your cover art on devices running Moode Audio. Just enter http://10.0.1.10/vlmm90614385// in Soundiroks settings as Collection URL for the device.

Moode (3.0 and older)

Soundirok can directly access your cover art on devices running Moode Audio. Just enter http://10.0.1.10/mpdmusic in Soundiroks settings as Collection URL for the device.

Bryston BDP-1 and BDP-2

Soundirok can directly access your cover art on devices running Moode Audio. Just enter http://bryston-bdp-1.local/music in Soundiroks settings as Collection URL for the device.

AudioPhile Linux

If you’re using AudioPhile Linux the cover art script is not needed. Just open the settings of your device in Soundirok and enter http://10.0.1.10/ in Collection URL.

Archphile

Archphile uses ympd, a MPD frontend written in C. By default there is no web server enabled which could deliver your cover art. But you only need to change a small thing to make Soundirok display your covers:

Open the file /usr/bin/archphile-optimize on your Archphile device and uncomment the line

mongoose -listening_port 8080 -document_root /var/www/covers
(http://forum.archphile.org/viewtopic.php?f=11&t=136)

Now open open the settings of your device in Soundirok and enter http://10.0.1.10:8080/music/ in Collection URL.

Arch Linux

An Arch Linux installation needs a little bit more work. The commands below assume that your music collection is stored in /mnt/music and that this is also the music_directory in your mpd.conf.

0. Archphile users

If you’re using Archphile and you are getting problems with the provided mongoose webserver then also follow this guide. You need to make two adjustments:

1) You don’t need to use sudo because you should already be logged in as root.
2) After step two open the lighttpd config file and change the port to 8081 and comment out the logging line:
nano /etc/lighttpd/lighttpd.conf

...
server.port = 8081
...
#server.errorlog = "/var/log/lighttpd/error.log"
...

In step 5) enter http://10.0.1.10:8081/music/ as Collection URL in Soundirok.

1. Install lighttpd and PHP

We will setup lighttpd and PHP to run the cover script. First install the needed packages

sudo pacman -Syy lighttpd php-cgi unzip

You have now to choices

2. a) You’re using Soundirok 1.2 (and above)

Setup a symlink to your music collection in the document root of lighttpd:

sudo ln -s /mnt/music /srv/http/music

On Archphile this is

sudo ln -s /var/lib/mpd/music /srv/http/music

2. b) You’re using and older version of Soundirok or you want to use the cover script

Adjust the lighttpd.conf to load the PHP module:

sudo nano /etc/lighttpd/lighttpd.conf

and add the following lines

server.modules = ( "mod_fastcgi" )
fastcgi.server = ( ".php" => ((
"bin-path" => "/usr/bin/php-cgi",
"socket" => "/tmp/php.socket"
)))

Now open the PHP configuration file and allow PHP to access your music collection:

sudo nano /etc/php/php.ini

Search for the line which starts with open_basedir

open_basedir = /srv/http/:/home/:/tmp/:/usr/share/pear/:/usr/share/webapps/

Add your collection directory at the end:

open_basedir = /srv/http/:/home/:/tmp/:/usr/share/pear/:/usr/share/webapps/:/mnt/music

Go to the document root of lighttpd, download and extract the cover script:

cd /srv/http
sudo curl -O https://www.kvibes.de/releases/soundirok/coverart.zip
sudo unzip coverart.zip
sudo rm coverart.zip

Edit the cover script and set the path to your music collection:

sudo nano coverart.php

Search for the line $baseDir = ''; and adjust it to

$baseDir = '/mnt/music/';

3. Start lighttpd

This step applies to both a) and b). Finally enable and start lighttpd

sudo systemctl enable lighttpd
sudo systemctl start lighttpd

4. Soundirok settings

Depending if you followed a) or b) above, setup your device Soundirok:

a)

Enter http://10.0.1.10/music/ as Collection URL.

b)

Enter http://10.0.1.10/coverart.php as Cover Script URL.