Release av rav1e 0.3, en AV1-kodare i Rust

tog plats fråga rav1e 0.3, en högpresterande kodare för videokodningsformat AV1, utvecklad av Xiph- och Mozilla-gemenskaperna. Kodaren är skriven i Rust och skiljer sig från referensen libaom-kodaren genom att avsevärt öka kodningshastigheten och ökad uppmärksamhet på säkerhet. Projektkod levererad av under BSD-licensen.

Alla viktiga AV1-funktioner stöds, inklusive support
internt och externt kodade ramar (inom- и bland-frames), 64x64 superblock, 4:2:0, 4:2:2 och 4:4:4 chroma subsampling, 8-, 10- och 12-bitars färgdjupkodning, RDO (Rate-distortion optimization) optimeringsdistorsion, olika lägen för att förutsäga förändringar mellan bildrutorna och identifiera transformationer, kontrollera flödeshastigheten och detektera scenavkortning.

AV1-formatet märks outstrips H.264 och VP9 när det gäller komprimeringsmöjligheter, men på grund av komplexiteten hos algoritmerna som implementerar dem kräver betydligt mer tid för kodning (i kodningshastighet är libaom hundratals gånger efter libvpx-vp9 och tusentals gånger bakom x264).
Rav1e-kodaren erbjuder 11 prestandanivåer, varav den högsta ger nästan realtidskodningshastigheter. Kodaren är tillgänglig både som ett kommandoradsverktyg och som ett bibliotek.

I den nya versionen:

  • Snabbare kodningsläge föreslås Hastighet 10;
  • Storleken på binära sammansättningar har minskat (på x86_64/Linux-plattformen tar biblioteket upp cirka 3 MB);
  • Monteringstiden minskas med cirka 14 %;
  • Tillagt flertrådigt filter för att ta bort blockartefakter från video (avblockering);
  • För x86_64-arkitekturen har ytterligare optimeringar implementerats med SIMD-instruktioner och användningen av autovektorisering har utökats;
  • Antalet minnesallokeringsoperationer har reducerats med 1/6;
  • I RDO (Rate-distortion optimization) har logiken för att undertrycka intra-frame-distortioner förbättrats;
  • Vissa operationer har flyttats från att använda flyttalsaritmetik till heltalsberäkningar;
  • Kodningskvaliteten på den andra hastighetsnivån har förbättrats med 1-2 %;
  • tillsatt nytt filter för förutsägelse av rörelseriktning (Intrakant);
  • Lade till alternativet "-S" (--switch-frame-interval) för att bestämma växlingsintervallet mellan ramar;
  • Lade till byggstöd för wasm32-wasi-plattformen (WebAssembly System Interface).

Källa: opennet.ru

Lägg en kommentar