Veröffentlichung von Rav1e 0.5, AV1-Encoder

rav1e 0.5.0, der Encoder für das Videokodierungsformat AV1, wurde veröffentlicht. Das Produkt wurde von den Mozilla- und Xiph-Communitys entwickelt und unterscheidet sich von der in C/C++-Sprachen geschriebenen Referenzimplementierung von libaom durch eine höhere Codierungsgeschwindigkeit und ein erhöhtes Augenmerk auf die Sicherheit (die Komprimierungseffizienz bleibt immer noch zurück). Das Produkt ist in der Programmiersprache Rust mit Assembler-Optimierungen geschrieben (72.2 % – Assembler, 27.5 % – Rust), der Code wird unter der BSD-Lizenz vertrieben. Fertige Builds werden für Windows und macOS vorbereitet (Builds für Linux werden aufgrund von Problemen mit dem kontinuierlichen Integrationssystem vorübergehend weggelassen).

rav1e unterstützt alle wichtigen AV1-Funktionen, einschließlich der Unterstützung für Intra- und Inter-Frames (Intra- und Inter-Frames), 64x64-Superblöcke, 4:2:0, 4:2:2 und 4:4:4 Chroma-Unterabtastung, 8 -, 10- und 12-Bit-Farbtiefenkodierung, RDO-Verzerrungsoptimierung (Rate-Distortion Optimization), verschiedene Modi der Inter-Frame-Änderungsvorhersage und Transformationserkennung, Bitratensteuerung und Erkennung von Szenenkürzungen.

Das AV1-Format liegt in Bezug auf die Komprimierungsfähigkeiten deutlich vor H.264 und VP9, ​​aufgrund der Komplexität der Algorithmen, die sie implementieren, dauert die Kodierung jedoch deutlich länger (in Bezug auf die Kodierungsgeschwindigkeit hinkt libaom hunderte Male hinterher). libvpx-vp9 und tausende Male hinter x264). Der Rav1e-Encoder bietet 11 Leistungsstufen, von denen die höchste Ihnen Geschwindigkeiten nahe der Echtzeitkodierung ermöglicht. Der Encoder ist sowohl als Befehlszeilenprogramm als auch als Bibliothek verfügbar.

Die neue Version enthält folgende Änderungen:

  • Deutliche Beschleunigung des Codecs;
    Veröffentlichung von Rav1e 0.5, AV1-Encoder
  • Behebung eines Fehlers, der dazu führte, dass der Encoder bei bestimmten Videogrößen abstürzte;
  • Verwendung von AVX2-Anweisungen für eine erhebliche (bis zu 13-fache) Beschleunigung der Wiener-Schätzung für 16 Bit pro Kanal. Ebenso wurde die Verwendung von SIMD-Anweisungen hinzugefügt, die es ermöglichten, Berechnungen unter ähnlichen Bedingungen um das Siebenfache zu beschleunigen;
  • Tonnenweise kleinere Korrekturen und Optimierungen für x86-, arm32- und arm64-Plattformen.

Source: opennet.ru

Kommentar hinzufügen