Was sind B-Bilder?
B-Bilder sind bidirektional prädizierte Videobilder, die bereits decodierte Bilder als Referenzen verwenden können, die in der Anzeigereihenfolge davor, danach oder auf beiden Seiten liegen. Diese Flexibilität kann die Kompressionseffizienz gegenüber einer Prädiktion in nur eine Richtung verbessern.
So funktionieren B-Bilder
Ein B-Bild kann Bilddaten aus einer oder beiden seiner Referenzlisten vorhersagen. Diese können decodierte Bilder benennen, die in der Anzeigereihenfolge davor oder danach liegen. Wird ein späteres Bild verwendet, muss diese Referenz zuerst decodiert werden. Daher kann die codierte Reihenfolge von der Präsentationsreihenfolge abweichen. Das verbessert die Kompressionsmöglichkeiten, erfordert aber Puffer zur Umordnung und verursacht Latenz. Encoder stimmen Anzahl, Referenzstruktur und Hierarchie der B-Bilder auf Auslieferungslatenz, Decoderfähigkeiten und Anforderungen an den wahlfreien Zugriff ab.
Wichtige Fakten
- Container oder Elementarstreams enthalten die Decodier- und Präsentationszeitangaben, die zur Umordnung der Bilder erforderlich sind. Wird die Paketreihenfolge als Anzeigereihenfolge behandelt, kann dies zu einer fehlerhaften Wiedergabe führen.
- Hierarchische B-Bild-Strukturen können einige B-Bilder als Referenzen für andere nutzen. Das verbessert die Effizienz, erhöht aber die Abhängigkeitstiefe und die Fehlerfortpflanzung bei Datenverlust.
- Encoder mit geringer Latenz können B-Bilder deaktivieren oder begrenzen, da die Prädiktion anhand späterer Bilder eine Vorausschau und Pufferung im Decoder erfordert, selbst wenn der Codec sie ansonsten unterstützt.
Wann B-Bilder wichtig sind
Setzen Sie mehr B-Bilder ein, wenn kleinere Dateien oder höhere Qualität bei einer bestimmten Bitrate wichtiger sind als minimale Latenz. Manche Workflows begrenzen ihren Einsatz, weil sie Verzögerungen durch Umordnung, zusätzlichen Speicherbedarf oder Einschränkungen für Decoder verursachen.