ΠΠ°Π΅Π΄Π½ΠΈΡΠΈΡΠ΅ 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 Π·Π° Π΄Π° ΡΠ΅ ΠΎΠ»Π΅ΡΠ½ΠΈ ΠΊΠΎΡΠΈΡΡΠ΅ΡΠ΅ΡΠΎ Π³ΡΠ°ΡΠΈΡΠΊΠΈ ΠΏΡΠΎΡΠ΅ΡΠΎΡΠΈ Π·Π° Π·Π°Π±ΡΠ·ΡΠ²Π°ΡΠ΅.
- ΠΠΎΠ΄Π°Π΄Π΅Π½ΠΎ Π΅ API Π·Π° Π΄Π° ΡΠ΅ Π΄ΠΎΠ±ΠΈΡΠ°Ρ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΠΈ Π·Π° ΡΠ°ΠΌΠΊΠΈ ΠΊΠΎΠΈ ΠΈΠΌΠ°Π°Ρ ΠΏΡΠΎΠ±Π»Π΅ΠΌΠΈ ΡΠΎ Π΄Π΅ΠΊΠΎΠ΄ΠΈΡΠ°ΡΠ΅ΡΠΎ.
ΠΠ° ΠΏΠΎΡΡΠ΅ΡΠΈΠΌΠ΅ Π΄Π΅ΠΊΠ° Π²ΠΈΠ΄Π΅ΠΎ ΠΊΠΎΠ΄Π΅ΠΊΠΎΡ AV1 Π΅ ΡΠ°Π·Π²ΠΈΠ΅Π½ ΠΎΠ΄ Open Media Alliance (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 Π³ΠΎ Π½Π°Π΄ΠΌΠΈΠ½Π° Π³Π»Π°Π²Π½ΠΈΠΎΡ ΠΏΡΠΎΡΠΈΠ» H.264 (x264) Π·Π° 50.3%, Π²ΠΈΡΠΎΠΊ ΠΏΡΠΎΡΠΈΠ» H.264 Π·Π° 46.2%, ΠΈ VP9 (libvpx-vp9) Π·Π° 34%.
ΠΠ·Π²ΠΎΡ: opennet.ru