Izdanje rav1e 0.3, AV1 kodera u Rustu

odvijao izdanje rav1e 0.3, koder formata video kodiranja visokih performansi AV1, razvijen od strane zajednica Xiph i Mozilla. Koder je napisan u Rustu i razlikuje se od referentnog libaom kodera po značajnom povećanju brzine kodiranja i povećanoj pažnji na sigurnost. Šifra projekta distribuira pod BSD licencom.

Podržane su sve glavne značajke AV1, uključujući podršku
interno i eksterno kodirani okviri (intra и između-frames), 64x64 superblokova, 4:2:0, 4:2:2 i 4:4:4 chroma subsampling, 8-, 10- i 12-bitno kodiranje dubine boje, RDO (Rate-distortion optimization) optimizacijsko izobličenje, različiti načini za predviđanje međukadrnih promjena i identificiranje transformacija, kontroliranje brzine protoka i otkrivanje skraćivanja scene.

Primjetan je AV1 format nadmašuje H.264 i VP9 u smislu mogućnosti kompresije, ali zbog složenosti algoritama koji ih implementiraju zahtijeva znatno više vremena za kodiranje (u brzini kodiranja, libaom je stotinama puta iza libvpx-vp9 i tisućama puta iza x264).
Koder rav1e nudi 11 razina performansi, od kojih najveća pruža brzine kodiranja gotovo u stvarnom vremenu. Koder je dostupan i kao uslužni program naredbenog retka i kao biblioteka.

U novoj verziji:

  • Predlaže se brži način kodiranja Brzina 10;
  • Veličina binarnih sklopova je smanjena (na x86_64/Linux platformi biblioteka zauzima oko 3MB);
  • Vrijeme sklapanja smanjeno za približno 14%;
  • Dodan višenitni filtar za uklanjanje blok artefakata iz videa (deblokiranje);
  • Za x86_64 arhitekturu, dodatne optimizacije su implementirane korištenjem SIMD instrukcija i proširena je upotreba automatske vektorizacije;
  • Broj operacija dodjele memorije smanjen je za 1/6;
  • U RDO (Optimizacija izobličenja brzine), poboljšana je logika za potiskivanje izobličenja unutar okvira;
  • Neke su operacije prebačene s korištenja aritmetike s pomičnim zarezom na cjelobrojne izračune;
  • Kvaliteta kodiranja na drugoj razini brzine poboljšana je za 1-2%;
  • Dodano novi filtar za predviđanje smjera kretanja (Intra edge);
  • Dodana opcija "-S" (--switch-frame-interval) za određivanje intervala prebacivanja između okvira;
  • Dodana podrška za izgradnju za platformu wasm32-wasi (Sučelje sustava WebAssembly).

Izvor: opennet.ru

Dodajte komentar