[...]
> Myself on some arbitrary date:
> > Another user from this list (replied off list) hinted at subsonic, 
> > which
> > seems to fit the bill very nicely. Debian/Ubuntu package is available
> > from the website, but not the Debian repositories.
[...]

> > I'll have a look at that as well. At first sight it seems to be
> > implemented in Java and comes with its own webserver built-in 
> > (probably
> > embedded tomcat).
[...]

Since I solved my 'problem', I thought I'd leave a short message about
it. Maybe others will find it useful. My apologies if it looks to much
like a blog post or advertisement.

Yesterday I replaced my existing obsidianmusic installation with
subsonic after some testing and playing around. It lets me do everything
I could with obsidianmusic and more, such as playing to the machine's
audio device (for authorized users), like a jukebox. An obvious drawback
is memory consumption when compared to obsidian, this is easily
explained by the fact that subsonic is a stand alone daemon with lots of
features, not just a bunch of php scripts.
Another advantage is that Subsonic manages its own database, with
scheduled updates, thus eliminating the need for an external program
like Amarok (as was the case with obsidian).

** Advertisement**
Subsonic is licensed under GPLv3 and is available at [1] with an online
demo. A premium version exists which provides apps for several
smartphones and removes the (in my mind non-intrusive) ad in the web
interface.
** End advertisement **

Basic installation is fairly easy with the provided deb package,
unfortunately the dependencies are not specified. Fortunately there is
only 1: Java.
So after installing openjdk-7-jre-headless and the subsonic package, the
server is already running, as root. To change the user it runs under is
simply changing a variable in the provided config
file /etc/default/subsonic.
By default there are 3 tcp ports opened for listening, where 4040 is the
HTTP web interface, I haven't looked into the other 2 but they seem to
be RMI.
Under the hood are spring and jetty.

Since I run other services on the Apache front-end, I needed to use a
different context path for Subsonic and set up a reverse proxy, which in
the end is not that difficult.
Again in /etc/default/subsonic, there is a variable for defining
arguments, by default a memory limit, I added the context path:
SUBSONIC_ARGS="--max-memory=150 --context-path=/subsonic"
and then set up the reverse proxy in apache:
ProxyRequests Off
ProxyPass /subsonic http://localhost:4040/subsonic
ProxyPassReverse /subsonic http://localhost:4040/subsonic

Stopping and (re)starting is easy because of the provided init script:
service subsonic restart

Kind regards,
Steven

[1] http://www.subsonic.org

Attachment: signature.asc
Description: This is a digitally signed message part

Reply via email to