Subsonic

Juli 14, 2011·
Julio Batista Silva
Julio Batista Silva
· 3 Min Lesezeit
Hinweis
Heute nutze ich Jellyfin und Plex

Subsonic ist ein Open‑Source‑Media‑Server, der deine Musik‑ und Videobibliothek an jedes verbundene Gerät streamen kann. Er funktioniert ähnlich wie VLC, bietet aber Extras wie Echtzeit‑Transcoding und Scrobbling zu Last.fm.

Eine Demo vermittelt einen guten Eindruck: http://www.subsonic.org/pages/demo.jsp

Subsonic ist plattformübergreifend, da es in Java geschrieben ist. Es kann eigenständig (standalone) oder als WAR installiert werden. Hier verwende ich aus Einfachheitsgründen die Standalone‑Variante.

  1. Abhängigkeiten installieren

    julio@julio-acer ~ $ sudo pacman -S jre lame ffmpeg flac
    
  2. Subsonic aus dem AUR herunterladen und installieren

  3. Startskript bearbeiten

    julio@julio-acer ~ $ sudo vim /var/subsonic/subsonic.sh
    SUBSONIC_HOME=/var/subsonic
    SUBSONIC_HOST=0.0.0.0
    SUBSONIC_PORT=4040
    SUBSONIC_HTTPS_PORT=0
    SUBSONIC_CONTEXT_PATH=/
    SUBSONIC_MAX_MEMORY=200
    SUBSONIC_PIDFILE=
    SUBSONIC_DEFAULT_MUSIC_FOLDER=/media/externo/Musicas
    SUBSONIC_DEFAULT_PODCAST_FOLDER=/var/music/Podcast
    SUBSONIC_DEFAULT_PLAYLIST_FOLDER=/var/playlists
    export LC_CTYPE=en_US.UTF-8
    
    quiet=0
    

    SUBSONIC_HOST auf 0.0.0.0 lassen, um von überall zugreifen zu können; auf 127.0.0.1 ändern, wenn nur lokal.

    HTTPS_PORT ist optional, z. B. SUBSONIC_HTTPS_PORT=4041; SSL konfigurieren.

    Die letzte export‑Zeile hilft bei Pfaden mit Akzenten. Weitere mögliche Variablen zeigt $ locale.

  4. Wenn im vorherigen Schritt der Standard‑Musikordner gesetzt blieb, symbolischen Link in /var/music zur Musikplatte erstellen. Beispiel:

julio@julio-acer ~ $ sudo ln -s /media/external/Music/ /var/music/

Musik‑ und Videoordner lassen sich später auch über das Web‑Interface hinzufügen.

  1. Skript starten
julio@julio-acer ~ $ sudo /var/subsonic/subsonic.sh
Started Subsonic [PID 7635, /var/subsonic/subsonic_sh.log]
  1. http://localhost:4040 öffnen und das Standardpasswort ändern

  2. Einstellungen:

    • Music folders: Ordner festlegen
    • General: Playlists‑Ordner, Sprache, Theme, Nachrichten
    • Advanced: LAME konfigurieren
    • Personal: Nutzer‑Einstellungen, Avatar, Last.fm
    • Users: Nutzer anlegen, Rechte setzen, Passwörter ändern. Neben admin einen Nutzer mit minimalen Rechten anlegen.
    • Players: Player und Transcodes definieren
    • Network: „Automatically configure your router…“ NICHT aktivieren; Port manuell öffnen.

    „Access your server over the Internet using an easy-to-remember address.“ aktivieren und einen Benutzernamen vergeben (meiner: jbsilva). 30 Tage kostenlos; danach spenden (10 €) oder externen DynDNS‑Dienst nutzen (s. u.).

    Router‑Seite öffnen (hier 10.0.0.1).

    In LANSetup IP 10.0.0.2 für den Subsonic‑Rechner reservieren.

    In Port Forwarding „Custom Service“ anlegen:

    Service Name: Subsonic
    Service Type: TCP/UDP
    Starting Port: 4040
    Ending Port: 4040
    Server IP Adress: 10.0.0.2
    

    Testen, ob der Router Port 4040 weiterleitet.

    Beispiel: http://189.19.170.215:4040/ und http://jbsilva.subsonic.org sollten den Login anzeigen.

    • Transcoding: Konvertierungsbefehle hinzufügen
    • Internet TV/radio: Streams hinzufügen
    • Podcast: Downloads konfigurieren
    • Search: Index‑Update einstellen
  3. Symbolische Links für Transcoder anlegen:

    julio@julio-acer ~ $ sudo ln -s /usr/bin/lame /var/subsonic/transcode/
    julio@julio-acer ~ $ sudo ln -s /usr/bin/flac /var/subsonic/transcode/
    julio@julio-acer ~ $ sudo ln -s /usr/bin/ffmpeg /var/subsonic/transcode/
    

iPhone

Da der Flash‑Player der Weboberfläche auf dem iPhone nicht läuft, ist eine App die beste Lösung.

Kostenlose Apps fand ich nur für Android; für iPhone zwei zu je $4.99: iSub und Z-Subsonic.

Ich nutze iSub (populärer, bessere Album‑/Cover‑Darstellung laut Rezensionen). Für Z‑Subsonic gibt’s ein Setup‑Tutorial vom Entwickler: http://blog.intulon.com/?p=8

Einrichtung iSub:

  1. App laden und öffnen

  2. Settings -> Servers

  3. Neuen Server hinzufügen

    Bei Subsonic‑Domain: http://jbsilva.subsonic.org ohne Port.
    Bei DynDNS wie im nächsten Abschnitt Port mit angeben, z. B. http://jbsilva.dyndns.org:4040 oder http://casa.juliobs.com:4040/

  4. In settings » settings Last.fm‑Scrobble aktivieren und Bitrate für 3G begrenzen.

Dynamisches DNS

Nach 30 Tagen ist die Subsonic‑Adresse (http://jbsilva.subsonic.org) nicht mehr nutzbar.
Du musst spenden, per IP zugreifen oder einen DynDNS‑Dienst nutzen, um eine statische Adresse auf deine dynamische IP zu legen.

Ich habe einen Beitrag, der den gesamten Prozess mit DynDNS erklärt: HIER.


Julio Batista Silva
Autoren
Senior Cloud-Entwickler
comments powered by Disqus