Izdanje SVT-AV1 4.3.0, enkodera za AV1 video format

Objavljen je izdanak biblioteke SVT-AV1 4.3.0 (Scalable Video Technology AV1) s implementacijama enkodera i dekodera formata video kodiranja AV1, za čije ubrzanje se koriste prisutne u procesorima x86_64 i ARM proširenja za hardversko paraleliziranje računanja. Projekt je stvoren od strane Intela u partnerstvu s Netflixom s ciljem postizanja razine performansi pogodnih za kodiranje videa u stvarnom vremenu i primjenu u uslugama koje isporučuju video sadržaj na zahtjev (VOD). Trenutno se razvoj odvija pod okriljem saveza Open Media (AOMedia), koji nadgleda razvoj formata video kodiranja AV1. Projekt se prethodno razvijao unutar projekta OpenVisualCloud, koji također razvija enkodere SVT-HEVC i SVT-VP9. Kod se distribuira pod BSD licencom.

SVT-AV1 može se sastaviti za sustave temeljene na bilo kojim arhitekturama za koje postoji kompajler koji podržava standard C99, ali se najbolja izvedba postiže na sustavima x86_64, koji koriste asemblerske optimizacije temeljene na SIMD instrukcijama (preporučena je podrška AVX2 u CPU-u, no kao minimum dovoljna je i SSE2). Potrošnja memorije ovisi o broju procesorskih jezgri uključenih u kodiranje, reguliranim opcijom „—lp“. Zbog složenosti primijenjenih algoritama u AV1, za kodiranje ovog formata potrebno je znatno više resursa nego za druge formate.

Među promjenama u novom izdanju SVT-AV1:

  • Provedena je optimizacija kompromisa između kvalitete i brzine za sve prethodne postavke, što je omogućilo smanjenje opterećenja na CPU za 5-8% uz zadržavanje iste razine kvalitete, kao i smanjenje vremena kodiranja za 10-11% u višedretvenom načinu rada. Ubrzano je izvršavanje operacija isključivanja neefikasnih načina kodiranja (MD — Mode Decision), izračuna vektora kretanja (MV — Motion Vector) i parametara filtara tijekom kodiranja, izračunavanje veličina frekvencijskih koeficijenata, traženje subpikselnih pomaka, kopiranje blokova i uklanjanje suvišne detaljnosti pomoću algoritma RDOQ (Rate-Distortion Optimized Quantization). U višedretvenom načinu rada radi uštede resursa, algoritam za određivanje prikaza sadržaja ekrana sada se primjenjuje samo na I-okvire.
  • Dodana je eksperimentalna zastavica „—fast-decode 3“ za ubrzanje dekodiranja statičnih slika.
  • Dodana je oznaka „—fgs-table“, koja uključuje podršku za tablice zrna (film grain), te API FILM_GRAIN_EVENT za postavljanje parametara zrna vezanih zaokvire.
  • Povećana je brzina kodiranja bez gubitaka.
  • U načinu kodiranja s niskim kašnjenjem implementirano je paraleliziranje obrade blokova (tile).
  • Dodana je opcija „max_allowed_consecutive_frames_skips“ za podešavanje preskakanja okvira u režimu održavanja stalne brzine prijenosa (CBR).
  • Dodana je varijabla „max_hierarchical_levels“ za upravljanje skupom međuspremnika koji se primjenjuje prilikom promjene veličine grupa međuframe (mini-GOP — Group of Pictures).
  • Dodana je opcija za gradnju „—mobile-build“ (u CMake — MOBILE_BUILD) za stvaranje 8-bitne biblioteke za RTC, VOD i AVIF. Dodane su opcije CONFIG_ENABLE_* za isključivanje izgradnje ne korištenih alata za kodiranje.
  • Za x86 sustave implementirani su 8-bitni CDEF obrtnici na temelju AVX2 i SSE4.1 instrukcija, kao i 16-bitne direktne transforacije na temelju AVX2 i AVX-512 instrukcija. Dodan je optimizirani kod za međuframe predikciju, rad s paletama i transformacije uz pomoć SSE4.1 instrukcija. Optimizirani su obrtnici za kvantizaciju, kopiranje blokova, izračun distorzija i procjenu subpikselnih razlika.
  • Za ARM sustave dodane su verzije obrtnika, ubrzane pomoću procesorskih instrukcija Neon.

Izvor: opennet.ru

Kupite pouzdan hosting za web stranice s DDoS zaštitom, VPS VDS servere 🔥 Kupite pouzdan hosting za web stranice s DDoS zaštitom, VPS VDS servere | ProHoster