Fireplay for Firefly

Lately I stumbled upon a extension for the well known media server Firefly called Fireplay. It’s a easy to use flash based music player interface for Firefly which uses RSP (Roku Server Protocol). The player is able to list playlists, artists, albums, genres and play selections. Because it’s a flash based player, you can use it everywhere you like.

It has features like download tracks, cover art, generate XSPF-playlists and more. The included documentation states that future features include playlist generation/editing, shuffle mode, and faster browsing.

The following section describes how to install Fireplay.

1. Download Fireplay mirror.

# wget http://www.mellberg.org/FirePlay.zip
--2009-06-12 23:50:18--  http://www.mellberg.org/FirePlay.zip
Resolving www.mellberg.org... 213.185.18.18
Connecting to www.mellberg.org|213.185.18.18|:80... connected.
HTTP request sent, awaiting response... 200 OK
Length: 104755 (102K) [application/zip]
Saving to: `FirePlay.zip'

100%[======================================>] 104,755      114K/s   in 0.9s

2009-06-12 23:51:04 (114 KB/s) - `FirePlay.zip' saved [104755/104755]

#

2. Copy the zip file to the admin-root directory of Firefly and extract the zip file which contains (four files). The example shows the path for Debian Linux.

# cp FirePlay.zip /usr/share/mt-daapd/admin-root/
# unzip FirePlay.zip
Archive:  FirePlay.zip
  inflating: FirePlay.html
  inflating: FirePlay.readme.txt
  inflating: FirePlay.swf
  inflating: AC_RunActiveContent.js
#

3. Open the usual Firefly URL in your browser followed by the Fireplay page

http://yourserver:3689/FirePlay.html

It is necessary to enter the Firefly admin password, set in the FireFly configuration file (mt-daapd.conf).

It is also possible to serve FirePlay using a webserver like Apache.

Have fun playing songs!

[ad#ad-article-banner1]

Setup Firefly to serve iTunes

FireFly LogoThis guide will help you setup Firefly Media Server to serve iTunes. This server based program, previously known as “mt-daapd” shares your media collection to iTunes. DAAP stands for Digital Audio Access Protocol and is developed by Apple to share media across a local network.

I have done the installation on Debian Lenny, but Firefly (still called mt-daapd on the Debian repository!) is even available on Windows. In order to publish the firefly shared library on the network I have used Avahi, which is a free implementation of Zeroconf including mDNS/DNS-SD.

1. Install the needed packages including dependencies

# apt-get install mt-daapd avahi-daemon

2. Setup Avahi by creating /etc/avahi/services/mt-daapd.service

<?xml version="1.0" standalone='no'?><!--*-nxml-*-->
<!DOCTYPE service-group SYSTEM "avahi-service.dtd">

<service-group>

<name replace-wildcards="yes">%h</name>

<service>
<type>_daap._tcp</type>
<port>3689</port>
<txt-record>txtvers=1 iTShVersion=131073 Version=196610</txt-record>
</service>

<service>
<type>_rsp._tcp</type>
<port>3689</port>
<txt-record>txtvers=1 iTShVersion=131073 Version=196610</txt-record>
</service>

</service-group>

3. Restart the Avahi daemon

# /etc/init.d/avahi-daemon restart

4. Edit /etc/mt-daapd.conf. The following variables where important to me:

# $Id: mt-daapd.conf.templ 1660 2007-09-12 13:08:04Z rpedde $
#
# This is the mt-daapd config file.

<...>

#
# admin_pw (required)
#
# This is the password to the administrative pages
#

admin_pw = mt-daapd

<...>

#
# mp3_dir (required)
#
# Location of the mp3 files to share. Note that because the
# files are stored in the database by inode, these must be
# in the same physical filesystem.
#

mp3_dir = /path/to/music

#
# servername (required)
#
# This is both the name of the server as advertised
# via rendezvous, and the name of the database
# exported via DAAP. Also know as "What shows up in iTunes".
#

servername = Firefly %v on %h

<...>

5. Restart mt-daapd

# /etc/init.d/mt-daapd restart

The first time you start mt-daapd it will do a full scan to update the mt-daapd database. Watch the /var/log/daemon.log file to see when it’s ready.

May 4 09:54:25 sinners mt-daapd[16843]: Firefly Version svn-1696: Starting with debuglevel 2
May 4 09:54:25 sinners mt-daapd[16843]: Plugin loaded: daap/svn-1696
May 4 09:54:25 sinners mt-daapd[16843]: Plugin loaded: ssc-ffmpeg/svn-1696
May 4 09:54:25 sinners mt-daapd[16843]: Plugin loaded: rsp/svn-1696
May 4 09:54:25 sinners mt-daapd[16843]: Starting rendezvous daemon
May 4 09:54:25 sinners mt-daapd[16843]: Client running
May 4 09:54:25 sinners mt-daapd[16843]: Starting signal handler
May 4 09:54:25 sinners mt-daapd[16845]: Initializing database
May 4 09:54:25 sinners mt-daapd[16845]: Full reload...
May 4 09:54:25 sinners mt-daapd[16845]: Starting mp3 scan
May 4 09:54:27 sinners mt-daapd[16845]: Starting playlist scan
May 4 09:54:27 sinners mt-daapd[16845]: Updating playlists
May 4 09:54:27 sinners mt-daapd[16845]: Scanned 10 songs in 1 seconds
May 4 09:54:27 sinners mt-daapd[16845]: Starting web server from /usr/share/mt-daapd/admin-root on port 3689
May 4 09:54:27 sinners mt-daapd[16845]: Registering rendezvous names
May 4 09:54:27 sinners mt-daapd[16845]: Serving 10 songs. Startup complete in 2 seconds

Now you should be able to connect to the mt-daapd admin webinterface at http://yourservername:3689.

6. You’re done!
Fire up iTunes and you’ll see the just created Firefly library become available under Shared. You can also use this service with Rhythmbox Music Player, XMMS with the DAAP plugin, or any other DAAP compatible music player.

[ad name=”Google Adsense Banner”]