Achtung, hier folgt ein auch für meine Verhältnisse ungewohnt technischer Beitrag. Das hat folgende Gründe: Am Dienstag stand ich vor der Herausforderung einen Video Streaming Server unter Linux zu installieren, damit es möglich ist, Videos in SecondLife für das Bildungsraumprojekt von Werner Sesink zu zeigen. Da ich das als ziemlichen K(r)ampf empfunden habe, der aber letztendlich erfolgreich war, schreibe ich mein Vorgehen hier auf, vielleicht hilft es ja irgendwem irgendwann.

Der Darwin Streaming Server ist eingentlich ein ziemlich geiles Teil. Man kann darüber rtsp-Video-Streams (statische Dateien oder auch Livestreams) und auch MP3-Streams senden. Das beste dabei ist, dass dieser unter einer Open-Source-Lizenz steht. Andere Firmen lassen sich hierfür teuer bezahlen.

linuxuser hat zur Installation des Darwin Streaming Servers eine hervorragende Anleitung geschrieben, allerdings ist diese von 2005 und nicht alle meine Probleme konnte ich damit lösen.

Download der Quelltexte

Für den Download muss man sich bei Apple registrieren. In meiner Naivität hatte ich zuerst die aktuelle Version 6.0.x heruntergeladen. Diese hat aber beim kompilieren viel zu viele Fehler geschmissen (so ähnlich sah das aus), sodass ich es mit der Vorversion 5.5.5 probiert habe und auch dabei geblieben bin.

Installation und Kompilieren der Quelltexte

Die Datei DarwinStreamingSrvr5.5.5-Source.tar.gz habe ich hochgeladen (Verzeichnis beliebig) und mit
tar xvzf DarwinStreamingSrvr5.5.5-Source.tar.gzentpackt. Im Verzeichnis DarwinStreamingSrvr5.5.5-Source kompilierte ich anschließend die Quellen mittels
BuilditDas ging auch soweit problemlos. Von linuxuser war ich bereits vorgewarnt, dass das Buildit-Skript nicht fehlerfrei funktioniert. Es erstellt zwar die kompilierten Dateien, aber nicht in den Verzeichnissen, in denen das nun folgende Installationsskript diese erwartet. Zunächste führte ich also das Installationsskript aus:
InstallNun muss man penibel die Fehlermeldungen abarbeiten, der häufigste Fehler ist dieser Art:
copying qtpasswd to /usr/local/bin/qtpasswd
cp: cannot stat `qtpasswd': No such file or directory
In diesem Fall konnte also die Datei qtpasswd nicht gefunden werden. Mit dem Befehl
find -name "qtpasswd"findet man, wo das Build-Skript die Datei abgelegt hat und kopiert sie von dort an die vom Installationsskript gewünschte Stelle:

cp qtpasswd.tproj/qtpasswd /usr/local/binBei mir waren noch folgende Dateien an der falschen Stelle (ohne Gewähr auf Vollständigkeit):

cp PlaylistBroadcaster.tproj/PlaylistBroadcaster /usr/local/bin
cp MP3Broadcaster/MP3Broadcaster /usr/local/bin
cp WebAdmin/src/streamingadminserver.pl /usr/local/sbin
cp StreamingLoadTool /usr/local/bin/StreamingLoadTool
cp streamingloadtool.conf /etc/streaming/streamingloadtool.conf
cp -R AdminHtml /var/streaming/AdminHtml
Kopiert man den Admin-Ordner nicht, bekommt man bei Start des Servers die Fehlermeldung “Couldn’t find the en language messages file!”

(Übrigens löscht das Installationsskript die mühsam verschobenen Dateien wieder, wenn ihr es ein zweites Mal ausführen solltet.)

Die Datei perlpath.pl befand sich auch an der falschen Stelle, sie musste von DarwinStreamingSrvr5.5.5-Source/WebAdmin/ nach DarwinStreamingSrvr5.5.5-Source/ kopiert werden.

Die Gruppe qtss gab es auch nicht, die musste ich manuell anlegen:

groupadd qtssDa ich nicht mehr sicher weiß, ob die Vergabe des Adminbenutzernamens und -passworts mit dem Skript geklappt hatte (ich meine, das ging nicht), schreibe ich hier noch hin, wie man das manuell erledigt:
qtpasswd $username$username könnt ihr frei wählen. Das ist dann der Benutzername, mit dem man sich in der Webadminoberfläche einloggt. Anschließend müsst ihr noch das gewünschte Passwort eingeben.

Start und Konfiguration

Der Rest war dann geschenkt. Der Serverprozess konnte gestartet werden

/usr/local/sbin/DarwinStreamingServerund anschließend die Webadministration

/usr/local/sbin/streamingadminserver.plIm Webinterface kann man sich mit den mittels qtpasswd generierten Zugangsdaten einloggen und muss nur den Pfad zu den Videos anpassen (da wo man eben die Videos gespeichert hat oder haben wird).

Testen (in Apples QuickTime-Player, VLC hatte bei mir nicht geklappt?!) lässt sich die Installation leicht über eines der beigelegten Demo-Movies:rtsp://meinserver.tld/sample_300kbit.movEine brauchbare Dokumentation des DSS-Servers findet sich übrigens auch hier.

Schlusswort

Funktioniert. :-)

Quicktime Sample 300kbit