Logo Juerg Wenger

Streaming-Server

Auf diesen Seiten erkläre ich wie man selber einen Audio- swie einen Video-Streamingserver aufbaut. Basis für den Audioserver ist der Freeware Server von Slimdevices (heute Logitech) sowie die dazugehörigen (aber nicht unbedingt notwendigen) Hardware-Player SqueezeBox.

Für den Videoserver verwende ich den ebenfalls als Freeware erhältlichen Server "Swisscenter" und das Showcenter von Pinnacle Systems.

Beide Streaming-Server verwenden eine gemeinsame Datenbasis. Aufgrund der mittlerweilen stetig wachsenden Anzahl an Filmen und Audio-Dateien sind die Audio- und Videodaten auf einer Synology CS-407 mit 4TB (als RAID-5 konfiguriert) abgelegt. Der Zugriff darauf geschieht von Streaming-Servern mittels NFS (Network File System). Das hat auch den Vorteil, dass die Daten nicht mehr zweimal (einmal auf dem Server und einmal auf dem Backup) liegen müssen. Die beiden Streaming-Server haben lediglich Lese-Rechte auf den Daten und sollten somit nichts löschen können..

Audio-Streamingserver   Video-Streamingserver   NFS auf Synology einrichten

 

Audio-Streamingserver

Ausgangslage: Ich will Musik hören und nicht das Geschwätz der meisten Radiostationen !

Lösung: Selber die Musik bestimmen, die ich hören will :-)

Soweit so gut, aber nun mal der Reihe nach. Meine bevorzugte Musikrichtung ist Trance. Und da habe den richtigen Sender schon vor Jahren gefunden: Digitally Imported aus Amerika. Die Musikrichtungsauswahl ist R-I-E-S-I-G. Alleine dort sind (stand heute) 35 verschiedene Richtungen auswählbar. Zusätzlich stehen die 32 Kanäle von Sky.fm zur Verfügung. Genügend Auswahl also :-) Diese Sender sind grundsätzlich gratis, werden aber von Werbung unterbrochen. Wer das stört (wie mich) der kann für lediglich 5 Dollar monatlich auf den Premium-Dienst wechseln und erhält nebst besserer Qualität ein 100% werbefreies Radio, welches ausschliesslich 24h an 7 Tagen der Woche seine Lieblingsmusikrichtung "dudelt".

Da ich zum Musikhören nicht immer den PC laufen lassen will, habe ich mich für Hardware-MP3-Player entschieden (am Design des Modells unten rechts sieht man, das ich das Teil schon lange habe :-) --> läuft aber immer noch einwandfrei !). Die Geräte von Slimdevices (heute Logitech Squeezebox) sind da genau richtig ! Leider auch etwas teuer :-( Egal, die Funktionen sind es wert ! Nebst den Hardware-Playern benötigt es (zwar nicht zwingend) eine Steuersoftware um die vollen Leistungsmerkmale auszuspielen. Die Software läuft unter Linux (oder Windows oder auf NAS wie von Synology) ist Freeware und damit gratis und läuft mit jeder Art von MP3-Playern zusammen.

Um den Freak-Faktor zu befriedigen sei hier gesagt, dass das Kommunikationsprotokoll der SqueezeBoxen offengelegt ist und man problemlos mit anderer Software oder Hardware wie von der Hausautomation oder vom Snom-IP-Telefon darauf zugreiffen und lustige Funktionen realisieren :-) kann.

  • Steuerung der Stereoanlage (Einschalten / Ausschalten wenn der Player geschalten wird, geht auch vom Web aus)
  • Synchronisation von Playern auf Knopfdruck, um die Selbe Musik in einem anderen Raum zu hören
  • Anzeige des momentanen Songnamens in der Hausautomation
  • Auswahl eines beliebigen Stücks im MP3-Archiv via Weboberfläche
  • Auswahl eines beliebigen Streams via Telefon oder Touchscreen der Hausautomation (oder automatisch beim Nachhause kommen :-))
  • Akustische Ausgabe von Störungen (Alarmmeldungen des Netzwerkmanagements)
  • Displayanzeige des Anrufnamens bei einem eingehenden Telefonanrufs
  • Abhören von Voicemails via Stereoanlage
  • Newsanzeige an den Playern
  • und so weiter ...
Cool nicht ? :-)


   
Hardwareplayer links SqueezeBox V3 Wired oder Wireless (sieht man dem Teil von aussen nicht an) rechts SqueezeBox V1 (läuft immer noch)
Die webbasierte Verwaltung von SqueezeCenter




 

Video-Streamingserver

Die Idee ist relativ einfach: Man will im "etwas" grösseren Kollegenkreis die letzten Ferienfotos gemeinsam anschauen, oder man hat auf dem PC einen Film den man nicht unbedingt zuerst auf eine DVD basteln will. Wie stellt man das an, ohne alle um den PC versammeln zu müssen ?? Logisch: Man benutzt den Fernseher. Da ich mir nun endlich auch einen Flachbildschirm geleistet habe, bietet sich dies ja geradezu an.

Frühere Versuche mit dem Pinnacle Showcenter (erste Generation) führten nicht zum gewünschten Erfolg, weil die notwendige Steuersoftware sch... ähm... nicht brauchbar war. Durch einen Arbeitskollegen stiess ich auf das Produkt Swisscenter. Dies ist eine freie Serversoftware in PHP (meiner Lieblingsprogrammiersprache) und läuft unter Linux und alternativ unter Windows. Da ich nun sowohl ein Hardwareplayer und die nötige Software dazu habe, kanns losgehen ...

Hardwareplayer Showcenter 1000 von Pinnacle Systems. Dieses Teil wird heute nicht mehr produziert.
Funktionen:
  • Anzeige von Bildern
  • Anzeige von Filmen
  • Hören von Musik und Audiostreams
  • Surfen im Web
Die Konfigurationsoberfläche von "Swisscenter"

Nun gut, gaaaanz so einfach wurde dieses unterfangen nicht. Zuerst müssen die Installationsvoraussetzungen auf dem (Linux)-Server erfüllt sein:

  • Cron ist installiert (wird meistens der Fall sein)
  • PHP version 4.x
  • PHP CLI ist installiert
  • TrueTypeFonts sind installiert
  • Lese/Schreiberechte im Installationsverzeichnis
Die Installation von Swisscenter war ein Kinderspiel und ist auf der Projektseite gut und verständlich erklärt. Warum die Software "Swisscenter" heisst obwohl das Projekt aus England kommt, entzieht sich meiner Kenntnis. Fakt ist, wenn man einmal die Mühen überwunden hat funktioniert's :-)

Sobald das Swisscenter installiert ist, kann man mit seinem Lieblingsbrowser auf die Server-IP-Adresse:8080 zugreiffen und man wird vom Swisscenter begrüsst. Hier sieht man auch gleich, wie das Menu später auf dem Fernseher erscheint. Alle Funktionen lassen sich hier testen, wenn es also hier funktioniert sollte es später am Fernseher auch klappen.

Es bietet sich an, danach gleich einmal auf "Einstellungen" oder "Settings" zu klicken um ein paar grundlegende Einstellungen vorzunehmen.

  • Die Datenbank aufbauen --> Installation --> Datenbank erstellen
  • Allenfalls Kategorien erstellen --> Konfiguration --> Kategorien
  • Medienordner definieren --> Konfiguration --> Medienordner
  • Internet-Links definieren --> Internet-Funktionen --> Internet-Lesezeichen
  • Sprache definieren --> Experten Optionen --> Sprachdatei-Editor

Mein Hauptproblem war das richtige Videoformat zu finden um etwas an das Showcenter streamen zu können. Gemäss Beschreibung von Pinnacle Systems kann das Showcenter folgende Formate:

Musik:
  • MP3
  • PCM
Bilder:
  • JPEG
  • BMP
Filme:
  • MPEG-1
  • MPEG-2
  • MPEG4-AVI
  • Xvid

Für die Konvertierung der Videos (höchstwahrscheinlich die meisten in WMV) bietet sich das (ebenfalls gratis :-)) Programm Free Video Converter V2.5.0.0 an. Download hier.

Ein selber geschnittenes Video mit (tschuldigung) dem Standardprogramm Windows Movie Maker konnte ich dadurch problemlos in das notwendige MPEG-2 konvertieren und am TV anschauen. Die Einstellungen in Free Video Konverter waren:

Ein Problem bleibt allerdings noch: Die Verbindung über Wireless-LAN funktioniert bei mir nicht. Das Showcenter kann das Swisscenter nicht finden. Via Netzwerkkabel funktioniert es bestens :-) Wahrscheinlich liegt es aber am AccessPoint. Dieses Teil hat mir schon des öfteren einen Strich durch die Rechnung gemacht... Und weil die Konfigurationsoberfläche des AccessPoint auf dem selben Port liegt wie das Showcenter und der AccessPoint eine, sagen wir mal, eigenwillige Vorstellung von NAT und Portforwarding hat, vermute ich hier das Problem. Ich werde mich dem bei Gelegenheit mal annehmen. --> Oder höchstwahrscheinlich den AccessPoint ersetzen :-)




 

NFS auf Synology einrichten

Zu meinem Erstaunen ist NFS relativ schnell eingerichtet, weil alle notwendigen Programme mit der Standardinstallation von Debian 5.0 (Lenny) offenbar bereits installiert wurden. Es mussten lediglich die NFS-Berechtigungen auf der Synology eingerichtet sowie die Mounts bei Linux eingetragen werden. Fertig war es :-)

Aber alles der Reihe nach ...

Dieses Prachtsexemplar von einem NAS habe ich bei Ricardo günstig erworben und mit zusätzlichen Festplatten (4 TeraByte) bestückt. Es ist die CS-407 der Firma Synology. Es dient mir mit RAID-5 als Backup und auch ansonsten als Ablage jeglicher Daten. Unter anderem eben auch als Datenablage für die Music- und Video-Daten.
 
Zuerst ist auf der Synology ein neuer "gemeinsamer Ordner" zu erstellen.
 
Dann wird mit dem Knopf "NFS-Berechtigungen" der Zugriff vom Linux-Server freigegeben. Es kann angegeben werden ob ausschliesslich Lese-Rechte oder Lese-/Schreib-Rechte vergeben werden sollen.
 

Auf dem Linux-Server ist dann lediglich in der Datei "/etc/fstab" die Verbindung zu der Synology anzugeben. Wichtig ist die Verwendung von "/volume1/" im Pfad (wird bei der Synology ziemlich klein unten angezeigt). Wenn man das weiss (oder genügend rumgeärgert hat) funktioniert der Zugriff nach dem Befehl "mount -a" sofort.

FERTIG