Π‘ΠΈΡΡΠ΅ΠΌΠΈΡΠ΅ VideoLAN ΠΈ FFmpeg ΠΏΡΠ±Π»ΠΈΠΊΡΠ²Π°Ρ Π° Π²Π΅ΡΡΠΈΡ Π½Π° Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠ°ΡΠ° dav1d 1.0.0 Ρ Π²Π½Π΅Π΄ΡΡΠ²Π°Π½Π΅ΡΠΎ Π½Π° Π°Π»ΡΠ΅ΡΠ½Π°ΡΠΈΠ²Π΅Π½ Π±Π΅Π·ΠΏΠ»Π°ΡΠ΅Π½ Π΄Π΅ΠΊΠΎΠ΄Π΅Ρ Π·Π° AV1 Π²ΠΈΠ΄Π΅ΠΎ ΡΠΎΡΠΌΠ°Ρ. ΠΡΠΎΠ΅ΠΊΡΡΡ Π΅ Π½Π°ΠΏΠΈΡΠ°Π½ Π½Π° Π΅Π·ΠΈΠΊΠ° C (C99) Ρ Π°ΡΠ΅ΠΌΠ±Π»Π΅ΡΠ½ΠΈ Π²Π³ΡΠ°ΠΆΠ΄Π°Π½ΠΈΡ (NASM/GAS) ΠΈ ΡΠ΅ ΡΠ°Π·ΠΏΡΠΎΡΡΡΠ°Π½ΡΠ²Π° ΠΏΠΎΠ΄ Π»ΠΈΡΠ΅Π½Π· BSD. ΠΠΎΠ΄Π΄ΡΡΠΆΠ°Ρ ΡΠ΅ Π°ΡΡ ΠΈΡΠ΅ΠΊΡΡΡΠΈ x86, x86_64, ARMv7 ΠΈ ARMv8, Π° ΠΏΠ»Π°ΡΡΠΎΡΠΌΠΈΡΠ΅ ΡΠ° FreeBSD, Linux, Windows, macOS, Android ΠΈ iOS.
ΠΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠ°ΡΠ° dav1d ΠΏΠΎΠ΄Π΄ΡΡΠΆΠ° Π²ΡΠΈΡΠΊΠΈ ΡΡΠ½ΠΊΡΠΈΠΈ Π½Π° AV1, Π²ΠΊΠ»ΡΡΠΈΡΠ΅Π»Π½ΠΎ ΡΠ°Π·ΡΠΈΡΠ΅Π½ΠΈ ΡΠΈΠΏΠΎΠ²Π΅ ΡΡΠ±Π΄ΠΈΡΠΊΡΠ΅ΡΠΈΠ·Π°ΡΠΈΡ ΠΈ Π²ΡΠΈΡΠΊΠΈ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠΈ Π·Π° ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ Π½Π° Π΄ΡΠ»Π±ΠΎΡΠΈΠ½Π°ΡΠ° Π½Π° ΡΠ²Π΅ΡΠ°, ΠΏΠΎΡΠΎΡΠ΅Π½ΠΈ Π² ΡΠΏΠ΅ΡΠΈΡΠΈΠΊΠ°ΡΠΈΡΡΠ° (8, 10 ΠΈ 12 Π±ΠΈΡΠ°). Π Π°Π±ΠΎΡΠ°ΡΠ° Π½Π° Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠ°ΡΠ° Π±Π΅ΡΠ΅ ΡΠ΅ΡΡΠ²Π°Π½Π° Ρ Π³ΠΎΠ»ΡΠΌΠ° ΠΊΠΎΠ»Π΅ΠΊΡΠΈΡΠ° ΠΎΡ ΡΠ°ΠΉΠ»ΠΎΠ²Π΅ ΡΠΎΡΠΌΠ°ΡΠΈΡΠ°Π½ΠΈ ΠΊΠ°ΡΠΎ AV1. ΠΠ»ΡΡΠΎΠ²Π° Ρ Π°ΡΠ°ΠΊΡΠ΅ΡΠΈΡΡΠΈΠΊΠ° Π½Π° dav1d Π΅ ΠΎΡΠΈΠ΅Π½ΡΠ°ΡΠΈΡΡΠ° Π²ΡΡΡ Ρ ΠΏΠΎΡΡΠΈΠ³Π°Π½Π΅ΡΠΎ Π½Π° ΠΌΠ°ΠΊΡΠΈΠΌΠ°Π»Π½Π° ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»Π½ΠΎΡΡ Π½Π° Π΄Π΅ΠΊΠΎΠ΄ΠΈΡΠ°Π½Π΅ΡΠΎ ΠΈ ΠΎΡΠΈΠ³ΡΡΡΠ²Π°Π½Π΅ Π½Π° ΠΊΠ°ΡΠ΅ΡΡΠ²Π΅Π½ΠΎ ΠΏΠΎΠ²Π΅Π΄Π΅Π½ΠΈΠ΅ ΠΏΡΠΈ ΠΌΠ½ΠΎΠ³ΠΎΠΏΠΎΡΠΎΡΠ½Π° ΡΠ°Π±ΠΎΡΠ°.
Π Π½ΠΎΠ²Π°ΡΠ° Π²Π΅ΡΡΠΈΡ:
- Π Π΅ΠΎΡΠ³Π°Π½ΠΈΠ·ΠΈΡΠ°Π½Π° Π΅ ΠΌΠ½ΠΎΠ³ΠΎΠΏΠΎΡΠΎΡΠ½ΠΎΡΡΡΠ°, Π²ΠΊΠ»ΡΡΠΈΡΠ΅Π»Π½ΠΎ Π²Π½Π΅Π΄ΡΡΠ²Π°Π½Π΅ Π½Π° Π°Π²ΡΠΎΠΌΠ°ΡΠΈΡΠ½ΠΎ ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ Π½Π° ΠΏΠΎΡΠΎΠΊΠΎΠ²Π΅ΡΠ΅.
- ΠΠΎΠ±Π°Π²Π΅Π½Π° Π΅ Π²ΡΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡΠ° Π·Π° ΡΡΠΊΠΎΡΡΠ²Π°Π½Π΅ Π½Π° ΠΈΠ·ΡΠΈΡΠ»Π΅Π½ΠΈΡΡΠ° Ρ ΠΏΠΎΠΌΠΎΡΡΠ° Π½Π° Π²Π΅ΠΊΡΠΎΡΠ½ΠΈ ΠΈΠ½ΡΡΡΡΠΊΡΠΈΠΈ AVX-512. ΠΠΎΠ΄ΠΎΠ±ΡΠ΅Π½ΠΈ ΡΠ° ΠΏΡΠ΅Π΄Ρ ΠΎΠ΄Π½ΠΎ Π΄ΠΎΠ±Π°Π²Π΅Π½ΠΈΡΠ΅ ΠΎΠΏΡΠΈΠΌΠΈΠ·Π°ΡΠΈΠΈ Π½Π° Π±Π°Π·Π°ΡΠ° Π½Π° ΠΈΠ½ΡΡΡΡΠΊΡΠΈΠΈΡΠ΅ SSE2 ΠΈ AVX2.
- ΠΡΠ΅Π΄Π»ΠΎΠΆΠ΅Π½ Π΅ Π½ΠΎΠ² API Π·Π° ΠΎΠΏΡΠΎΡΡΡΠ²Π°Π½Π΅ Π½Π° Π°Π½Π³Π°ΠΆΠΈΡΠ°Π½Π΅ΡΠΎ Π½Π° GPU Π·Π° ΡΡΠΊΠΎΡΠ΅Π½ΠΈΠ΅.
- ΠΠΎΠ±Π°Π²Π΅Π½ Π΅ API Π·Π° ΠΏΠΎΠ»ΡΡΠ°Π²Π°Π½Π΅ Π½Π° ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ Π·Π° ΠΊΠ°Π΄ΡΠΈ, Ρ ΠΊΠΎΠΈΡΠΎ Π΅ ΠΈΠΌΠ°Π»ΠΎ ΠΏΡΠΎΠ±Π»Π΅ΠΌΠΈ ΠΏΡΠΈ Π΄Π΅ΠΊΠΎΠ΄ΠΈΡΠ°Π½Π΅ΡΠΎ.
ΠΠ° ΠΏΡΠΈΠΏΠΎΠΌΠ½ΠΈΠΌ, ΡΠ΅ Π²ΠΈΠ΄Π΅ΠΎ ΠΊΠΎΠ΄Π΅ΠΊΠ° AV1 Π΅ ΠΏΡΠΎΠ΅ΠΊΡΠΈΡΠ°Π½ ΠΎΡ Π°Π»ΠΈΠ°Π½ΡΠ° Open Media (AOMedia), Π² ΠΊΠΎΠΉΡΠΎ ΡΠ° Π²ΠΊΠ»ΡΡΠ΅Π½ΠΈ ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΠΈ ΠΊΠ°ΡΠΎ Mozilla, Google, Microsoft, Intel, ARM, NVIDIA, IBM, Cisco, Amazon, Netflix, AMD, VideoLAN, Apple, CCN ΠΈ Realtek. AV1 Π΅ ΠΏΠΎΠ·ΠΈΡΠΈΠΎΠ½ΠΈΡΠ°Π½ ΠΊΠ°ΡΠΎ ΠΎΠ±ΡΠ΅ΡΡΠ²Π΅Π½ΠΎ Π΄ΠΎΡΡΡΠΏΠ΅Π½ ΠΈ Π±Π΅Π·ΠΏΠ»Π°ΡΠ΅Π½ Π²ΠΈΠ΄Π΅ΠΎ ΠΊΠΎΠ΄ΠΈΡΠΎΠ²ΡΡΠ΅Π½ ΡΠΎΡΠΌΠ°Ρ, ΠΊΠΎΠΉΡΠΎ Π·Π½Π°ΡΠΈΡΠ΅Π»Π½ΠΎ ΠΈΠ·ΠΏΡΠ΅Π²Π°ΡΠ²Π° H.264, H.265 (HEVC) ΠΈ VP9 ΠΏΠΎ Π½ΠΈΠ²ΠΎ Π½Π° ΠΊΠΎΠΌΠΏΡΠ΅ΡΠΈΡ. ΠΠ° ΡΠ΅Π»ΠΈΡ ΡΠ΅ΡΡΠ²Π°Π½ Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½ Π½Π° ΡΠ°Π·ΡΠ΅ΡΠ΅Π½ΠΈΡ, AV1 ΠΎΡΠΈΠ³ΡΡΡΠ²Π° ΡΡΡΠΎΡΠΎ ΠΊΠ°ΡΠ΅ΡΡΠ²ΠΎ ΠΏΡΠΈ Π½Π°ΠΌΠ°Π»ΡΠ²Π°Π½Π΅ Π½Π° Π±ΠΈΡΡΠ΅ΠΉΡΠ° Ρ 13% Π² ΡΡΠ°Π²Π½Π΅Π½ΠΈΠ΅ Ρ VP9 ΠΈ Ρ 17% Π² ΡΡΠ°Π²Π½Π΅Π½ΠΈΠ΅ Ρ HEVC. ΠΡΠΈ Π²ΠΈΡΠΎΠΊΠΈ Π±ΠΈΡΡΠ΅ΠΉΡΠΈ ΠΏΠ΅ΡΠ°Π»Π±ΠΈΡΠ΅ Π½Π°ΡΠ°ΡΡΠ²Π°Ρ Π΄ΠΎ 22-27% Π·Π° VP9 ΠΈ Π΄ΠΎ 30-43% Π·Π° HEVC. Π ΡΠ΅ΡΡΠΎΠ²Π΅ΡΠ΅ Π½Π° Facebook, AV1 Π½Π°Π΄ΠΌΠΈΠ½Π°Π²Π° ΠΏΠΎ Π½ΠΈΠ²ΠΎ Π½Π° ΠΊΠΎΠΌΠΏΡΠ΅ΡΠΈΡ main profile H.264 (x264) Ρ 50.3%, high profile H.264 Ρ 46.2%, Π° VP9 (libvpx-vp9) Ρ 34%.
ΠΠ·ΡΠΎΡΠ½ΠΈΠΊ: opennet.ru
