Live Übertragung mit geringer Latenz

Auktionen, Konferenzen, Podiumsdiskussionen
Auktionen, Konferenzen, Podiumsdiskussionen

Die zeitliche Verzögerung zwischen dem realen Geschehen vor der Kamera und der Anzeige auf dem Bildschirm des Zuschauer wird "Latenz" genannt.

Viele Kunden nennen dies auch "Delay" oder "Echtzeit Übertragung". Wichtig ist dies bei Liveübertragungen mit Rückfragen von anderen Standorten, für Online-Auktionen, Versteigerungen, etc.

Die Latenz beim Streaming entsteht im wesentlichen an 3 Punkten:
1) Live-Encoder vor Ort: 0,1 bis 5 Sekunden
2) Streamingserver: 0,1 bis 5 Sekunden
3) Videoplayer ca. 4 bis 30 Sekunden per HTML5
(und per Flash- und VLC-Videoplayer ca. 0,1 bis 4 Sek.)

 

Lösung für Punkt 1: Live-Encoder vor Ort
Ihre Livebild wird vom Live-Encoder verarbeitet und an den Streamingserver geschickt. Ein Hardware-Encoder ist in der Regel sehr schnell (0,1 - 1,5 Sek.). Software Live-Encoder wie Wirecast oder OBS können auf 0,1 bis 0,5 Sek. konfiguriert werden.

Lösung für Punkt 2: Streamingserver
Wir können die Bufferzeiten auf dem Streamingserver auf ca. 0,1 Sek. reduzieren. Zu empfehlen ist eine Bufferzeit von mind. 0,5 Sek. Im Fall einer Übertragung von Ihnen zum Streamingserver per LTE sollte mind. 1 Sekunde konfiguriert werden um der Latenz Datenpakete und mobilem Packetloss gerecht zu werden. Im Fall einer Satellitenübertragung (Sendewagen) sind 2 Sekunden Buffer zu empfehlen. Diese Konfiguration nehmen wir für Sie vor!

Lösung für Punkt 3: Player
Der Videoplayer im Browser kann von uns für eine Latenz für Streaming per HTML5 HLS auf ca. 4 bis 10 Sekunden eingestellt werden. Der Wert ist variabel je nach Browser, Mobilgerät, etc. Daher werden manche Zuschauer dennoch z.B. 30 Sek. Versatz haben.

Die Latenz im Flashplayer können wir auf bis zu 0,1 Sek. reduzieren! Dies führt jedoch schnell zu Hängern und "Stottern" in der Wiedergabe sobald irgendetwas nicht 100% sauber läuft. Beispielsweise aktualisiert Ihre Mailsoftware die Mails oder Ihr Virenkiller startet ein Update. Oder ein anderes Gerät im gleichen Netzwerk verwendet mehr Bandbreite - es wird dann sofort sichtbar im Bild.  Wir empfehlen daher 1 Sek. Buffer.


Fazit: Soweit es an uns liegt, können Sie mit einer Verzögerung von unter 1 Sekunde übertragen. Das entspricht beispielsweise einer Skype-Verbindung.
Auf die verfügbare Playertechnologie im Browser des Zuschauers haben wir jedoch keinen Einfluss. Hier steht heutzutage oft nur HTML5 HLS zur Verfügung um über 99% der Zuschauer zu erreichen! Für diese sind 4-10 Sekunden Latenz realistisch. Je mehr wir diese Werte weiter reduzieren, je mehr Zuschauer werden einen stockenden Livestream oder Nachladezeiten erleben.

Was Sie erwarten können

Bei einer Standard-Konfiguration:
Die normale Latenz von Livestream auf allen unseren Accounts beträgt ca. 12 - 25 Sekunden per HTML5 Video.

Bei einer Konfiguration für geringe Latenz:
In der Summe lässt sich die Übertragungs-Latenz für die breite Masse der Zuschauer auf 4-10 Sekunden reduzieren. Für den Flashplayer sogar auf ca. 1 Sekunde.

Je nach älterem Browser und/oder Mobilgerät sowie anderen technischen Umständen kann es Abweichungen nach oben geben. Zudem ist die Verzögerung durch den Live-Encoder bei Ihnen vor Ort zu beachten.

 

Warum wird nicht immer für eine geringe Latenz konfiguriert?

Der Streamingserver als auch der Videoplayer verwenden normalerweise eine Bufferzeit. Daten werden vorgeladen um Leitungsschwankungen auszugleichen. Datenpakete werden im Internet nicht 100% gleichmäßig übertragen. Für einzelne Datenpakete beträgt die Übertragungszeit nur 10 ms (Millisekunden) für andere 500 ms (0,5 Sek.). Im Fall einer Verbindung per 3G / UMTS oder LTE (und noch stärker bei einer Satellitenverbindung) kommen manche Datenpakete erst nach 1 bis 2 Sekunden an. 

- Für herkömmliche Downloads und das Laden einer Webseite mit Text und Bildern ist dies wenig relevant, da die Daten beim Empfänger (unabhängig von der Übertragsungszeit) einfach beim Eintreffen zusammengesetzt werden. Der Inhalt der Webseite baut sich mit den empfangenen Daten Stück für Stück auf. Es entscheidet primär die Datenmenge die ingesamt übertragen wird, nicht die Zeit welche einzelne Datenpakete benötigen.
- Beim Live-Streaming kommen spät ankommende Datenpakete jedoch "zu spät". Wenn der Stream zeitlich die Position bereits abgespielt hat, zu dem gehörig ein Datenpakete verspätet ankommen, sind die Daten nutzlos. Der Zuschauer hat dann ggf. ein Rucken/Hängen im Video wahrgenommen. Wenn Datenpakete nicht nur einzeln, sondern reihenweise zu spät kommen, bleibt der Livestream zum Nachladen stehen, ggf. fehlen dann Abschnitte bei der Wiedergabe oder der Stream kann im schlimmsten Fall gar nicht mehr abgespielt werden.

Durch Bufferzeiten wird dies fast vollständig vermieden! Spät eintreffende Datenpakete werden noch rechtzeitig verarbeitet. Der ist eine gewisse Latenz Absicht und wirkt sich sehr positiv aus.

Was ist notwendig bei Ihnen?

Einstellungen im Live-Encoder ohne die eine geringe Latenz nicht möglich ist:
- Stellen Sie bitte den Keyframe-Abstand auf 1 Sek. (falls Sie nur "GOP" einstellen können: GOP: 30).
- Encoding-Profil: "Main"
- Wir empfehlen eine Übertragung mit 720p bis 1080p mit einer Bitrate von 1500 bis maximal 3500 kbit/s. Die Auflösung ist nicht relevant, sollte aber zum Bildinhalt und der Datenrate passen.
- Live-Encoder wie OBS und Wirecast können für das Encoding auf "Low Latency" eingestellt werden.

Alternativen

Um Personen per Bild und Ton direkt kommunizieren zu lassen, werden Konferenz- und Meetingsysteme angeboten. Wie Sie dies mit Streaming kombinieren können lesen sie hier.