Starke Strömung

Live Streaming mit Flumotion

01.09.2006
,
Wollen Sie im großen Stil Multimedia-Inhalte unter das Internetvolk bringen, hilft Ihnen die Streaming Media Software Flumotion.

Aus dem Fernsehen kennt man die Live-Übertragung bereits seit Jahrzehnten – nun präsentieren zunehmend Veranstalter ihre Konferenzen, Konzerte oder Events via Live Streaming zeitgleich im Internet.

Im Unterschied zu Webcams, von denen eine Webseite alle zehn Sekunden ein Bild holt, sendet ein Multimedia Stream Server kontinuierlich Bild- und Sounddaten. Die Streaming-Software muss im ersten Schritt die Daten, die zum Beispiel von einer Kamera stammen, komprimieren, um bei der Übertragung Bandbreite zu sparen. Im zweiten Schritt liefert sie die Inhalte an verschiedene Empfänger mit unterschiedlichen Betriebssystemen aus – und das möglichst, ohne Aussetzer zu erzeugen. Diese Aufgabe meistert die freie Streaming-Lösung Flumotion. Sie stellt Datenströme für eine große Anzahl von Nutzern bereit, die diese dann über ihren Java-fähigen Browser empfangen – plattformübergreifend.

Dazu setzt Flumotion auf die freien Audio- und Video-Codecs Vorbis und Theora und streamt Daten von einer Firewire-Quelle, einer TV-Karte oder einer Webcam. Damit auch Windows- und Mac-Nutzer an die Daten gelangen, liefert ein Apache-Server eine HTML-Seite aus, die den Stream in ein Java-Applet namens Cortado einbettet. Die Empfänger rufen die Sendung über ihren Browser auf, alternativ auch mit dem Realplayer und einem installierten Theora-Plugin. Um einen Live Stream mit Linux zu streamen, brauchen Sie neben der Kamera die Flumotion-Software, das Java-Applet Cortado sowie den Webserver Apache [1]. Apache ist Teil der meisten Distributionen, Cortado und Flumotion [2] stehen unter der GPL: Die Firma Fluendo unterstützt die Entwicklung des freien Streaming Servers.

Arbeiter und Manager

Flumotion setzt auf Gstreamer: So genannte Feed-Komponenten – Feed bedeutet einfach Stream oder Datenstrom – empfangen ein Signal, wandeln es um und senden es dann wieder. So generiert zum Beispiel eine Producer-Komponente aus den DV-Daten einer Kamera einen Feed, den die Converter-Komponente entgegen nimmt und ins Theora-Format konvertiert. Die Consumer-Komponente schickt den umgewandelten Datenstrom dann ins Netzwerk (Abbildung 1). Diese Abfolge der Komponenten heißt auch Flow: Es gibt verschiedenste Gstreamer-Komponenten, die als Producer, Converter und Consumer für ganz unterschiedliche Formate dienen.

Abbildung 1: Komponenten in Aktion: Der Manager von Flumotion kontrolliert sowohl den Worker als auch die Komponenten.

Davon bekommen Sie aber nichts mit. Sie starten lediglich den Worker- und den Manager-Daemon, wobei letzterer den gesamten Prozess koordiniert. Der Worker loggt sich beim Manager ein und ruft auf dessen Geheiß die gerade benötigten Komponenten auf. Neben den Feed-Komponenten gibt es noch andere Bestandteile wie den Tester, mit dem Sie eine bestimmte Menge an Clients simulieren, um die Belastbarkeit des Feeds zu testen.

Flumotion-Admin dient als grafische Oberfläche, die Ihnen den Umgang mit der Software erleichtert. Die Kommunikation zwischen den Komponenten und Daemons passiert über TCP, das Sie wahlweise mit SSL verschlüsseln, wobei SSL-Zertifikate zum Einsatz kommen.

Flumotion einspielen

Die folgende Anleitung beschreibt die Installation auf Kubuntu Dapper Drake. Für andere Linux-Versionen funktioniert der Weg analog, allerdings hören die Pakete auf etwas andere Namen. Leider liefen im Test die fertigen Debian-Pakete nicht, die Installation der Sourcen klappte dagegen sehr gut. Nach einer Standard-Installation von Dapper Drake brauchen Sie zusätzliche Python-Software, die Sie eventuell nicht auf Ihrer Installations-DVD finden. Binden Sie daher zunächst weitere Paketquellen für Ubuntu ein (siehe Kasten "Zusätzliche Paketquellen").

Zusätzliche Paketquellen

Öffnen Sie mit sudo pico /etc/apt/sources.list die für Paketquellen zuständige Datei und entfernen Sie das # vor dem Eintrag deb http://de.archive.ubuntu.com/ubuntu/ dapper universe. Ergänzen Sie die Zeile noch um multiverse restricted, ebenso die darunter liegende Zeile. Sie lassen die nächste Zeile leer, tippen dann deb http://packages.freecontrib.org/ubuntu/plf/ dapper free non-free und speichern die Einstellungen. Ein beherztes sudo apt-get update bringt die Paketdatenbank auf den neuesten Stand.

Welche Abhängigkeiten Flumotion offiziell benötigt, entnehmen Sie der Datei README [3]. Um auf Nummer sicher zu gehen, installieren Sie ein paar Pakete mehr über sudo apt-get install python-gtk2-dev gstreamer* python-gst* apache2-utils checkinstall und führen sudo apt-get install gcc make automake aus, um die Werkzeuge zum Übersetzen der Quellen einzuspielen.

Nun laden Sie den Quellcode der Version 0.2.1 von der Heft-CD herunter, entpacken ihn in das Home-Verzeichnis und wechseln in das neue Unterverzeichnis flumotion-0.2.1. Wählen Sie ein anderes als das Home-Verzeichnis, müssen Sie die Pfade entsprechend anpassen.

Die Kommandos ./configure, make und sudo checkinstall installieren den Streaming Media Server. Der letzte Befehl baut aus dem übersetzen Programm gleich ein Debian-Paket, das Sie bequem wieder deinstallieren (siehe Kasten "Checkinstall").

Checkinstall

Mehr Informationen zu Checkinstall bietet ein LinuxUser-Artikel [4]. Die Fragen, die das Programm Ihnen stellt, bestätigen Sie einfach jeweils mit [Eingabe], nur an einer Stelle geben Sie den Namen flumotion ein. Checkinstall baut und installiert das Paket dann automatisch, der Befehl sudo dpkg -r --purge flumotion entfernt es wieder.

Erzeugen Sie ein Passwort, mit dem sich der Worker beim Manager einloggt: Dabei hilft das im Paket apache2-utils enthaltene Programm htpasswd. Geben Sie htpasswd -nb user test ein und bestätigen Sie die Aktion mit [Eingabe]. Die Ausgabe lautet dann in etwa user:pe3unRVcD64ek, wobei das verschlüsselte Passwort nach dem Doppelpunkt jeweils variiert. Anschließend öffnen Sie die Datei planet.xml im Verzeichnis ~/flumotion-0.2.1/conf/managers/default/ und ersetzen den dort vorhandenen Eintrag user durch Ihren neuen Benutzernamen sowie das Passwort und speichern die Datei: Flumotion ist jetzt startklar.

LinuxCommunity kaufen

Einzelne Ausgabe
 
Abonnements
 

Ähnliche Artikel

Kommentare

Infos zur Publikation

LU 12/2014: ANONYM & SICHER

Digitale Ausgabe: Preis € 4,95
(inkl. 19% MwSt.)

Mit der Zeitschrift LinuxUser sind Sie als Power-User, Shell-Guru oder Administrator im kleinen Unternehmen monatlich auf dem aktuelle Stand in Sachen Linux und Open Source.

Sie sind sich nicht sicher, ob die Themen Ihnen liegen? Im Probeabo erhalten Sie drei Ausgaben zum reduzierten Preis. Einzelhefte, Abonnements sowie digitale Ausgaben erwerben Sie ganz einfach in unserem Online-Shop.

NEU: DIGITALE AUSGABEN FÜR TABLET & SMARTPHONE

HINWEIS ZU PAYPAL: Die Zahlung ist auch ohne eigenes Paypal-Konto ganz einfach per Kreditkarte oder Lastschrift möglich!       

Tipp der Woche

Ubuntu 14.10 und VirtualBox
Ubuntu 14.10 und VirtualBox
Tim Schürmann, 08.11.2014 18:45, 0 Kommentare

Wer Ubuntu 14.10 in einer virtuellen Maschine unter VirtualBox startet, der landet unter Umständen in einem Fenster mit Grafikmüll. Zu einem korrekt ...

Aktuelle Fragen

Nach Ubdates alles weg ...
Maria Hänel, 15.11.2014 17:23, 4 Antworten
Ich brauche dringen eure Hilfe . Ich habe am wochenende ein paar Ubdates durch mein Notebook von...
Brother Drucker MFC-7420
helmut berger, 11.11.2014 12:40, 1 Antworten
Hallo, ich habe einen Drucker, brother MFC-7420. Bin erst seit einigen Tagen ubuntu 14.04-Nutzer...
Treiber für Drucker brother MFC-7420
helmut berger, 10.11.2014 16:05, 2 Antworten
Hallo, ich habe einen Drucker, brother MFC-7420. Bin erst seit einigen Tagen ubuntu12.14-Nutzer u...
Can't find X includes.
Roland Welcker, 05.11.2014 14:39, 1 Antworten
Diese Meldung erhalte ich beim Versuch, kdar zu installieren. OpenSuse 12.3. Gruß an alle Linuxf...
DVDs über einen geeigneten DLNA-Server schauen
GoaSkin , 03.11.2014 17:19, 0 Antworten
Mein DVD-Player wird fast nie genutzt. Darum möchte ich ihn eigentlich gerne abbauen. Dennoch wür...