Liberazione di rav1e 0.3, un codificatore AV1 in Rust

hè accadutu liberazione rav1e 0.3, un codificatore di formatu di codificazione video d'altu rendiment AV1, развиваемого сообществами Xiph и Mozilla. Кодировщик написан на языке Rust и отличается от эталонного кодировщика libaom значительным увеличением скорости кодирования и повышенным вниманием к обеспечению безопасности. Код проекта distribuitu da sottu a licenza BSD.

Tutte e funzioni principali AV1 sò supportate, cumpresu u supportu
frames codificati internamente è esternamente (intra- и dimarchja-frames), superblocchi 64x64, 4:2:0, 4:2:2 è 4:4:4 sottocampionamento cromatico, codifica di profondità di colore a 8, 10 e 12 bit, distorsione di ottimizzazione RDO (Ottimizzazione di distorsione di velocità), Diversi modi per predichendu i cambiamenti interframe è identificà e trasfurmazioni, cuntrullà u flussu di flussu è rileva u troncu di scena.

Format AV1 hè notevuli supera H.264 è VP9 in quantu à capacità di cumpressione, ma per via di a cumplessità di l'algoritmi chì l'implementanu hè ubligatoriu significativamente più tempu per a codificazione (in a velocità di codificazione, libaom hè centinaia di volte daretu à libvpx-vp9, è millaie di volte daretu à x264).
L'encoder rav1e offre 11 livelli di prestazione, u più altu di i quali furnisce una velocità di codificazione quasi in tempu reale. L'encoder hè dispunibule cum'è una utilità di linea di cumanda è cum'è una biblioteca.

In a nova versione:

  • Modu di codificazione più veloce prupostu Velocità 10;
  • A dimensione di l'assemblee binari hè stata ridutta (nantu à a piattaforma x86_64 / Linux a biblioteca occupa circa 3MB);
  • U tempu di assemblea ridutta di circa 14%;
  • Aggiuntu filtru multi-threaded per sguassà artefatti di bloccu da u video (deblocking);
  • Per l'architettura x86_64, l'ottimisazioni supplementarii sò stati implementati cù l'istruzzioni SIMD è l'usu di l'auto-vectorizazione hè stata allargata;
  • U nùmeru di operazioni di assignazione di memoria hè stata ridutta da 1/6;
  • In RDO (Rate-distortion optimization), a logica per a suppressione di distorsioni intra-frame hè stata migliurata;
  • Alcune operazioni sò state spustate da l'usu di l'aritmetica in virgule flottante à i calculi interi;
  • A qualità di codificazione à u sicondu livellu di velocità hè stata migliurata da 1-2%;
  • Aggiuntu novu filtru di predizione di direzzione di muvimentu (Intra edge);
  • Aggiunta l'opzione "-S" (--switch-frame-interval) per determinà l'intervallu di cambiamentu trà i frames;
  • Aggiuntu supportu di creazione per a piattaforma wasm32-wasi (Interfaccia di u Sistema WebAssembly).

Source: opennet.ru

Add a comment