Streaming

HTTP Live Streaming

HTTP Live-Streaming ist eine von Apple entwickelte Technologie zum Streamen von Videoinhalten per HTTP.

Videosignale werden in Blöcke von 9-10 Sekunden Länge unterteilt. Diese Blöcke müssen in unterschiedlichen Qualitäten erzeugt und mit Hilfe einer Playlist bekanntgemacht werden. Beim Abspielen einer Playlist erhält der Player Informationen über die zur Verfügung stehenden Blöcke und deren Bild- und Tonqualität. Abhängig von der verfügbaren Netzqualität wählt der Player dann den passenden Block, die passende Streamqualität aus. Sollte sich während des Abspielens die zur Verfügung Netzqualität ändern, beispielsweise weil man sich mit seinem Mobilgerät im Auto befindet, kann der Player selbständig Blöcke höherer oder niederer Qualität auswählen, um das Abspielen nicht unterbrechen zu müssen.

Daraus folgt allerdings, dass auf dem VDR Streams von verschiedener Qualität gleichzeitig erzeugt werden müssten, wenn man Live-TV schauen möchte. Bei der Ausstattung der meisten VDRs dürfte das nicht möglich sein, da das Kodieren der Videosignale in ein HTTP Live-Streaming kompatibles Format sehr rechenintensiv sein kann (abhängig von der gewünschten Qualität).

Daher bietet dir iVDRclient beim Erzeugen von Streams die Möglichkeit zur Auswahl der gewünschten Bild- und Tonqualität. Zu Hause im WLAN kann man mit hoher Qualität auf dem Mobilgerät fernsehen, unterwegs kann schon allein eine niedrige Upload-Rate des DSL-Anschlusses den Spaß etwas trüben.

Entscheidend für die mögliche Qualität ist natürlich auch die Ausstattung des VDRs. Ein älterer Prozessor kann schon mit der Erzeugung eines Streams in niedriger Qualität Probleme haben, ein moderner und schneller Prozessor kann sicher mehrere Stream in hoher Qualität gleichzeitig erzeugen. 

Ausprobieren macht in diesem Fall schlau.

VLC

Auf dem VDR muss vlc in einer aktuellen Version (mind. 2.1.4) installiert sein.

Mit Hilfe von vlc werden die Streams erzeugt. iVDRclient startet vlc auf dem VDR. Eingangsseitig verbindet sich vlc an das streamdev-Plugin, ausgangsseitig werden HTTP Live-Streaming Segmente in das konfigurierte Verzeichnis gespeichert.

iVDRclient muss daher auch als Client für das streamdev-Plugin betrachtet werden, mit allen Vorteilen und Einschränkungen. Beispielsweise wird Streaming von ZDF nicht funktionieren, wenn ein anderer User schon ARD schaut und nur eine DVB-S Karte im VDR zur Verfügung steht.

Zurzeit erzeugt vlc die Segmente noch nicht 100% Apple Standard konform, so dass beispielsweise beim Anschauen des Streams zu Beginn für ca. 10 Sekunden immer nur Ton zu hören und ein Standbild zu sehen sind. 

Live-TV funktioniert in dieser Konstellation schon sehr gut, wenn auch nicht perfekt. Mit neuen Versionen von vlc wird es sicher weitere Verbesserungen geben.

Aufnahmen streamen funktioniert auf identische Weise, es kann jedoch Probleme geben, wenn man beim Streamen zu anderen Zeiten springen möchte. Wer auf diesen Komfort nicht verzichten möchte, sollte aus der Aufnahme zuerst vollständig einen Stream erzeugen, d.h. Streaming starten und abwarten. Streams, die aus Aufnahmen erzeugt wurden, bleiben auf dem VDR gespeichert, bis der Nutzer sie manuell über iVDRclient löscht. Man kann also morgens den Stream erzeugen und abends schauen (wenn man gut plant...)

Benutzerverzeichnisse und WebServer

In den meisten Fällen wird das Web Server Verzeichnis zum Speichern des Stream das Verzeichnis

/home/$USER/public_html

sein. Dieses Verzeichnis ist bei den meisten Distributionen per default nicht über den Webserver erreichbar.

Apache2

Führe folgende Befehle auf deinem VDR aus, um das oben genannte Verzeichnis freizugeben, falls du Apache2 benutzt.

Der erste Befehl lädt das notwendige Apache-Modul:

sudo a2enmod userdir

Der zweite Befehlt startet Apache2 neu (abhängig von Installation und Distribution kann dieser Befehl abweichen):

sudo /etc/init.d/apache2 reload

lighttp

Führe folgende Befehle auf deinem VDR aus, um das oben genannte Verzeichnis freizugeben, falls du lighttp benutzt:

Der erste Befehl lädt das notwendige ligthttp-Modul:

sudo lighty-enable-mod userdir

Der zweite Befehlt startet lighttp neu (abhängig von Installation und Distribution kann dieser Befehl abweichen):

sudo /etc/init.d/lighttpd reload


Privacy

This website uses cookies to manage authentication, navigation, and other functions. By using our website, you agree that we can place these types of cookies on your device.

View e-Privacy Directive Documents

You have declined cookies. This decision can be reversed.

You have allowed cookies to be placed on your computer. This decision can be reversed.