Izdaja rav1e 0.3, kodirnika AV1 v Rustu

potekala sprostitev rav1e 0.3, visoko zmogljiv kodirnik formata video kodiranja AV1, ki sta ga razvili skupnosti Xiph in Mozilla. Kodirnik je napisan v Rustu in se od referenčnega kodirnika libaom razlikuje po občutno večji hitrosti kodiranja in večji pozornosti do varnosti. Koda projekta distributer pod licenco BSD.

Podprte so vse glavne funkcije AV1, vključno s podporo
notranje in zunanje kodirane sličice (znotraj- и med-frames), 64x64 superbloki, 4:2:0, 4:2:2 in 4:4:4 chroma podvzorčenje, 8-, 10- in 12-bitno kodiranje barvne globine, RDO (Rate-distortion optimization) optimizacijsko popačenje, različni načini za napovedovanje sprememb med okvirji in prepoznavanje transformacij, nadzor hitrosti pretoka in zaznavanje okrnitve scene.

Opazen je format AV1 presega H.264 in VP9 v smislu zmožnosti stiskanja, vendar zaradi kompleksnosti algoritmov, ki ju izvajajo zahteva znatno več časa za kodiranje (pri hitrosti kodiranja libaom stokrat zaostaja za libvpx-vp9 in tisočkrat za x264).
Kodirnik rav1e ponuja 11 stopenj zmogljivosti, od katerih najvišja zagotavlja hitrosti kodiranja skoraj v realnem času. Kodirnik je na voljo kot pripomoček ukazne vrstice in kot knjižnica.

V novi različici:

  • Predlaga se hitrejši način kodiranja Hitrost 10;
  • Velikost binarnih sklopov je bila zmanjšana (na platformi x86_64/Linux knjižnica zavzame približno 3 MB);
  • Čas sestavljanja zmanjšan za približno 14 %;
  • Dodan večnitni filter za odstranjevanje artefaktov blokov iz videa (deblokiranje);
  • Za arhitekturo x86_64 so bile implementirane dodatne optimizacije z uporabo navodil SIMD in uporaba samodejne vektorizacije je bila razširjena;
  • Število operacij dodeljevanja pomnilnika je bilo zmanjšano za 1/6;
  • V RDO (Rate-distortion optimization) je bila izboljšana logika za zatiranje popačenj znotraj okvira;
  • Nekatere operacije so bile premaknjene z uporabe aritmetike s plavajočo vejico na celoštevilske izračune;
  • Kakovost kodiranja na drugi stopnji hitrosti je bila izboljšana za 1-2 %;
  • Dodano nov filter za predvidevanje smeri gibanja (Intra edge);
  • Dodana možnost "-S" (--switch-frame-interval) za določitev preklopnega intervala med okvirji;
  • Dodana podpora za gradnjo platforme wasm32-wasi (Sistemski vmesnik WebAssembly).

Vir: opennet.ru

Dodaj komentar