dav1d рдЪреЗ рддрд┐рд╕рд░реЗ рдкреНрд░рдХрд╛рд╢рди, VideoLAN рдЖрдгрд┐ FFmpeg рдкреНрд░рдХрд▓реНрдкрд╛рдВрдордзреВрди AV1 рдбрд┐рдХреЛрдбрд░

VideoLAN рдЖрдгрд┐ FFmpeg рд╕рдореБрджрд╛рдп рдкреНрд░рдХрд╛рд╢рд┐рдд рдкрд░реНрдпрд╛рдпреА рдореЛрдлрдд рд╡реНрд╣рд┐рдбрд┐рдУ рдПрдиреНрдХреЛрдбрд┐рдВрдЧ рдлреЙрд░рдореЕрдЯ рдбреАрдХреЛрдбрд░рдЪреНрдпрд╛ рдЕрдВрдорд▓рдмрдЬрд╛рд╡рдгреАрд╕рд╣ dav0.3d рд▓рд╛рдпрдмреНрд░рд░реАрдЪреЗ рддрд┐рд╕рд░реЗ рдкреНрд░рдХрд╛рд╢рди (1) AV1. рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдХреЛрдб C рднрд╛рд╖реЗрдд (C99) рдЕрд╕реЗрдВрдмрд▓рд░ рдЗрдиреНрд╕рд░реНрдЯрд╕рд╣ (NASM/GAS) рд▓рд┐рд╣рд┐рд▓реЗрд▓рд╛ рдЖрд╣реЗ рдЖрдгрд┐ рджреНрд╡рд╛рд░рд╛ рд╡рд┐рддрд░рд┐рдд BSD рдкрд░рд╡рд╛рдиреНрдпрд╛ рдЕрдВрддрд░реНрдЧрдд. x86, x86_64, ARMv7 рдЖрдгрд┐ ARMv8 рдЖрд░реНрдХрд┐рдЯреЗрдХреНрдЪрд░реНрд╕ рдЖрдгрд┐ Linux, Windows, macOS, Android рдЖрдгрд┐ iOS рдСрдкрд░реЗрдЯрд┐рдВрдЧ рд╕рд┐рд╕реНрдЯрдорд╕рд╛рдареА рд╕рдорд░реНрдерди рд▓рд╛рдЧреВ рдХреЗрд▓реЗ рдЖрд╣реЗ.

dav1d рд▓рд╛рдпрдмреНрд░рд░реА рдкреНрд░рдЧрдд рджреГрд╢реНрдпрд╛рдВрд╕рд╣ рд╕рд░реНрд╡ AV1 рд╡реИрд╢рд┐рд╖реНрдЯреНрдпрд╛рдВрдирд╛ рд╕рдорд░реНрдерди рджреЗрддреЗ subsampling рдЖрдгрд┐ рд╕реНрдкреЗрд╕рд┐рдлрд┐рдХреЗрд╢рдирдордзреНрдпреЗ рдирдореВрдж рдХреЗрд▓реЗрд▓реЗ рд╕рд░реНрд╡ рдХрд▓рд░ рдбреЗрдкреНрде рдХрдВрдЯреНрд░реЛрд▓ рдкреЕрд░рд╛рдореАрдЯрд░реНрд╕ (8, 10 рдЖрдгрд┐ 12 рдмрд┐рдЯ). рд▓рд╛рдпрдмреНрд░рд░реАрдЪреА рдЪрд╛рдЪрдгреА AV1 рдлреЙрд░рдореЕрдЯрдордзреАрд▓ рдлрд╛рдЗрд▓реНрд╕рдЪреНрдпрд╛ рдореЛрдареНрдпрд╛ рд╕рдВрдЧреНрд░рд╣рд╛рд╡рд░ рдХреЗрд▓реА рдЧреЗрд▓реА рдЖрд╣реЗ. dav1d рдЪреЗ рдореБрдЦреНрдп рд╡реИрд╢рд┐рд╖реНрдареНрдп рдореНрд╣рдгрдЬреЗ рдЬрд╛рд╕реНрддреАрдд рдЬрд╛рд╕реНрдд рд╕рдВрднрд╛рд╡реНрдп рдбреАрдХреЛрдбрд┐рдВрдЧ рдХрд╛рд░реНрдпрдкреНрд░рджрд░реНрд╢рди рд╕рд╛рдзреНрдп рдХрд░рдгреЗ рдЖрдгрд┐ рдорд▓реНрдЯреА-рдереНрд░реЗрдбреЗрдб рдореЛрдбрдордзреНрдпреЗ рдЙрдЪреНрдЪ-рдЧреБрдгрд╡рддреНрддреЗрдЪреЗ рдХрд╛рд░реНрдп рд╕реБрдирд┐рд╢реНрдЪрд┐рдд рдХрд░рдгреЗ рдпрд╛рд╡рд░ рд▓рдХреНрд╖ рдХреЗрдВрджреНрд░рд┐рдд рдХрд░рдгреЗ.

рдирд╡реАрди рдЖрд╡реГрддреНрддреА SSSE3, SSE4.1 рдЖрдгрд┐ AVX2 рд╕реВрдЪрдирд╛ рд╡рд╛рдкрд░реВрди рд╡реНрд╣рд┐рдбрд┐рдУ рдбреАрдХреЛрдбрд┐рдВрдЧрд▓рд╛ рдЧрддреА рджреЗрдгреНрдпрд╛рд╕рд╛рдареА рдЕрддрд┐рд░рд┐рдХреНрдд рдСрдкреНрдЯрд┐рдорд╛рдпрдЭреЗрд╢рди рдЬреЛрдбрддреЗ. SSSE3 рд╕рд╣ рдкреНрд░реЛрд╕реЗрд╕рд░рд╡рд░реАрд▓ рдбреАрдХреЛрдбрд┐рдВрдЧ рдЧрддреА 24% рдЖрдгрд┐ AVX2 рд╕рд╣ рдкреНрд░рдгрд╛рд▓реАрдВрд╡рд░ 4% рдиреЗ рд╡рд╛рдврд▓реА. SSE4.1 рдирд┐рд░реНрджреЗрд╢рд╛рдВрдЪрд╛ рд╡рд╛рдкрд░ рдХрд░реВрди рдкреНрд░рд╡реЗрдЧрд╛рд╕рд╛рдареА рдЕрд╕реЗрдВрдмрд▓реА рдХреЛрдб рдЬреЛрдбрд▓рд╛, рдЬреНрдпрд╛рдЪреНрдпрд╛ рд╡рд╛рдкрд░рд╛рдиреЗ рдиреЙрди-рдСрдкреНрдЯрд┐рдорд╛рдЗрдЭ рдХреЗрд▓реЗрд▓реНрдпрд╛ рдЖрд╡реГрддреНрддреАрдЪреНрдпрд╛ рддреБрд▓рдиреЗрдд рдХрд╛рд░реНрдпрдХреНрд╖рдорддрд╛ 26% рд╡рд╛рдврд▓реА (SSSE3 рд╕реВрдЪрдирд╛рдВрд╡рд░ рдЖрдзрд╛рд░рд┐рдд рдСрдкреНрдЯрд┐рдорд╛рдпрдЭреЗрд╢рдирдЪреНрдпрд╛ рддреБрд▓рдиреЗрдд, рдлрд╛рдпрджрд╛ 1.5% рдЖрд╣реЗ).

dav1d рдЪреЗ рддрд┐рд╕рд░реЗ рдкреНрд░рдХрд╛рд╢рди, VideoLAN рдЖрдгрд┐ FFmpeg рдкреНрд░рдХрд▓реНрдкрд╛рдВрдордзреВрди AV1 рдбрд┐рдХреЛрдбрд░

ARM64 рдЖрд░реНрдХрд┐рдЯреЗрдХреНрдЪрд░рд╡рд░ рдЖрдзрд╛рд░рд┐рдд рдкреНрд░реЛрд╕реЗрд╕рд░рд╕рд╣ рдореЛрдмрд╛рдЗрд▓ рдбрд┐рд╡реНрд╣рд╛рдЗрд╕реЗрд╕рд╡рд░реАрд▓ рдбреАрдХреЛрдбрд░ рдХрд╛рд░реНрдпрдкреНрд░рджрд░реНрд╢рди рджреЗрдЦреАрд▓ рд╡рд╛рдврд╡рд┐рд▓реЗ рдЧреЗрд▓реЗ рдЖрд╣реЗ. NEON рд╕реВрдЪрдирд╛ рд╡рд╛рдкрд░реВрди рдСрдкрд░реЗрд╢рдиреНрд╕ рдЕрдВрдорд▓рд╛рдд рдЖрдгреВрди, рдорд╛рдЧреАрд▓ рдкреНрд░рдХрд╛рд╢рдирд╛рдЪреНрдпрд╛ рддреБрд▓рдиреЗрдд рдХрд╛рд░реНрдпрдкреНрд░рджрд░реНрд╢рди рдЕрдВрджрд╛рдЬреЗ 12% рд╡рд╛рдврд▓реЗ рдЖрд╣реЗ.

dav1d рдЪреЗ рддрд┐рд╕рд░реЗ рдкреНрд░рдХрд╛рд╢рди, VideoLAN рдЖрдгрд┐ FFmpeg рдкреНрд░рдХрд▓реНрдкрд╛рдВрдордзреВрди AV1 рдбрд┐рдХреЛрдбрд░

рд╕рдВрджрд░реНрдн рдбреАрдХреЛрдбрд░ aomdec (libaom) рдЪреНрдпрд╛ рддреБрд▓рдиреЗрдд, рдорд▓реНрдЯреА-рдереНрд░реЗрдбреЗрдб рдореЛрдбрдордзреНрдпреЗ рдХрд╛рдо рдХрд░рддрд╛рдирд╛ dav1d рдЪрд╛ рдлрд╛рдпрджрд╛ рд╕рд░реНрд╡рд╛рдд рдЬрд╛рд╕реНрдд рдЬрд╛рдгрд╡рддреЛ (рдХрд╛рд╣реА рдЪрд╛рдЪрдгреНрдпрд╛рдВрдордзреНрдпреЗ dav1d 2-4 рдкрдЯ рд╡реЗрдЧрд╡рд╛рди рдЖрд╣реЗ). рд╕рд┐рдВрдЧрд▓-рдереНрд░реЗрдбреЗрдб рдореЛрдбрдордзреНрдпреЗ, рдХрд╛рд░реНрдпрдкреНрд░рджрд░реНрд╢рди 10-20% рдиреЗ рднрд┐рдиреНрди рдЕрд╕рддреЗ.

dav1d рдЪреЗ рддрд┐рд╕рд░реЗ рдкреНрд░рдХрд╛рд╢рди, VideoLAN рдЖрдгрд┐ FFmpeg рдкреНрд░рдХрд▓реНрдкрд╛рдВрдордзреВрди AV1 рдбрд┐рдХреЛрдбрд░

dav1d рдЪреЗ рддрд┐рд╕рд░реЗ рдкреНрд░рдХрд╛рд╢рди, VideoLAN рдЖрдгрд┐ FFmpeg рдкреНрд░рдХрд▓реНрдкрд╛рдВрдордзреВрди AV1 рдбрд┐рдХреЛрдбрд░

рдЗрддрд░ рдкреНрд░рдХрд▓реНрдкрд╛рдВрдордзреНрдпреЗ dav1d рд╡рд╛рдкрд░рдгреНрдпрд╛рдд рдпрд╢ рдЖрд▓реЗ рдЖрд╣реЗ. рдбреАрдлреЙрд▓реНрдЯ рдЖрддрд╛ dav1d рдЖрд╣реЗ рд▓рд╛рдЧреВ Chromium/Chrome 74 рдЖрдгрд┐ Firefox 67 рдордзреНрдпреЗ (рдкреВрд░реНрд╡реА dav1d рд╣реЛрддрд╛ рд╕рдорд╛рд╡рд┐рд╖реНрдЯ рд╡рд┐рдВрдбреЛрдЬрд╕рд╛рдареА, рдкрдг рдЖрддрд╛ рд╕рдХреНрд░рд┐рдп рдХреЗрд▓реЗ Linux рдЖрдгрд┐ macOS рд╕рд╛рдареА). FFmpeg рдЖрдгрд┐ VLC рдордзреНрдпреЗ dav1d рдЪрд╛ рд╕рддрдд рд╡рд╛рдкрд░, dav1d рдЯреНрд░рд╛рдиреНрд╕рдХреЛрдбрд░рд╡рд░ рдирд┐рдпреЛрдЬрд┐рдд рд╕рдВрдХреНрд░рдордг рд╣рдБрдбрдмреНрд░реЕрдХ.

рд╡реНрд╣рд┐рдбрд┐рдУ рдХреЛрдбреЗрдХ рд▓рдХреНрд╖рд╛рдд рдареЗрд╡рд╛ AV1 рдпреБрддреАрдиреЗ рд╡рд┐рдХрд╕рд┐рдд рдХреЗрд▓реЗ рдореАрдбрд┐рдпрд╛ рдЙрдШрдбрд╛ (AOMedia), рдЬреНрдпрд╛рдордзреНрдпреЗ Mozilla, Google, Microsoft, Intel, ARM, NVIDIA, IBM, Cisco, Amazon, Netflix, AMD, VideoLAN, CCN рдЖрдгрд┐ Realtek рд╕рд╛рд░рдЦреНрдпрд╛ рдХрдВрдкрдиреНрдпрд╛ рдЖрд╣реЗрдд. AV1 рд╕рд╛рд░реНрд╡рдЬрдирд┐рдХрд░реАрддреНрдпрд╛ рдЙрдкрд▓рдмреНрдз, рд░реЙрдпрд▓реНрдЯреА-рдореБрдХреНрдд рд╡рд┐рдирд╛рдореВрд▓реНрдп рд╡реНрд╣рд┐рдбрд┐рдУ рдПрдиреНрдХреЛрдбрд┐рдВрдЧ рдлреЙрд░рдореЕрдЯ рдореНрд╣рдгреВрди рд╕реНрдерд┐рдд рдЖрд╣реЗ рдЬреЗ рдХреЙрдореНрдкреНрд░реЗрд╢рди рдкрд╛рддрд│реАрдЪреНрдпрд╛ рдмрд╛рдмрддреАрдд H.264 рдЖрдгрд┐ VP9 рдЪреНрдпрд╛ рдкреБрдвреЗ рдЖрд╣реЗ. рдЪрд╛рдЪрдгреА рдХреЗрд▓реЗрд▓реНрдпрд╛ рд░рд┐рдЭреЛрд▓реНрдпреВрд╢рдирдЪреНрдпрд╛ рд╢реНрд░реЗрдгреАрдордзреНрдпреЗ, рд╕рд░рд╛рд╕рд░реА AV1 рд╕рдорд╛рди рджрд░реНрдЬрд╛рдЪреА рдЧреБрдгрд╡рддреНрддрд╛ рдкреНрд░рджрд╛рди рдХрд░рддреЗ, рддрд░ VP13 рдЪреНрдпрд╛ рддреБрд▓рдиреЗрдд 9% рдЖрдгрд┐ HEVC рдкреЗрдХреНрд╖рд╛ 17% рдХрдореА рдмрд┐рдЯрд░реЗрдЯ рдХрдореА рдХрд░рддреЗ. рдЙрдЪреНрдЪ рдмрд┐рдЯрд░реЗрдЯреНрд╕рд╡рд░, VP22 рд╕рд╛рдареА рд▓рд╛рдн 27-9% рдЖрдгрд┐ HEVC рд╕рд╛рдареА 30-43% рдкрд░реНрдпрдВрдд рд╡рд╛рдврддреЛ. Facebook рдЪрд╛рдЪрдгреНрдпрд╛рдВрдордзреНрдпреЗ, AV1 рдиреЗ рдореБрдЦреНрдп рдкреНрд░реЛрдлрд╛рдЗрд▓ H.264 (x264) 50.3% рдиреЗ рдХреЙрдореНрдкреНрд░реЗрд╢рди рд▓реЗрд╡реНрд╣рд▓рдиреЗ, рд╣рд╛рдп рдкреНрд░реЛрдлрд╛рдИрд▓ H.264 рдиреЗ 46.2% рдЖрдгрд┐ VP9 (libvpx-vp9) 34.0% рдиреЗ рдорд╛рдЧреЗ рдЯрд╛рдХрд▓реЗ.

рд╕реНрддреНрд░реЛрдд: opennet.ru

рдПрдХ рдЯрд┐рдкреНрдкрдгреА рдЬреЛрдбрд╛