Subsonic Music Streamer

From SME Server
Revision as of 17:25, 21 March 2013 by Newburns (talk | contribs)
Jump to navigation Jump to search

Subsonic For SME 8.0


I have not verified if this works for previous versions of SME

Subsonic is a music media server that integrates with webapps, mobile devices, and most DLNA clients. Subsonic is a free, web-based media streamer, providing ubiquitous access to your music. Use it to share your music with friends, or to listen to your own music while at work. You can stream to multiple players simultaneously, for instance to one player in your kitchen and another in your living room.
Subsonic is designed to handle very large music collections (hundreds of gigabytes). Although optimized for MP3 streaming, it works for any audio or video format that can stream over HTTP, for instance AAC and OGG. By using transcoder plug-ins, Subsonic supports on-the-fly conversion and streaming of virtually any audio format, including WMA, FLAC, APE, Musepack, WavPack and Shorten.
If you have constrained bandwidth, you may set an upper limit for the bitrate of the music streams. Subsonic will then automatically resample the music to a suitable bitrate.
In addition to being a streaming media server, Subsonic works very well as a local jukebox. The intuitive web interface, as well as search and index facilities, are optimized for efficient browsing through large media libraries. Subsonic also comes with an integrated Podcast receiver, with many of the same features as you find in iTunes.

  • Based on Java technology, Subsonic runs on most platforms, including Windows, Mac, Linux and Unix variants.
  • Enjoy your music and movies no matter where you are. Share with family and friends.
  • Browse and manage your media collection with the user-friendly web interface.
  • Stream music to Android, iPhone and Windows Phone.
  • Subsonic apps available for Roku, BlackBerry Playbook and many more.
  • Convert and stream lossless music on the fly.
  • Manage 100,000+ files in your music collection without hassle.
  • Download and listen to Podcasts.
  • Get cover art, lyrics, reviews and other album info from Google, Chartlyrics, allmusic and Wikipedia.
  • Plus much more...

Step One
Download the latest "Fedora" rpm from subsonic. As of this release the latest version is Subsonic 4.7 Or you can

wget http://downloads.sourceforge.net/project/subsonic/subsonic/4.7/subsonic-4.7.rpm?r=http%3A%2F%2Fwiki.contribs.org%2Findex.php%3Ftitle%3DUser_talk%3ANewburns%26action%3Dsubmit&ts=1357847875&use_mirror=voxel

Step Two
Download Java for your system. I decided to use Java 6u32 since it was most compatible with other web applets. You can find the file from Website. The website will no longer post Java 6 updates to it's public site after February 2013. Please be sure to download the proper version for your server. ie - I had to use the x64 rpm.
Step Three
Prepare your Java file and install. The following code utilizes Java 6u32 rpm. Please adjust your code before copying and pasting to match your Java version's filename.

chmod a+x jdk-6u32-linux-x64-rpm.bin
./jdk-6u32-linux-x64-rpm.bin
ln -s /usr/java/jdk1.6.0_32 /usr/java/latest/

You can remove the downloaded rpm from where you used the wget command. Please be sure to link to correct file according to your version.
Step Four
Install ffmpeg from the dag repository. To install ffmpeg

    • Setup the Dag repository
/sbin/e-smith/db yum_repositories set dag repository \
Name 'Dag - EL5' \
BaseURL 'http://apt.sw.be/redhat/el5/en/$basearch/dag' \
EnableGroups no \
GPGCheck yes \
GPGKey http://dag.wieers.com/packages/RPM-GPG-KEY.dag.txt \
Visible no \
Exclude freetype,htop,iptraf,rsync,syslinux \
status disabled
    • Then modify yum config
signal-event yum-modify
    • Install ffmpeg
yum install --enablerepo=dag ffmpeg

Step Five
Install Subsonic. Make sure you are still in the directory where you first downloaded the rpm.

yum localinstall subsonic-4.6.rpm Be sure to change the localinstall to whatever version you have downloaded.

Step Six
There are some changes to make Subsonic Service available

ln -s /etc/init.d/subsonic /etc/rc.d/rc0.d/K02subsonic
ln -s /etc/init.d/subsonic /etc/rc.d/rc7.d/S98subsonic
ln -s /etc/init.d/subsonic /etc/rc.d/rc6.d/K02subsonic
ln -s /etc/init.d/subsonic /etc/rc.d/rc2.d/K02subsonic
ln -s /etc/init.d/subsonic /etc/rc.d/rc1.d/K02subsonic
config set subsonic service access public status enabled TCPPort 4040
signal-event remoteaccess-update

You are now ready to start the Subsonic service

service subsonic restart

You can also change some application specific settings such as Java Memory Heap Size with

nano -w /usr/share/subsonic/subsonic.sh

Subsonic is available via http://localhost:4040

Setting a ProxyPass to access other than port 4040
This method is still under investigation

Topic

make it work by modifying /etc/sysconfig/subsonic and add argument :

--context-path='/subsonic'

then modify proxypass :

db accounts set subsonic ProxyPass
db accounts setprop subsonic Target http://localhost:4040/subsonic
expand-template /etc/httpd/conf/httpd.conf
sv t httpd-e-smith

then

service subsonic restart

at this time http/mydom/subsonic work

Newburns 22:17, 10 January 2013 (MST)