
Subsonic is a really efficient music streaming server that allows you to share your complete music collection to any internet connected device like laptop, mobile phone or tablet. It can handle on-the-fly transcoding for devices connected to low speed networks like 3G or even Edge networks. You can get a good overview of the possibilities of Subsonic from the project site http://www.subsonic.org/.
Even if Subsonic is very efficient, it is not that easy to install on a device like DNS-325, as it is running under Java (which is CPU and RAM hungry) and as it's supposed to be able to do real time transcoding (which is also very CPU intensive). The main limitation of DNS-325 for this purpose is that it offers a 1.2 GHz ARM processor, with only 256 Mb memory and no Floating Point Unit.
But, with the help of Oracle Java 7 SE Embedded for ARM devices, Shineenc fixed point mp3 encoder and Fraunhofer fdk-aac encoder, it is possible to setup a fully functionnal installation of Subsonic on the DNS-325, including realtime MP3 and AAC transcoding. Yes, realtime transcoding !
So, this article will explain how to do a complete installation of Subsonic music server on a DNS-325. It will deals with the following steps :
* Installation of Oracle Java 7 SE
* Installation & setup of Subsonic
* Setup of a realtime mp3 & aac transcoding chain using ffmpeg, shineenc & libfdk-aac library
* Apache 2 reverse proxy configuration for internet access
This setup has been tested on a mp3 music collection, but it may be applicable for any musical file types accepted by ffmpeg.