Avaldatud on SVT-AV1 2.0 (Skaleeritav Video Teknoloogia AV1) raamatukogu versioon koos videokodeerimise ja dekodeerimise rakendustega AV1 formaadi jaoks, mille kiirus on suurendatud, kasutades kaasaegsete Intel CPU-de riistvaralist paralleelitööd. Projekti on loonud Intel koostöös Netflixiga eesmärgiga saavutada jõudlust, mis sobib videote reenkodeerimiseks reaalajas ja kasutamiseks nõudepõhistes videoteenustes (VOD). Hetkel toimub arendus Open Media liidu (AOMedia) juhtimisel, mis toetab AV1 videokodeerimise formaadi arendust. Varasemalt arenes projekt OpenVisualCloudi raames, mis arendab ka SVT-HEVC ja SVT-VP9 kodeerijaid. Kood on levitatud BSD litsentsi alusel.
SVT-AV1 saab konfigureerida igasugustele süsteemidele, millel on C99 standardit toetav kompilaator, kuid parim jõudlus saavutatakse x86_64 süsteemides, kus kasutatakse assembleri optimeeringuid SIMD käskude põhjal (soovitatav on CPU AVX2 toe olemasolu, kuid minimaalne nõue on SS2). Mälu tarbimine sõltub kodeerimisel kasutatavates protsessorituumadest, mida reguleeritakse valikuga "—lp". AV1 algoritmide keerukuse tõttu nõuab selle formaadi kodeerimine tunduvalt rohkem ressursse kui teised formaadid, mis ei võimalda kasutada standardset AV1 kodeerijat reaalajas uuesti kodeerimiseks. Näiteks nõuab standardne kodeerija AV1 projektist 5721, 5869 ja 658 korda rohkem arvutuste tegemist võrreldes x264 ("main" profiil), x264 ("high" profiil) ja libvpx-vp9 kodeerijatega.
Uues SVT-AV1 väljaandes on mitmeid muudatusi:
- On toimunud üleminek uuele versiooninumbritele, kus esimene number versioonis muutub iga kord, kui API/ABI-d muudetakse.
- API-s on tehtud muudatusi, mis on seotud voolu lõpetamise indikatsiooni (EOS – End Of Stream) üleminekuga viimasel kaadril, selle asemel et kasutada tühja kaadrit, mis välistab tarbetu kaadri ootamise viivituse. API muudatused on juba peegeldatud FFmpeg koodibaasis.
- Kolme läbimisega muutuva bitikiiruserežiim (3-pass VBR) on kõrvaldatud ning selle asemel kasutatakse nüüd mitme läbimisega VBR mehhanismi. Mitme läbimisega VBR-režiim on vähendatud kaheks läbimiseks, et tagada integreerimine FFmpegiga.
- Kodeerijasse on lisatud optimeerimisi, mille tõttu on M9-M13 presetide kokkusurumise efektiivsus paranenenud 1-4%, ning M5 preseti mälu tarbimine on vähenenud 20-35% LP 8 režiimis ja 1-5% teistes režiimides. Muude presetide mälu tarbimine on vähenenud 1-5%.
- Optimeeritud on kvaliteedi/kiirusüülesande kompromisse presetide puhul, mis seavad kõrge kvaliteedi taseme. MR preset, mis pakub referenciaalse kvaliteedi, töötleb nüüd kiiremini 100%.
- Ainult C keeles kirjutatud funktsioonidesse on lisatud ARM-architecture spetsiifilisi optimeerimisi.
Lisaks võib mainida projekti dav1d 1.4.1 käivitamist, mille raames arendavad VideoLAN ja FFmpeg kogukonnad AV1 video kodeerimise vormingu alternatiivse vabade dekooderite teeki. Teek dav1d toetab kõiki AV1 võimalusi, sealhulgas laiendatud alamsubdiskreerimise vorme ja kõiki spetsifikatsioonis määratud värvisügavuse juhtimise parameetreid (8, 10 ja 12 bitti). Dav1di peamine omadus on suunatus maksimaalse dekodeerimise jõudluse saavutamisele ning kvaliteetse töö tagamisele mitme tööprotsessi režiimis. Projekti kood on kirjutatud C (C99) programmeerimiskeeles koos assembleri sisestustega (NASM/GAS) ja see levitatakse BSD litsentsi alusel. Toetatakse arhitektuure x86, x86_64, ARMv7 ja ARMv8 ning operatsioonisüsteeme FreeBSD, Linux, Windows, macOS, Android ja iOS.
dav1d 1.4 versioon on märkimisväärne uute Loongarch ja RISC-V arhitektuuride toetamise ning AVX-512 instruktsioonide põhjaliku optimeerimise rakendamise poolest. See pakub kiirusetõusu 6tap filtrite töötlusele ARM süsteemides, parandab mitme lõime efektiivsust ning vähendab binaarsete andmete mahtu ARM64, ARM32 ja RISC-V süsteemides. On kõrvaldatud haavatavus CVE-2024-1580, mis põhjustas mälu piire ületavat kirjutamist, kui tööteldi väga suurte kadreid.
Allikas: opennet.ru
