Vydanie SVT-AV1 4.3.0, kódovača pre formát videa AV1

Bol preložený vydanie knižnice SVT-AV1 4.3.0 (Scalable Video Technology AV1) s implementáciami kodéra a dekodéra formátu kódovania videa AV1, pre ktoré sú využité v procesoroch x86_64 a ARM prítomné rozšírenia na hardvérové paralelizovanie výpočtov. Projekt bol vytvorený spoločnosťou Intel v spolupráci s Netflixom s cieľom dosiahnuť úroveň výkonu vhodnú na kódovanie videa v reálnom čase a na aplikácie v službách na vyžiadanie (VOD). V súčasnosti sa vývoj uskutočňuje pod záštitou aliancie Open Media (AOMedia), ktorá dohliada na rozvoj formátu kódovania videa AV1. Predtým sa projekt rozvíjal v rámci projektu OpenVisualCloud, ktorý taktiež vyvíja kodéry SVT-HEVC a SVT-VP9. Kód je šírený pod licenciou BSD.

SVT-AV1 môže byť zostavený pre systémy založené na akýchkoľvek architektúrach, pre ktoré je dostupný kompilátor podporujúci štandard C99, no najlepšiu výkonnosť dosiahnete na systémoch x86_64, kde sú použité assemblerové optimalizácie na základe inštrukcií SIMD (ideálne je, ak CPU podporuje AVX2, ale ako minimum stačí aj SSE2). Spotreba pamäte závisí od počtu procesorových jadier použitých pri kódovaní, regulovaných možnosťou „—lp“. Vzhľadom na zložitosti použitých v AV1 algoritmov, kódovanie tohto formátu si vyžaduje podstatne viac zdrojov ako iné formáty.

Medzi zmenami v novom vydaní SVT-AV1:

  • Bola vykonaná optimalizácia kompromisov kvalita/rýchlosť pre všetky predvoľby, ktorá znížila záťaž na CPU o 5-8% pri zachovaní tej istej úrovne kvality, ako aj skrátila čas kódovania o 10-11% v multithreadovom režime. Urýchlené vykonávanie operácií vylúčenia neefektívnych režimov kódovania (MD — Mode Decision), výpočtu pohybových vektorov (MV — Motion Vector) a parametrov filtrov počas kódovania, výpočtu veľkosti frekvenčných koeficientov, vyhľadávania subpixelových posunov, kopírovania blokov a filtrovania nadbytočných detailov pomocou algoritmu RDOQ (Rate-Distortion Optimized Quantization). V multithreadovom režime je pre úsporu zdrojov algoritmus určenia prekladu obsahu obrazovky teraz aplikovaný len na I-rámce.
  • Bol pridaný experimentálny flag „—fast-decode 3“ na zrýchlenie dekódovania statických obrázkov.
  • Pridaný praporek „—fgs-table“, ktorý obsahuje podporu tabuliek filmovej zrnitosti (film grain), a API FILM_GRAIN_EVENT na nastavenie parametrov zrnitosti viazaných na snímky.
  • Zvýšená rýchlosť kódovania bez straty kvality.
  • V režime kódovania s nízkou latenciou bola implementovaná paralelizácia spracovania blokov (tile).
  • Pridaná možnosť „max_allowed_consecutive_frames_skips“ na prispôsobenie preskočenia snímok v režime udržiavania konštantného bitratu (CBR).
  • Pridaný parameter „max_hierarchical_levels“ na spravovanie zásobníka rámcov použitých pri zmene veľkosti skupín medzi-rámcových snímok (mini-GOP — Group of Pictures).
  • Pridaná stavbová možnosť „—mobile-build“ (v CMake — MOBILE_BUILD) na vytvorenie 8-bitovej knižnice pre RTC, VOD a AVIF. Pridali sa možnosti CONFIG_ENABLE_* na deaktiváciu zostavenia nepoužívaných nástrojov kódovania.
  • Pre systémy x86 sú implementované 8-bitové spracovateľské moduly CDEF založené na pokynoch AVX2 a SSE4.1, ako aj 16-bitové priamé transformácie založené na pokynoch AVX2 a AVX-512. Bol pridaný optimalizovaný kód pomocou pokynov SSE4.1 pre predikciu medzi rámcami, prácu s paletami a transformácie. Optimalizovali sa spracovatelia pre kvantizáciu, kopírovanie blokov, výpočty deformácií a hodnotenie subpixelových rozdielov.
  • Pre systémy ARM boli pridané varianty spracovateľov zrýchlené pomocou procesorových pokynov Neon.

Zdroj: opennet.ru

Kúpte si spoľahlivý hosting pre webové stránky s ochranou proti DDoS, VPS VDS servery 🔥 Kúpte si spoľahlivý hosting pre webové stránky s ochranou proti DDoS, VPS VDS servery | ProHoster