Echtzeit-Übertragung

Auktionen, Konferenzen, Podiumsdiskussionen
Auktionen, Konferenzen, Podiumsdiskussionen

Bei Sportübertragungen, Auktionen, Konferenzen mit zugeschalteten Standorten, Podiumsdiskussionen mit Telefonanrufen, etc. kommt es auf eine niedrige Latenz an.

Der Ausdruck "Latenz" steht für die Verzögerung zwischen dem realen Geschehen bis zur Anzeige auf dem Bildschirm des Zuschauers. Bei Support-Anfragen sprechen unsere Kunden auch oft von "Delay", "Versatzfreiem Streaming" oder fragen nach "Echtzeit Übertragung".

Ein Beispiel aus der Praxis:
Bei der Übertragung von von Fußballspielen versuchen sowohl Streaminganbieter als auch TV-Sender eine möglichst geringe Latenz zu erzielen. Fällt ein Tor, soll nicht zuerst der Nachbar jubeln, während auf dem eigenen Bildschirm noch nicht einmal auf das Tor geschossen wurde. 

Die Latenz beim Streaming entsteht im wesentlichen an 3 Punkten:

a) Live-Encoder vor Ort (0,5 bis 7 Sek.)
b) Streamingserver (ca. 0,1 bis 2 Sek.)
c) Videoplayer: (ca. 0,1 bis 3 Sek. – HTML5: 5 bis 60 Sek.)

Hilfestellung für Punkt a)
Die Latenz hängt primär mit dem gewählten Live-Encoder zusammen. Hardware-Encoder sind in der Regel sehr schnell (0,5 - 1,5 Sek.). Live-Encoding Software wie der Adobe "Flash Media Live Encoder" sind hingegen relativ langsam (2-5 Sek.). Als Software empfehlen wir in diesem Bereich Wirecast oder OBS. Beide bieten eine Einstellung für optimiertes Low-Latency Streaming (0,5 - 1,5 Sek).

Lösung für Punkt b) und c)
Wir können die Bufferzeiten auf dem Streamingserver und im Player auf ca. 0,1 Sek. reduzieren. Dies ist in jedem unserer Streamingpakete auf Kundenwunsch kostenfrei enthalten. Für mobile Geräte bitte den Absatz "Latenz auf Mobilgeräten" beachten.
Die Bufferzeit auf dem Streamingserver kann auch bewußt angehoben werden, um trotz schlechter Internetleitung am Übertragungsort eine saubere Übertragung zu ermöglichen. Dies hilft besonders bei schwankender Leitungsgeschwindigkeit und bei hohem Packet Loss (beispielsweise bei LTE-Verbindungen).

Zwischenfazit:
Soweit es an uns liegt, können Sie mit einer Verzögerung von unter 1 Sekunde übertragen. Das entspricht beispielsweise einer Skype-Verbindung.


Nützliches Hintergrundwissen:

Allerdings sollte man sich im klaren sein, wofür diese Buffer-Zeiten normalerweise genutzt werden. Sowohl der Streamingserver als auch der Videoplayer verwenden normalerweise eine Bufferzeit von ca. 1-2 Sekunden um Daten- bzw. Leitungsschwankungen auszugleichen.
Datenpakete werden im Internet nicht 100% gleichmäßig übertragen, sondern können durchaus nach 20 Millisekunden und über einen anderen Anschluss erst nach 0,5 Sekunden am Zielserver ankommen. Im Fall von einer UMTS oder LTE Mobilverbindung und bei einer Satellitenverbindung kommen manche Datenpakete (speziell nach Korrektur von Packet-Loss) auch teilweise erst 1 bis 6 Sekunden später an. 
Für Downloads und die Anzeige von Webseiten ist dies wenig relevant, da die Daten einfach beim Empfänger (unabhängig von der Übertragsungszeit) zusammen gesetzt werden. Dort entscheidet primär die Datenmenge die ingesamt in einem Zeitraum übertragen wird, nicht die Zeit, die einzelne Datenpakete benötigen.
Beim Live-Streaming kommen spät ankommende Daten jedoch in manchen Fällen "zu spät". Wenn der Stream die Position bereits abgespielt hat, zu der die zugehörigen Daten verspätet ankommen, sind die Daten nutzlos. Der Zuschauer hat dann ein Rucken/Hängen im Video wahrgenommen. Wenn Datenpakete nicht nur einzeln, sondern reihenweise zu spät kommen, bleibt das Video wiederholt hängen oder komplett stehen.

Durch Bufferzeiten von 1-2 Sek. wird dies fast vollständig vermieden! Wird jedoch mit 0,1 bis 0,2 Sek. Latenz ohne Buffer übertragen, wirkt es sich teilweise sichtbar auf die Wiedergabe aus. Die Anzahl von Daten die möglicherweise zu spät ankommen steigt. Übertragungen per LTE (vom Live-Encoder zum Streamingserver) fallen besonders negativ mit Packet-Loss und spät eintreffenden Datenpaketen auf!
Wenn auf dem Zuschauer-PC dann auch noch ein Programm Updates herunterlädt, im Hintergrund Mails abruft oder andere Personen die selbe Internetleitung nutzen, wird das Video hiervon auch noch zusätzlich beeinträchtigt!
Daher ist eine solche Null-Latenz Konfiguration per Standard nicht aktiv! Bei entsprechendem Bedarf können wir diese aber gerne wie beschrieben optimieren und optimal für Ihren Bedarf einstellen.

Fazit & Lösung
In der Summe lässt sich die Übertragungs-Latenz hierdurch auf unter 1 Sekunde reduziert. In dieser Region bewegen sich auch Video-Messenger und man kann sich relativ gut über die Verbindung hin- und zurück unterhalten ohne einen großen Versatz zu spüren.

Latenz auf Mobilgeräten (HTML5 HLS, MPEG DASH)

Dieser Abschnitt bezieht sich die Wiedergabe beim Zuschauer (und nicht auf das Senden des Livestream über eine mobile Verbindung).

Mobilgeräte der letzten Jahre verwenden für Live-Streaming HTTP HLS (HTML5 HLS). Auch auf PCs / Browser ohne Flashplayer muss per HLS übertragen werden. Technisch gehört auch MPEG DASH in diese Kategorie.

Videostreaming per HTML5 HLS ist ein HTTP Übertragungsverfahren. Ursprünglich wurde HLS maßgeblich von Apple entwickelt, um auf dem iPhone eine saubere Livestreaming- und Dateistreaming-Übertragung zu ermöglichen: Ein typisches Problem bei Mobilverbindungen besteht darin, dass die Internetverbindung ständig kurzzeitig unterbrochen sein kann, und dann sofort wieder verfügbar ist. Beispielsweise beim Handy während sich der Nutzer bewegt (Auto, etc.). Kurze Unterbrechungen im Datenverkehr können von HLS kompensiert werden, ohne das der Zuschauer bei der Videostream-Wiedergabe diese Unterbrechungen bemerkt. Das Video läuft sauber. Auch wenn sich der Zuschauer im Zug befindet und durch einen Wald oder kurzen Tunnel fährt. Hierfür ist das Verfahren perfekt!

Dies geht jedoch konzeptbedingt auf Kosten der Latenz. Live-Videos über "HLS" sind per Standard um ca. 30 Sekunden verzögert! Wir können dies deutlich reduzieren. Ein Wert unter 8 Sekunden führt jedoch bei vielen Mobilgeräten zu Störungen im Buffering und es müsste bei einem Teil der Zuschauer eine unsaubere Wiedergabe in kauf genommen werden. Daher sind ca. 10 Sekunden ein guter Kompromiss.

Diese 10 Sekunden Verzögerung sind einerseits bei weitem keine Echtzeit! Andererseits liegt der Wert deutlich unter den Einstellungen der meisten Streaminganbieter und entspricht auf Geräten die nur über HTML5 HLS übertragen können dem technisch schnellsten Ergebnis.