VP9-Codec Einstellungen in XMedia Recode: Tipps und Techniken

Der VP9-Codec ist ein von Google entwickelter Videokompressionsstandard. Er ist der Nachfolger des VP8-Codecs und wird häufig für das Streaming von Videos im Internet verwendet, insbesondere auf Plattformen wie YouTube.

VP9 bietet eine bessere Kompression als VP8 und kann etwa 30 bis 50 % effizienter sein als ältere Codecs wie H.264. Das bedeutet, dass weniger Daten übertragen werden müssen, während die gleiche Videoqualität erhalten bleibt.

Verwendungszweck des VP9 Codec

Nahezu alle Videos in 4K-Auflösung werden auf YouTube mit VP9 (oder dem Nachfolger AV1) ausgeliefert.

Netflix verwendet VP9 vor allem für mobiles Streaming auf Android-Geräten, um Datenvolumen zu sparen.

H.264 vs. H.265 vs. AV1: Video-Codec-Vergleich

Merkmal VP8 H.264 (x264) VP9 H.265 (x265) AOM AV1 (libaom) SVT-AV1
Bildqualität Befriedigend Standard (Basis) Gut Sehr gut (+50% vs. H.264) Exzellent (Referenz) Exzellent (Optimiert)
Kodier-Geschwindigkeit Schnell Extrem Schnell Mittel Mittel Sehr Langsam Mittel bis Schnell (Multi-Core)
Effizienz (Dateigröße) Gering Niedrig Hoch Hoch Sehr Hoch Sehr Hoch
Bildqualität pro MB Gering Gering Hoch Hoch Sehr Hoch Sehr Hoch
Hardware-Support Sehr Breit (Legacy) Universal (Alt & Neu) Breit (Web/Android) Sehr Breit Eingeschränkt (Neuere GPUs) Eingeschränkt (Neuere GPUs)
Primärer Fokus Web-Legacy (WebM) Kompatibilität & Live Web-Streaming (YouTube) 4K / HDR / Blu-ray Maximale Kompression Performance & Streaming
Empfehlung Nicht mehr zeitgemäß Für alte Geräte Web-Video Alternativen Für lokale Archivierung Wissenschaftliche Tests Moderne Web-Inhalte
Vollständigen Vergleich anzeigen

Mode

Legt fest ob das Video konvertiert oder kopiert wird.

  • Convert (convert video stream)
  • Copy (copy video stream)
Stream mode: Convert or Copy

Codec

Legt fest welcher Video Codec zum kodieren verwendet wird.

Sprache

Legt die Sprache fest, die beim Abspielen im Player anzeigt wird.

Video stream Sprache

Framerate

Legt die Framerate in Frames pro Sekunde fest.

Level

Die Einstellung „Level“ legt die Grenzwerte für verschiedene Parameter fest, z. B. die maximale Auflösung, die maximale Bitrate und die maximale Anzahl an Kacheln, die beim Codieren verwendet werden können.

Höhere Level erfordern leistungsfähigere Hardware, sowohl für die Codierung als auch für die Decodierung.

VP9 Codec: Level Setting

Tune

Die Tune-Funktion im VP9-Codec optimiert die Codierung hinsichtlich bestimmter Qualitätsmetriken.

  • PSNR: Diese Einstellung zielt darauf ab, den PSNR-Wert zu maximieren.
  • SSIM: Diese Einstellung zielt darauf ab, den SSIM-Wert zu maximieren.
VP9 Codec: Tune setting

Tune centent type

Der Inhaltstyp „Tune“ beeinflusst, wie der Codec das Video verarbeitet und welche Prioritäten beim Codieren gesetzt werden.

  • Standard

    Es werden keine spezifischen Anpassungen für den Inhalt vorgenommen. Dies ist eine allgemeine Einstellung, die für die meisten Videos gut geeignet ist.

  • Bildschirm

    Ist für Bildschirmaufnahmen oder Videos mit Text und feinen Details.

  • Film

    Optimiert den Codec für die Codierung herkömmlicher Videoinhalte.

VP9 Codec: Tune centent type setting

Quality

Beim VP9-Codec legt die Qualitätsfunktion fest, ob Geschwindigkeit oder Qualität Priorität hat.

  • Echtzeit (Schnelle Verarbeitung und geringer Ressourcenverbrauch, jedoch mit etwas geringerer Qualität)
  • Gut (Bessere Qualität als Echtzeit, jedoch mit einem moderaten Geschwindigkeitsverlust)
  • Optimal
VP9 Codec: Quality setting

Min GOP (Group Of Pictures) length

Minimale GOP-Länge, der minimale Abstand zwischen I-Frames.

Keyframe Interval

Dies bestimmt den maximalen Abstand zwischen I-Frames.

Sehr hohe GOP-Längen führen zu einer etwas effizienteren Komprimierung, erschweren aber das Suchen im Video.

CPU Used

Mit dieser Einstellung können Sie festlegen, wie intensiv die CPU für die Videocodierung genutzt wird.

0: Dies ist der niedrigste Wert und bedeutet, dass die Codierung mit höchstmöglicher Qualität und minimalem Ressourcenverbrauch erfolgt. Der Algorithmus nutzt nur wenig Parallelisierung und beansprucht nicht alle CPU-Kerne intensiv. Die Codierung ist langsamer, das Ergebnis jedoch von höchster Qualität.

7 und 8: Diese Werte stellen die höchste Optimierung für Geschwindigkeit dar und maximieren die Nutzung der CPU-Ressourcen. Bei diesen Einstellungen ist die Codierung deutlich schneller, die Qualität kann jedoch merklich beeinträchtigt sein. Diese Werte eignen sich hauptsächlich für Szenarien, in denen Geschwindigkeit wichtiger ist als Qualität, wie z. B. Echtzeit-Streaming oder schnelle Videoverarbeitungsaufgaben.

VP9 Codec: CPU Used setting

Max Number of Frames to Lag

Diese Einstellung beeinflusst, wie viele Frames der Encoder in seinem Look-Ahead-Puffer berücksichtigen kann, um Vorhersagen zu treffen und die optimale Codierung für die komprimierten Frames zu finden.

Bei der Videocodierung ist es üblich, einen Frame nicht nur anhand der Informationen des vorherigen Frames (I-Frames) oder der benachbarten Frames (P-Frames und B-Frames) zu codieren. Der Encoder kann mehrere Frames analysieren, um die beste Codierungsstrategie für zukünftige Frames zu ermitteln.

Durch die Einbeziehung weiterer Frames kann der Encoder effizienter arbeiten, was zu einer höheren Komprimierungsrate ohne Einbußen bei der Bildqualität führt.

VP9 Codec: Max Number of Frames to Lag setting

Display mode

  • Progressiv
  • Interlaced TFF (Top field first)
  • Interlaced BFF (Bottom field first)

Farbmodus

Ermöglicht Ihnen, Änderungen an den Farbeinstellungen vorzunehmen.
Welchen Farbmodus Sie wählen können hängt vom verwendeten Video Codec ab.

Threads

Ermöglicht parallele Codierung durch die Verwendung mehrerer Threads, um die Geschwindigkeit auf Mehrkernsystemen zu erhöhen.

Tile Columns

Durch die Kachelung wird das Video in rechteckige Bereiche unterteilt, was die gleichzeitige Verarbeitung durch mehrere Threads beim Codieren und Decodieren ermöglicht.
Die Anzahl der Kacheln ist immer eine Zweierpotenz. 0 = 1 Kachel, 1 = 2, 2 = 4, 3 = 8, 4 = 16, 5 = 32.

VP9 Codec: Tile Columns setting

Tile Rows

Die Einstellung „Kachelreihen“ bestimmt die Anzahl der vertikalen „Kachelreihen“, in die das Bild unterteilt wird.
Die Anzahl der Kacheln ist immer eine Zweierpotenz: 1, 2, 4, 8, 16, 32.

Je mehr Kachelzeilen Sie auswählen, desto mehr parallele Verarbeitungseinheiten können genutzt werden, was im Allgemeinen die Kodierungsleistung verbessert, insbesondere auf Mehrkernprozessoren.

VP9 Codec: Tile Rows setting

Error Resilience Mode

Bei Echtzeit-Videoanwendungen oder Streaming-Protokollen wie WebRTC oder DASH (Dynamic Adaptive Streaming over HTTP) sorgt die Aktivierung des Fehlertoleranzmodus dafür, dass die Videowiedergabe auch bei gelegentlichem Paketverlust oder Netzwerkjitter fortgesetzt werden kann, wodurch die Zuverlässigkeit unter suboptimalen Netzwerkbedingungen erhöht wird.

Row-Based Multi-Threading

Das zeilenbasierte Multithreading im VP9-Codec ist eine Parallelverarbeitungstechnik für Videoframes, die darauf abzielt, die Effizienz und Geschwindigkeit der Videodekodierung zu erhöhen, indem mehrere Threads gleichzeitig an verschiedenen Teilen eines Frames arbeiten.

Enable Frame Parallel Encode

Die Funktion „Frame-Parallelcodierung aktivieren“ im VP9-Codec ermöglicht die parallele Codierung mehrerer Videoframes und beschleunigt so die Verarbeitung. Dieses Verfahren nutzt Mehrkernprozessoren effizient, verkürzt die Codierungszeit und verbessert die Skalierbarkeit, insbesondere bei der Verarbeitung großer oder hochauflösender Videodaten.

VP9 Codec: Enable Frame Parallel Encode

Verwandte Tutorials


Share