dav2d: decodorul AV2 ultra‑rapid de la VideoLAN

Spread the love

dav2d este noul decodor AV2 creat de VideoLAN, proiectat să fie mic, portabil și extrem de rapid, similar cu dav1d, dar optimizat pentru noul codec AV2. Deși se află într-un stadiu timpuriu de dezvoltare, proiectul promite să devină referința software pentru decodarea AV2 pe toate platformele.

În acest articol analizăm ce este dav2d, ce oferă, cum se compilează și ce planuri are echipa VideoLAN pentru viitor.

Ce este dav2d și de ce contează

dav2d este un decodor AV2 cross‑platform, open‑source, construit pentru viteză și corectitudine. Proiectul este întreținut de VideoLAN și face parte din inițiativa AOMedia pentru standarde media deschise.

AV2 este succesorul AV1, un codec modern orientat spre eficiență ridicată, dar încă fără suport hardware matur. Aici intervine dav2d: oferă un decodor software rapid, care compensează lipsa accelerării hardware.

Notă importantă: dav2d este un proiect foarte timpuriu și nu este recomandat pentru producție, deoarece specificația AV2 nu este încă finalizată.

Caracteristici principale

✔ Performanță maximă

Scopul principal este atingerea cele mai mari viteze posibile pe toate platformele, inclusiv desktop și mobile.

✔ Suport complet AV2

dav2d va suporta toate funcțiile codec‑ului AV2, inclusiv:

  • subeșantionare
  • adâncimi de biți variabile

✔ Portabilitate

Proiectul este scris în C pur + ASM, ceea ce permite portarea pe o gamă largă de arhitecturi.

✔ Licență permisivă BSD 2‑clause

Licența permite integrarea în software open‑source sau proprietar, inclusiv drivere sau soluții hibride.

Foaia de parcurs (Roadmap)

VideoLAN are un plan clar pentru dezvoltarea dav2d:

În curs

  • Implementare completă în C
  • API utilizabil
  • Portare pe majoritatea platformelor

Urmează (optimizări ASM)

  • AVX2 pentru desktop
  • ARMv8 și ARMv7 pentru mobile
  • Optimizări pentru adâncimi mari de biți
  • Suport pentru arhitecturi rare: PPC, SSE2, RISC‑V, AVX‑512
  • Posibilă accelerare GPU

Cum compilezi dav2d

Compilarea este simplă, dar necesită câteva unelte:

Dependențe necesare

  • Meson ≥ 0.49
  • Ninja
  • NASM ≥ 2.14 (pentru x86)

Pași de compilare

  1. mkdir build && cd build
  2. meson setup .. –default-library=static
  3. ninja

Cross‑compiling

Suport pentru:

  • Windows 32/64‑bit
  • Linux 32‑bit

Generarea documentației

Necesită doxygen + graphviz. meson setup .. -Denable_docs=true ninja doc/html

Testare

Pentru testare:

  • Clonezi depozitul dav2d-test-data
  • Activezi testele cu -Dtestdata_tests=true
  • Rulezi meson test -v

Contribuții și comunitate

VideoLAN caută activ:

  • dezvoltatori C
  • dezvoltatori ASM
  • testeri
  • contribuitori la documentație

Comunicarea se face pe IRC, canalul #dav2d de pe Libera.chat.

Nu există CLA — contributorii își păstrează drepturile de autor.

Concluzie

dav2d este un proiect promițător, menit să devină standardul software pentru decodarea AV2. Deși încă în stadiu incipient, roadmap‑ul ambițios și suportul VideoLAN îl transformă într-un proiect de urmărit îndeaproape.

Dacă lucrezi cu video encoding/decoding, AV1, AV2 sau soluții cross‑platform, dav2d merită atenția ta.

Leave a Comment

Adresa ta de email nu va fi publicată. Câmpurile obligatorii sunt marcate cu *

Scroll to Top