AV1 рд╡реНрд╣рд┐рдбрд┐рдУ рдлреЙрд░рдореЕрдЯрд╕рд╛рдареА SVT-AV2.0 1 рдПрдиреНрдХреЛрдбрд░ рдЖрдгрд┐ dav1.4d 1 рдбреАрдХреЛрдбрд░рдЪреЗ рдкреНрд░рдХрд╛рд╢рди

SVT-AV1 2.0 (рд╕реНрдХреЗрд▓реЗрдмрд▓ рд╡реНрд╣рд┐рдбрд┐рдУ рдЯреЗрдХреНрдиреЙрд▓реЙрдЬреА AV1) рд▓рд╛рдпрдмреНрд░рд░реАрдЪреЗ рдкреНрд░рдХрд╛рд╢рди AV1 рд╡реНрд╣рд┐рдбрд┐рдУ рдПрдиреНрдХреЛрдбрд┐рдВрдЧ рдлреЙрд░рдореЕрдЯрдЪреНрдпрд╛ рдПрдиреНрдХреЛрдбрд░ рдЖрдгрд┐ рдбреАрдХреЛрдбрд░рдЪреНрдпрд╛ рдЕрдВрдорд▓рдмрдЬрд╛рд╡рдгреАрд╕рд╣ рдкреНрд░рдХрд╛рд╢рд┐рдд рдХреЗрд▓реЗ рдЧреЗрд▓реЗ рдЖрд╣реЗ, рдЬреНрдпрд╛рдЪреНрдпрд╛ рдкреНрд░рд╡реЗрдЧрд╛рд╕рд╛рдареА рдЖрдзреБрдирд┐рдХ рдЗрдВрдЯреЗрд▓ CPU рдордзреНрдпреЗ рд╣рд╛рд░реНрдбрд╡реЗрдЕрд░ рд╕рдорд╛рдВрддрд░ рд╕рдВрдЧрдгрдирд╛рдЪреА рд╕рд╛рдзрдиреЗ рд╡рд╛рдкрд░рд▓реА рдЬрд╛рддрд╛рдд. рдСрди-рдж-рдлреНрд▓рд╛рдп рд╡реНрд╣рд┐рдбрд┐рдУ рдЯреНрд░рд╛рдиреНрд╕рдХреЛрдбрд┐рдВрдЧ рдЖрдгрд┐ рд╡реНрд╣рд┐рдбрд┐рдУ-рдСрди-рдбрд┐рдорд╛рдВрдб (VOD) рд╕реЗрд╡рд╛рдВрдордзреНрдпреЗ рд╡рд╛рдкрд░рдгреНрдпрд╛рд╕рд╛рдареА рдпреЛрдЧреНрдп рдХрд╛рдордЧрд┐рд░реАрдЪреА рдкрд╛рддрд│реА рд╕рд╛рдзреНрдп рдХрд░рдгреНрдпрд╛рдЪреНрдпрд╛ рдЙрджреНрджреЗрд╢рд╛рдиреЗ рдиреЗрдЯрдлреНрд▓рд┐рдХреНрд╕рдЪреНрдпрд╛ рднрд╛рдЧреАрджрд╛рд░реАрдд рдЗрдВрдЯреЗрд▓рдиреЗ рд╣рд╛ рдкреНрд░рдХрд▓реНрдк рддрдпрд╛рд░ рдХреЗрд▓рд╛ рдЖрд╣реЗ. рд╕рдзреНрдпрд╛, AV1 рд╡реНрд╣рд┐рдбрд┐рдУ рдПрдиреНрдХреЛрдбрд┐рдВрдЧ рдлреЙрд░рдореЕрдЯрдЪреНрдпрд╛ рд╡рд┐рдХрд╛рд╕рд╛рд╡рд░ рджреЗрдЦрд░реЗрдЦ рдХрд░рдгрд╛рд░реНтАНрдпрд╛ рдУрдкрди рдореАрдбрд┐рдпрд╛ рдЕрд▓рд╛рдпрдиреНрд╕ (AOMedia) рдЪреНрдпрд╛ рдЖрд╢реНрд░рдпрд╛рдЦрд╛рд▓реА рд╡рд┐рдХрд╛рд╕ рдХреЗрд▓рд╛ рдЬрд╛рдд рдЖрд╣реЗ. рдкреВрд░реНрд╡реА, рдкреНрд░рдХрд▓реНрдк OpenVisualCloud рдкреНрд░рдХрд▓реНрдкрд╛рдЪреНрдпрд╛ рдЪреМрдХрдЯреАрдд рд╡рд┐рдХрд╕рд┐рдд рдХреЗрд▓рд╛ рдЧреЗрд▓рд╛ рд╣реЛрддрд╛, рдЬреЛ SVT-HEVC рдЖрдгрд┐ SVT-VP9 рдПрдиреНрдХреЛрдбрд░ рджреЗрдЦреАрд▓ рд╡рд┐рдХрд╕рд┐рдд рдХрд░рддреЛ. рдХреЛрдб рдмреАрдПрд╕рдбреА рдкрд░рд╡рд╛рдиреНрдпрд╛рдЕрдВрддрд░реНрдЧрдд рд╡рд┐рддрд░рд┐рдд рдХреЗрд▓рд╛ рдЬрд╛рддреЛ.

рдХреЛрдгрддреНрдпрд╛рд╣реА рдЖрд░реНрдХрд┐рдЯреЗрдХреНрдЪрд░рд╡рд░ рдЖрдзрд╛рд░рд┐рдд рд╕рд┐рд╕реНрдЯрдорд╕рд╛рдареА SVT-AV1 рдПрдХрддреНрд░ рдХреЗрд▓реЗ рдЬрд╛рдК рд╢рдХрддреЗ рдЬреНрдпрд╛рд╕рд╛рдареА C99 рдорд╛рдирдХрд╛рдВрдирд╛ рд╕рдорд░реНрдерди рджреЗрдгрд╛рд░рд╛ рдХрдВрдкрд╛рдЗрд▓рд░ рдЖрд╣реЗ, рдкрд░рдВрддреБ x86_64 рд╕рд┐рд╕реНрдЯрдорд╡рд░ рд╕рд░реНрд╡реЛрддреНрддрдо рдХрд╛рд░реНрдпрдкреНрд░рджрд░реНрд╢рди рдкреНрд░рд╛рдкреНрдд рдХреЗрд▓реЗ рдЬрд╛рддреЗ, рдЬреНрдпрд╛рд╕рд╛рдареА SIMD рдирд┐рд░реНрджреЗрд╢рд╛рдВрд╡рд░ рдЖрдзрд╛рд░рд┐рдд рдЕрд╕реЗрдВрдмрд▓реА рдСрдкреНрдЯрд┐рдорд╛рдпрдЭреЗрд╢рди рд╡рд╛рдкрд░рд▓реЗ рдЬрд╛рддреЗ (рд╣реЗ рдЕрд╕рдгреЗ рдЗрд╖реНрдЯ рдЖрд╣реЗ. CPU рдордзреНрдпреЗ AVX2 рд╕рдорд░реНрдерди, рдкрд░рдВрддреБ рдХрд┐рдорд╛рди рдкреБрд░реЗрд╕реЗ рдЖрд╣реЗ рдЖрдгрд┐ SS2). рдореЗрдорд░реА рд╡рд╛рдкрд░ рдПрдиреНрдХреЛрдбрд┐рдВрдЧ рджрд░рдореНрдпрд╛рди рд╡рд╛рдкрд░рд▓реЗрд▓реНрдпрд╛ рдкреНрд░реЛрд╕реЗрд╕рд░ рдХреЛрд░рдЪреНрдпрд╛ рд╕рдВрдЦреНрдпреЗрд╡рд░ рдЕрд╡рд▓рдВрдмреВрди рдЕрд╕рддреЛ, "-lp" рдкрд░реНрдпрд╛рдпрд╛рджреНрд╡рд╛рд░реЗ рдирд┐рдпрдорди рдХреЗрд▓реЗ рдЬрд╛рддреЗ. AV1 рдордзреНрдпреЗ рд╡рд╛рдкрд░рд▓реНрдпрд╛ рдЬрд╛рдгрд╛рд▒реНрдпрд╛ рдЕрд▓реНрдЧреЛрд░рд┐рджрдордЪреНрдпрд╛ рдЬрдЯрд┐рд▓рддреЗрдореБрд│реЗ, рдпрд╛ рдлреЙрд░рдореЕрдЯрдЪреНрдпрд╛ рдПрдиреНрдХреЛрдбрд┐рдВрдЧрд╕рд╛рдареА рдЗрддрд░ рдлреЙрд░рдореЕрдЯрдкреЗрдХреНрд╖рд╛ рд▓рдХреНрд╖рдгреАрдпрд░реАрддреНрдпрд╛ рдЬрд╛рд╕реНрдд рд╕рдВрд╕рд╛рдзрдиреЗ рдЖрд╡рд╢реНрдпрдХ рдЖрд╣реЗрдд, рдЬреЗ рд░рд┐рдЕрд▓-рдЯрд╛рдЗрдо рдЯреНрд░рд╛рдиреНрд╕рдХреЛрдбрд┐рдВрдЧрд╕рд╛рдареА рдорд╛рдирдХ AV1 рдПрдиреНрдХреЛрдбрд░ рд╡рд╛рдкрд░рдгреНрдпрд╛рдЪреА рдкрд░рд╡рд╛рдирдЧреА рджреЗрдд тАЛтАЛрдирд╛рд╣реА. рдЙрджрд╛рд╣рд░рдгрд╛рд░реНрде, AV1 рдкреНрд░рдХрд▓реНрдкрд╛рддреАрд▓ рд╕реНрдЯреЙрдХ рдПрдиреНрдХреЛрдбрд░рд╕рд╛рдареА x5721 ("рдореБрдЦреНрдп" рдкреНрд░реЛрдлрд╛рдЗрд▓), x5869 ("рдЙрдЪреНрдЪ" рдкреНрд░реЛрдлрд╛рдЗрд▓) рдЖрдгрд┐ libvpx-vp658 рдПрдиреНрдХреЛрдбрд░рдЪреНрдпрд╛ рддреБрд▓рдиреЗрдд 264, 264 рдЖрдгрд┐ 9 рдкрдЯ рдЕрдзрд┐рдХ рдЧрдгрдирд╛ рдЖрд╡рд╢реНрдпрдХ рдЖрд╣реЗ.

SVT-AV1 рдЪреНрдпрд╛ рдирд╡реАрди рдкреНрд░рдХрд╛рд╢рдирд╛рддреАрд▓ рдмрджрд▓рд╛рдВрдкреИрдХреА:

  • рдирд╡реАрди рдЖрд╡реГрддреНрддреА рдХреНрд░рдорд╛рдВрдХрд╛рд╡рд░ рдПрдХ рд╕рдВрдХреНрд░рдордг рдХреЗрд▓реЗ рдЧреЗрд▓реЗ рдЖрд╣реЗ, рддреНрдпрд╛рдиреБрд╕рд╛рд░ рдЖрд╡реГрддреНрддреАрдордзреАрд▓ рдкрд╣рд┐рд▓рд╛ рдЕрдВрдХ рдкреНрд░рддреНрдпреЗрдХ API/ABI рдмрджрд▓рд╛рд╕рд╣ рдмрджрд▓реЗрд▓.
  • рд░рд┐рдХрд╛рдореА рдлреНрд░реЗрдо рд╡рд╛рдкрд░рдгреНрдпрд╛рдРрд╡рдЬреА рд╢реЗрд╡рдЯрдЪреНрдпрд╛ рдлреНрд░реЗрдордордзреНрдпреЗ рд╕реНрдЯреНрд░реАрдо рдЗрдВрдбрд┐рдХреЗрд╢рди (EOS - End Of Stream) рдЪреНрдпрд╛ рд╕рдВрдХреНрд░рдордгрд╛рд╢реА рд╕рдВрдмрдВрдзрд┐рдд API рдордзреНрдпреЗ рдмрджрд▓ рдХреЗрд▓реЗ рдЧреЗрд▓реЗ рдЖрд╣реЗрдд, рдЬреНрдпрд╛рдореБрд│реЗ рдЕрддрд┐рд░рд┐рдХреНрдд рдлреНрд░реЗрдордЪреА рдкреНрд░рддреАрдХреНрд╖рд╛ рдХрд░рдгреНрдпрд╛рдд рдпреЗрдгрд╛рд░рд╛ рд╡рд┐рд▓рдВрдм рджреВрд░ рдЭрд╛рд▓рд╛ рдЖрд╣реЗ. API рдмрджрд▓ рдЖрдзреАрдЪ FFmpeg рдХреЛрдбрдмреЗрд╕рдордзреНрдпреЗ рдкреНрд░рддрд┐рдмрд┐рдВрдмрд┐рдд рдЭрд╛рд▓рд╛ рдЖрд╣реЗ.
  • рдереНрд░реА-рдкрд╛рд╕ рд╡реНрд╣реЗрд░рд┐рдПрдмрд▓ рдмрд┐рдЯрд░реЗрдЯ рдореЛрдб (3-рдкрд╛рд╕ VBR) рдХрд╛рдвреВрди рдЯрд╛рдХрд▓рд╛ рдЧреЗрд▓рд╛ рдЖрд╣реЗ, рдЖрдгрд┐ рдЖрддрд╛ рдорд▓реНрдЯреА-рдкрд╛рд╕ VBR рдпрдВрддреНрд░рдгреЗрдиреЗ рдмрджрд▓рд▓рд╛ рдЖрд╣реЗ. FFmpeg рд╕рд╣ рдПрдХреАрдХрд░рдг рд╕реБрдирд┐рд╢реНрдЪрд┐рдд рдХрд░рдгреНрдпрд╛рд╕рд╛рдареА VBR рдорд▓реНрдЯреА-рдкрд╛рд╕ рдореЛрдб рджреЛрди рдкрд╛рд╕рд╛рдВрд╡рд░ рдХрдореА рдХреЗрд▓рд╛ рдЖрд╣реЗ.
  • рдПрдиреНрдХреЛрдбрд░рдордзреНрдпреЗ рдСрдкреНрдЯрд┐рдорд╛рдпрдЭреЗрд╢рди рдЬреЛрдбрд▓реЗ рдЧреЗрд▓реЗ рдЖрд╣реЗрдд, рдкрд░рд┐рдгрд╛рдореА M9-M13 рдкреНрд░реАрд╕реЗрдЯрдЪреА рдХреЙрдореНрдкреНрд░реЗрд╢рди рдХрд╛рд░реНрдпрдХреНрд╖рдорддрд╛ 1-4% рд╡рд╛рдврд▓реА рдЖрд╣реЗ рдЖрдгрд┐ LP 5 рдореЛрдбрдордзреНрдпреЗ M20 рдкреНрд░реАрд╕реЗрдЯрдЪрд╛ рдореЗрдорд░реА рд╡рд╛рдкрд░ 35-8% рдХрдореА рдЭрд╛рд▓рд╛ рдЖрд╣реЗ рдЖрдгрд┐ рдЗрддрд░ рдореЛрдбрдордзреНрдпреЗ 1-5% рдиреЗ. рдЗрддрд░ рдкреНрд░реАрд╕реЗрдЯрдордзреАрд▓ рдореЗрдорд░реА рд╡рд╛рдкрд░ 1-5% рдХрдореА рдЭрд╛рд▓рд╛.
  • рдЙрдЪреНрдЪ рджрд░реНрдЬрд╛рдЪреА рдЧреБрдгрд╡рддреНрддрд╛ рд╕реЗрдЯ рдХрд░рдгрд╛рд▒реНрдпрд╛ рдкреНрд░реАрд╕реЗрдЯрд╕рд╛рдареА рдЧреБрдгрд╡рддреНрддрд╛/рдЧрддреА рддрдбрдЬреЛрдбреАрдЪреЗ рдСрдкреНрдЯрд┐рдорд╛рдпрдЭреЗрд╢рди рдХреЗрд▓реЗ рдЧреЗрд▓реЗ рдЖрд╣реЗ. рд╕рдВрджрд░реНрдн рдЧреБрдгрд╡рддреНрддрд╛ MR рдкреНрд░реАрд╕реЗрдЯ 100% рдиреЗ рд╡реЗрдЧрд╡рд╛рди рдХреЗрд▓реЗ рдЖрд╣реЗ.
  • ARM-рд╡рд┐рд╢рд┐рд╖реНрдЯ рдСрдкреНрдЯрд┐рдорд╛рдпрдЭреЗрд╢рди рдХреЗрд╡рд│ C-рдлрдВрдХреНрд╢рдиреНрд╕рдордзреНрдпреЗ рдЬреЛрдбрд▓реЗ рдЧреЗрд▓реЗ рдЖрд╣реЗрдд.

рдпрд╛рд╡реНрдпрддрд┐рд░рд┐рдХреНрдд, рдЖрдореНрд╣реА dav1d 1.4.1 рдкреНрд░рдХрд▓реНрдкрд╛рдЪреЗ рдкреНрд░рдХрд╛рд╢рди рд▓рдХреНрд╖рд╛рдд рдШреЗрдК рд╢рдХрддреЛ, рдЬреНрдпрд╛рдордзреНрдпреЗ VideoLAN рдЖрдгрд┐ FFmpeg рд╕рдореБрджрд╛рдп AV1 рд╡реНрд╣рд┐рдбрд┐рдУ рдПрдиреНрдХреЛрдбрд┐рдВрдЧ рдлреЙрд░рдореЕрдЯрд╕рд╛рдареА рдкрд░реНрдпрд╛рдпреА рдлреНрд░реА рдбреАрдХреЛрдбрд░рдЪреНрдпрд╛ рдЕрдВрдорд▓рдмрдЬрд╛рд╡рдгреАрд╕рд╣ рд▓рд╛рдпрдмреНрд░рд░реА рд╡рд┐рдХрд╕рд┐рдд рдХрд░рдд рдЖрд╣реЗрдд. dav1d рд▓рд╛рдпрдмреНрд░рд░реА AV1 рдЪреНрдпрд╛ рд╕рд░реНрд╡ рд╡реИрд╢рд┐рд╖реНрдЯреНрдпрд╛рдВрдирд╛ рд╕рдорд░реНрдерди рджреЗрддреЗ, рдЬреНрдпрд╛рдд рдкреНрд░рдЧрдд рдкреНрд░рдХрд╛рд░рдЪреЗ рд╕рдмрд╕реЕрдореНрдкрд▓рд┐рдВрдЧ рдЖрдгрд┐ рддрдкрд╢реАрд▓ (8, 10 рдЖрдгрд┐ 12 рдмрд┐рдЯ) рдордзреНрдпреЗ рдирдореВрдж рдХреЗрд▓реЗрд▓реНрдпрд╛ рд╕рд░реНрд╡ рд░рдВрдЧ рдЦреЛрд▓реА рдирд┐рдпрдВрддреНрд░рдг рдорд╛рдкрджрдВрдбрд╛рдВрдЪрд╛ рд╕рдорд╛рд╡реЗрд╢ рдЖрд╣реЗ. dav1d рдЪреЗ рдореБрдЦреНрдп рд╡реИрд╢рд┐рд╖реНрдЯреНрдп рдореНрд╣рдгрдЬреЗ рдЬрд╛рд╕реНрддреАрдд рдЬрд╛рд╕реНрдд рд╢рдХреНрдп рдбреАрдХреЛрдбрд┐рдВрдЧ рдХрд╛рд░реНрдпрдкреНрд░рджрд░реНрд╢рди рд╕рд╛рдзреНрдп рдХрд░рдгреЗ рдЖрдгрд┐ рдорд▓реНрдЯреА-рдереНрд░реЗрдбреЗрдб рдореЛрдбрдордзреНрдпреЗ рдЙрдЪреНрдЪ-рдЧреБрдгрд╡рддреНрддреЗрдЪреЗ рдХрд╛рд░реНрдп рд╕реБрдирд┐рд╢реНрдЪрд┐рдд рдХрд░рдгреЗ рд╣реЗ рддреНрдпрд╛рдЪреЗ рд▓рдХреНрд╖ рдЖрд╣реЗ. рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдХреЛрдб C (C99) рдордзреНрдпреЗ рдЕрд╕реЗрдВрдмреНрд▓реА рдЗрдиреНрд╕рд░реНрдЯ (NASM/GAS) рдордзреНрдпреЗ рд▓рд┐рд╣рд┐рд▓реЗрд▓рд╛ рдЖрд╣реЗ рдЖрдгрд┐ BSD рдкрд░рд╡рд╛рдиреНрдпрд╛рдЕрдВрддрд░реНрдЧрдд рд╡рд┐рддрд░рд┐рдд рдХреЗрд▓рд╛ рдЬрд╛рддреЛ. x86, x86_64, ARMv7 рдЖрдгрд┐ ARMv8 рдЖрд░реНрдХрд┐рдЯреЗрдХреНрдЪрд░реНрд╕ рдЖрдгрд┐ рдСрдкрд░реЗрдЯрд┐рдВрдЧ рд╕рд┐рд╕реНрдЯрдореНрд╕ FreeBSD, Linux, Windows, macOS, Android рдЖрдгрд┐ iOS рд╕рд╛рдареА рд╕рдорд░реНрдерди рд▓рд╛рдЧреВ рдХреЗрд▓реЗ рдЧреЗрд▓реЗ рдЖрд╣реЗ.

рдЖрд╡реГрддреНрддреА dav1d 1.4 рдирд╡реАрди Loongarch рдЖрдгрд┐ RISC-V рдЖрд░реНрдХрд┐рдЯреЗрдХреНрдЪрд░рд▓рд╛ рд╕рдорд░реНрдерди рджреЗрдгреНрдпрд╛рд╕рд╛рдареА, рддрд╕реЗрдЪ AVX-512 рд╕реВрдЪрдирд╛рдВрд╡рд░ рдЖрдзрд╛рд░рд┐рдд рдЕрддрд┐рд░рд┐рдХреНрдд рдСрдкреНрдЯрд┐рдорд╛рдпрдЭреЗрд╢рди рд╕рд╛рджрд░ рдХрд░рдгреНрдпрд╛рд╕рд╛рдареА, ARM рд╕рд┐рд╕реНрдЯреАрдорд╡рд░ 6tap рдлрд┐рд▓реНрдЯрд░рдЪреНрдпрд╛ рдСрдкрд░реЗрд╢рдирд▓рд╛ рдЧрддреА рджреЗрдгреНрдпрд╛рд╕рд╛рдареА, рдорд▓реНрдЯреА-рдереНрд░реЗрдбреЗрдб рдХрд╛рдорд╛рдЪреА рдХрд╛рд░реНрдпрдХреНрд╖рдорддрд╛ рд╡рд╛рдврд╡рдгреНрдпрд╛рд╕рд╛рдареА рдЖрдгрд┐ рдХрдореА рдХрд░рдгреНрдпрд╛рд╕рд╛рдареА рдЙрд▓реНрд▓реЗрдЦрдиреАрдп рдЖрд╣реЗ. ARM64, ARM32 рдЖрдгрд┐ RISC-рд╕рд┐рд╕реНрдЯрдо V рд╡рд░ рдмрд╛рдпрдирд░реА рдбреЗрдЯрд╛рдЪрд╛ рдЖрдХрд╛рд░. рдирд┐рд╢реНрдЪрд┐рдд рднреЗрджреНрдпрддрд╛ CVE-2024-1580, рдЬреНрдпрд╛рдореБрд│реЗ рдЦреВрдк рдореЛрдареНрдпрд╛ рдлреНрд░реЗрдо рдЖрдХрд╛рд░рд╛рдВрд╡рд░ рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдХрд░рддрд╛рдирд╛ рдкреВрд░реНрдгрд╛рдВрдХ рдУрд╡реНрд╣рд░рдлреНрд▓реЛрдореБрд│реЗ рд╕реАрдорд╛рдмрд╛рд╣реНрдп рд▓реЗрдЦрди рд╣реЛрддреЗ.

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

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