Was ist Videobandbreite?

Videobandbreite ist die Netzwerkübertragungskapazität, die für die Auslieferung von Videos über einen Zeitraum benötigt oder verbraucht wird. Der Bedarf hängt von der codierten Bitrate, dem Protokoll-Overhead, gleichzeitigen Streams und Schwankungen des verfügbaren Durchsatzes ab.

Wie Videobandbreite funktioniert

Der Begriff umfasst zwei unterschiedliche Größen. Ihre Vermischung verursacht die meisten Planungsfehler. Die eine ist der Bedarf eines Streams: die Bit pro Sekunde, die eine Variante benötigt, also ihre codierte Videobitrate zuzüglich der Audiodatenrate und des Container-Overheads. Die andere ist die Leistung einer Verbindung: der Durchsatz, den das Netzwerk der betrachtenden Person aufrechterhalten kann und der sich von Moment zu Moment ändert. Streaming-Formate geben die erste Größe an, damit Player sie mit ihrer eigenen Messung der zweiten vergleichen können. Bei HLS enthält jede Variante in der Multivarianten-Playlist (Master-Playlist) das erforderliche Attribut BANDWIDTH in Bit pro Sekunde, definiert als Spitzenbitrate der Segmente, sowie optional AVERAGE-BANDWIDTH; beide enthalten den Container-Overhead, aber keinen HTTP-, TCP- oder IP-Overhead. Bei MPEG-DASH enthält jede Representation einen Wert für @bandwidth, den die DASH-IF-Richtlinien anhand eines Leaky-Bucket-Modells zusammen mit der minimalen Pufferdauer erläutern. Ein Player schätzt den Durchsatz anhand seiner jüngsten Segment-Downloads und wählt eine Variante, deren angegebene Datenrate innerhalb dieser Schätzung liegt. Für Betreiber ergeben dieselben Werte pro Stream, multipliziert mit der Anzahl gleichzeitiger Zuschauer, den gesamten Auslieferungsdurchsatz am Netzwerkrand. Dieser Durchsatz, multipliziert mit der Wiedergabedauer, ergibt das Auslieferungsvolumen.

Wichtige Fakten

  1. Welche Zahl gehört in die Playlist, der Durchschnitts- oder der Spitzenwert? Bei HLS bezeichnet BANDWIDTH den Spitzenwert: bei einer Variante mit einer einzigen Medien-Playlist die höchste Bitrate einer zusammenhängenden Folge von Segmenten, deren Gesamtdauer zwischen dem 0,5- und 1,5-Fachen der Zieldauer liegt. AVERAGE-BANDWIDTH ist die Gesamtgröße der Segmente geteilt durch die Dauer der Playlist. Werden Audio oder andere Varianten separat verpackt, verlangt RFC 8216 für jeden Wert die größte Summe über alle abspielbaren Kombinationen von Varianten. Wer nur die Video-Playlist misst, gibt daher einen zu niedrigen Wert für die Variante an. Diese Messungen erfordern fertige Segmente. Wird die Playlist veröffentlicht, bevor alle Segmente codiert sind, etwa bei einer Live-Veranstaltung, soll laut RFC der Wert aus einem repräsentativen Zeitraum mit ähnlichen Inhalten verwendet werden, die mit denselben Einstellungen codiert wurden. Der RFC warnt auch davor, dass ein ungenauer Wert die Wiedergabe ins Stocken bringen oder Clients daran hindern kann, die Variante abzuspielen. Bei Encoding mit variabler Bitrate weichen die beiden Werte voneinander ab: Für On-Demand-Inhalte soll der Spitzenwert laut Apples Authoring-Spezifikation höchstens 200 % des Durchschnittswerts betragen. Außerdem darf der gemessene Spitzenwert um höchstens 10 % vom angegebenen BANDWIDTH abweichen. Die Einstellung der Videobitrate im Encoder entspricht keinem der beiden Werte, da die Playlist-Werte aus verpackten Segmenten berechnet werden und Audio- sowie Container-Overhead enthalten.
  2. Wie viel schneller als die Bitrate einer Variante muss die Verbindung eines Zuschauers sein? Um die Sicherheitsmarge des Players schneller; Gleichstand reicht nicht. hls.js dokumentiert beispielsweise zwei Standardfaktoren: Die normale Auswahlprüfung für die aktuelle oder eine niedrigere Qualitätsstufe verlangt, dass das 0,95-Fache der geschätzten Bandbreite größer als die Bitrate dieser Stufe ist. Auf eine höhere Stufe wechselt der Player nur, wenn das 0,7-Fache der Schätzung größer als deren Bitrate ist. Für eine Stufe, die mit 5 Mbit/s verglichen wird, erfordert der Wechsel nach oben einen Schätzwert über etwa 7,1 Mbit/s. Welche Bitrate verglichen wird, hängt vom Puffer ab: Standardmäßig verwendet der Quellcode von hls.js AVERAGE-BANDWIDTH, sofern die Playlist diesen Wert angibt, mindestens zwei Segmentdauern gepuffert sind und kein erneutes Puffern erwartet wird; andernfalls verwendet er BANDWIDTH. Weitere Prüfungen berücksichtigen etwa die erwartete Zeit zum Abrufen eines Segments. Die Schätzung ist ein gleitender Durchschnitt der letzten Downloads und hinkt daher einem Netzwerk hinterher, das sich gerade erholt hat. Verstehen Sie das Ergebnis als Bedingung für den Schätzwert des Players, nicht als garantierte Verbindungsgeschwindigkeit. Die Faktoren sind die Konfigurationsstandardwerte abrBandWidthFactor und abrBandWidthUpFactor; andere Player wenden eigene Regeln an. Prüfen Sie daher den Player, den Sie ausliefern.
  3. Wie schätze ich das Auslieferungsvolumen für ein Publikum? Multiplizieren Sie die durchschnittliche Bitrate jeder Variante mit der Zahl der Zuschauer, die sie ansehen, um den Durchsatz zu berechnen. Multiplizieren Sie diesen anschließend mit der Wiedergabedauer, um das Volumen zu erhalten. Nutzen Sie die Spitzenwerte zur Dimensionierung für Lastspitzen. Beispielsweise benötigen 1.000 gleichzeitige Zuschauer einer Variante mit durchschnittlich 3 Mbit/s etwa 3 Gbit/s Edge-Durchsatz, also ungefähr 1,35 TB pro Stunde. Diese Zahl beschreibt, was die Edge-Server an die Zuschauer senden. Sie beschreibt nicht den Datenverkehr zum Origin-Server, der davon abhängt, wie viele Anfragen das CDN aus dem Cache beantwortet. Auch HTTP-, TCP- und IP-Overhead ist darin nicht enthalten, da die HLS-Bitratendefinitionen ihn ausschließen. Zudem verteilen sich Zuschauer auf verschiedene Stufen der Variantenleiter. Der Anteil je Variante aus der Player-Analyse liefert daher einen genaueren Wert als die Annahme, dass alle die höchste Variante ansehen.
  4. Wie niedrig sollte die unterste Variante angesetzt werden? Für iOS verlangt Apples HLS-Authoring-Spezifikation, dass eine über Mobilfunknetze ausgelieferte Multivarianten-Playlist eine Variante enthält, deren Spitzenwert für BANDWIDTH bei 192 kbit/s oder darunter liegt. Nehmen Sie eine solche Rückfallvariante für Zuschauer auf, die iOS-Geräte im Mobilfunknetz verwenden; die Spezifikation legt dies nicht als allgemeine Regel für andere Plattformen fest.

Wann Videobandbreite wichtig ist

Schätzen Sie die Gesamtbandbreite, wenn Sie die CDN-Kapazität dimensionieren und eine adaptive Variantenleiter erstellen. Varianten, deren Bitrate den verfügbaren Durchsatz der Zuschauer übersteigt, lassen die Wiedergabe stocken. Zu vorsichtig angesetzte Bitraten verringern dagegen die Qualität.

Wie Transloadit bei Videobandbreite hilft

Transloadit erzeugt die Varianten und Playlists, die diese Zahlen beschreiben. Der Robot /video/encode codiert eine Variante pro Step, mit den Voreinstellungen hls/ und dash/ bei festen Auflösungen. Der Robot /video/adaptive bündelt diese Steps zur Ausgabe als HLS, MPEG-DASH oder CMAF und erzeugt die Manifest- und Playlist-Dateien. Ihre Variantenleiter besteht somit aus den Steps für /video/encode, die Sie an /video/adaptive übergeben. Jede Einstellung einer Voreinstellung, einschließlich der Bitrate, lässt sich mit dem Parameter ffmpeg überschreiben. Der Parameter segment_duration bei /video/adaptive legt die Segmentlänge fest.

Die Tabelle der Voreinstellungen führt hls/ und dash/ als VBR ohne Bitratenangabe auf. Die Robot-Seiten erläutern nicht, wie die Bandbreitenattribute in der erzeugten Playlist berechnet werden. Sehen Sie in der erzeugten Playlist nach, welche Werte angegeben sind, und gleichen Sie diese mit den Segmentgrößen ab, bevor Sie sie für Kapazitätsschätzungen verwenden.

Entdecken Sie Transloadits Möglichkeiten zur Auslieferung

Quellen

Machen Sie aus Medienwissen eine funktionierende Pipeline

Verbinden Sie Uploads, Verarbeitung, KI, Storage und Auslieferung über eine deklarative API – um Encoding-Stack, Skalierung und ständig wechselnde Formate müssen Sie sich nicht selbst kümmern.

Transloadit kostenlos ausprobieren