Subsonic: Stream Your Media from Anywhere

Do you have ton of media files on your home computer that you wish you could play when you’re away from home? If so, Subsonic is the open source solution you’ve been waiting for.

Subsonic is a media server that will stream your music and videos to a browser or Subsonic client. Apps are available for Android, iPhone, Windows Phone, and many other devices. Subsonic supports any media format that can stream over HTTP, including MP3, OGG, AAC, and more.

If you’re on Linux, you can most likely install Subsonic through your package manager. If you can’t find it in any of your repositories, or if you’re on Mac OS X or Windows, get it at the official download page. The website also provides installation instructions for various platforms.

First start the Subsonic server. In Linux, the command is:

sudo /etc/init.d/subsonic start

Once the server is running, open a browser and navigate to 127.0.0.1:4040. You’ll see the login screen. The username and password are both “admin.”

subsonic-login

After logging in, you’ll see the “Getting Started” page:

subsonic-getting-started

Following the steps recommended on this page, first click the link to change your administrator password. Set it to something besides “admin” and enter your e-mail address for password recovery.

subsonic-change-password

You will be logged out. Log in again with your new password and go back to the “Getting Started” page. Now click on “Set up media folders.”

subsonic-set-media-folders

Enter the full path of your music folder and add any additional media folders if you wish. Once you’ve saved your preferences, your media will show up in a sidebar.

subsonic-music-sidebar

Now, from the home page, click “Configure network settings.” Subsonic gives you two options: (1) automatically configure your router to allow incoming connections to port 4040 using port forwarding; and (2) create your own domain at “username.subsonic.org” to access your server over the Internet. You can select one or both options.

subsonic-network

After you hit “Save,” Subsonic will take a moment to test your settings. If, as in my case, Subsonic isn’t able to configure your router automatically, you can follow the instructions at PortForward.com to do it yourself.

Go to the “Settings” tab to explore options for customizing Subsonic.

To allow non-administrative users to play your media, go to the “Users” tab. This is my setup for a guest user:

subsonic-users

You can change the welcome message and page title in Settings::General.

Subsonic also lets you subscribe to podcasts. To access this feature, go to the “Podcasts” tab. You can subscribe to one podcast at a time. As shown below, Subsonic doesn’t support Atom feeds.

subsonic-podcasts

To get to your music from your browser, just go to your-IP-address:4040 or username.subsonic.org, depending on how you set up your network.

In Linux, you can find your local IP address with the command ifconfig. This typically looks like 192.168.*.***. Use this for streaming across your local area network (LAN). For instance, you could run:

firefox-bin 192.168.1.169:4040

To find out your external IP address, visit IPEcho or run this command:

lynx --dump http://ipecho.net/plain

Once you’re logged in, just click on any artist in the sidebar to see a list of their albums and songs, along with album art.

subsonic-playing

And there you go! Now you can stream your media whether you’re on a train, at a friend’s house, or in the woods (provided you have an Internet connection).

How do you currently stream music and movies? Does Subsonic sound useful to you, or do you prefer other solutions?