Выпуск ΠΌΡƒΠ»ΡŒΡ‚ΠΈΠΌΠ΅Π΄ΠΈΠ°-ΠΏΠ°ΠΊΠ΅Ρ‚Π° FFmpeg 5.0

ПослС дСсяти мСсяцСв Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ доступСн ΠΌΡƒΠ»ΡŒΡ‚ΠΈΠΌΠ΅Π΄ΠΈΠ°-ΠΏΠ°ΠΊΠ΅Ρ‚ FFmpeg 5.0, Π²ΠΊΠ»ΡŽΡ‡Π°ΡŽΡ‰ΠΈΠΉ Π½Π°Π±ΠΎΡ€ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ ΠΈ ΠΊΠΎΠ»Π»Π΅ΠΊΡ†ΠΈΡŽ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊ для ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΉ Π½Π°Π΄ Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹ΠΌΠΈ ΠΌΡƒΠ»ΡŒΡ‚ΠΈΠΌΠ΅Π΄ΠΈΠ°-Ρ„ΠΎΡ€ΠΌΠ°Ρ‚Π°ΠΌΠΈ (запись, ΠΏΡ€Π΅ΠΎΠ±Ρ€Π°Π·ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΈ Π΄Π΅ΠΊΠΎΠ΄ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ Π·Π²ΡƒΠΊΠΎΠ²Ρ‹Ρ… ΠΈ Π²ΠΈΠ΄Π΅ΠΎΡ„ΠΎΡ€ΠΌΠ°Ρ‚ΠΎΠ²). ΠŸΠ°ΠΊΠ΅Ρ‚ распространяСтся ΠΏΠΎΠ΄ лицСнзиями LGPL ΠΈ GPL, Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° FFmpeg вСдётся смСТно с ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΎΠΌ MPlayer. Π—Π½Π°Ρ‡ΠΈΡ‚Π΅Π»ΡŒΠ½Π°Ρ смСна Π½ΠΎΠΌΠ΅Ρ€Π° вСрсии ΠΎΠ±ΡŠΡΡΠ½ΡΠ΅Ρ‚ΡΡ сущСствСнными измСнСниями Π² API ΠΈ ΠΏΠ΅Ρ€Π΅Ρ…ΠΎΠ΄ΠΎΠΌ Π½Π° Π½ΠΎΠ²ΡƒΡŽ схСму формирования Ρ€Π΅Π»ΠΈΠ·ΠΎΠ², Π² соотвСтствии с ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ Π½ΠΎΠ²Ρ‹Π΅ Π·Π½Π°Ρ‡ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ выпуски Π±ΡƒΠ΄ΡƒΡ‚ Ρ„ΠΎΡ€ΠΌΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒΡΡ Ρ€Π°Π· Π² Π³ΠΎΠ΄, Π° Ρ€Π΅Π»ΠΈΠ·Ρ‹ с Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½Π½Ρ‹ΠΌ Π²Ρ€Π΅ΠΌΠ΅Π½Π΅ΠΌ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈ — Ρ€Π°Π· Π² Π΄Π²Π° Π³ΠΎΠ΄Π°. FFmpeg 5.0 станСт ΠΏΠ΅Ρ€Π²Ρ‹ΠΌ LTS-Ρ€Π΅Π»ΠΈΠ·ΠΎΠΌ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π°.

Из ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ, Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Π½Ρ‹Ρ… Π² FFmpeg 5.0, ΠΌΠΎΠΆΠ½ΠΎ Π²Ρ‹Π΄Π΅Π»ΠΈΡ‚ΡŒ:

  • ΠŸΡ€ΠΎΠ²Π΅Π΄Π΅Π½Π° Π·Π½Π°Ρ‡ΠΈΡ‚Π΅Π»ΡŒΠ½Π°Ρ чистка старых API для кодирования ΠΈ дСкодирования ΠΈ Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ ΠΏΠ΅Ρ€Ρ…ΠΎΠ΄ Π½Π° Π½ΠΎΠ²Ρ‹ΠΉ N:M API, ΠΏΡ€Π΅Π΄Π»Π°Π³Π°ΡŽΡ‰ΠΈΠΉ Π΅Π΄ΠΈΠ½Ρ‹ΠΉ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½Ρ‹ΠΉ интСрфСйс для Π·Π²ΡƒΠΊΠ° ΠΈ Π²ΠΈΠ΄Π΅ΠΎ, Π° Ρ‚Π°ΠΊΠΆΠ΅ Ρ€Π°Π·Π΄Π΅Π»ΡΡŽΡ‰Π΅Π³ΠΎ ΠΊΠΎΠ΄Π΅ΠΊΠΈ для Π²Ρ…ΠΎΠ΄Π½Ρ‹Ρ… ΠΈ Π²Ρ‹Ρ…ΠΎΠ΄Π½Ρ‹Ρ… ΠΏΠΎΡ‚ΠΎΠΊΠΎΠ². Π£Π΄Π°Π»Π΅Π½Ρ‹ всС старыС API, Ρ€Π°Π½Π΅Π΅ ΠΏΠΎΠΌΠ΅Ρ‡Π΅Π½Π½Ρ‹Π΅ ΡƒΡΡ‚Π°Ρ€Π΅Π²ΡˆΠΈΠΌΠΈ. Π”ΠΎΠ±Π°Π²Π»Π΅Π½ Π½ΠΎΠ²Ρ‹ΠΉ API для bitstream-Ρ„ΠΈΠ»ΡŒΡ‚Ρ€ΠΎΠ². Π Π°Π·Π΄Π΅Π»Π΅Π½Ρ‹ Ρ„ΠΎΡ€ΠΌΠ°Ρ‚Ρ‹ ΠΈ ΠΊΠΎΠ΄Π΅ΠΊΠΈ — распаковщики ΠΌΠ΅Π΄ΠΈΠ°ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€ΠΎΠ² большС Π½Π΅ Π²ΡΡ‚Ρ€Π°ΠΈΠ²Π°ΡŽΡ‚ вСсь контСкст Π΄Π΅ΠΊΠΎΠ΄ΠΈΡ€ΠΎΠ²Ρ‰ΠΈΠΊΠΎΠ². Π£Π΄Π°Π»Π΅Π½Ρ‹ API для рСгистрации ΠΊΠΎΠ΄Π΅ΠΊΠΎΠ² ΠΈ Ρ„ΠΎΡ€ΠΌΠ°Ρ‚ΠΎΠ² — всС Ρ„ΠΎΡ€ΠΌΠ°Ρ‚Ρ‹ Ρ‚Π΅ΠΏΠ΅Ρ€ΡŒ всСгда зарСгистрированы.
  • Π£Π΄Π°Π»Π΅Π½Π° Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ° libavresample.
  • Π’ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΡƒ libswscale Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ Π±ΠΎΠ»Π΅Π΅ простой API Π½Π° Π±Π°Π·Π΅ AVFrame.
  • Π—Π½Π°Ρ‡ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ ΡƒΠ»ΡƒΡ‡ΡˆΠ΅Π½Π° ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° графичСского API Vulkan.
  • Π”ΠΎΠ±Π°Π²Π»Π΅Π½Π° ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° Π°ΠΏΠΏΠ°Ρ€Π°Ρ‚Π½ΠΎΠ³ΠΎ ускорСния дСкодирования ΠΈ кодирования Ρ„ΠΎΡ€ΠΌΠ°Ρ‚ΠΎΠ² VP9 ΠΈ ProRes с использованиСм API VideoToolbox.
  • Π”ΠΎΠ±Π°Π²Π»Π΅Π½Π° ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° Π°Ρ€Ρ…ΠΈΡ‚Π΅ΠΊΡ‚ΡƒΡ€Ρ‹ LoongArch, примСняСмой Π² процСссорах Loongson, Π° Ρ‚Π°ΠΊΠΆΠ΅ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° прСдоставляСмых Π² LoongArch SIMD-Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½ΠΈΠΉ LSX ΠΈ LASX. Для ΠΊΠΎΠ΄Π΅ΠΊΠΎΠ² H.264, VP8 ΠΈ VP9 Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½Ρ‹ спСцифичныС для LoongArch ΠΎΠΏΡ‚ΠΈΠΌΠΈΠ·Π°Ρ†ΠΈΠΈ.
  • Π”ΠΎΠ±Π°Π²Π»Π΅Π½Π° ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ»Π° Concatf, ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΡΡŽΡ‰ΠΈΠΉ Ρ„ΠΎΡ€ΠΌΠ°Ρ‚ для ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‡ΠΈ списка рСсурсов («ffplay concatf:split.txt»).
  • Π”ΠΎΠ±Π°Π²Π»Π΅Π½Ρ‹ Π½ΠΎΠ²Ρ‹Π΅ Π΄Π΅ΠΊΠΎΠ΄ΠΈΡ€ΠΎΠ²Ρ‰ΠΈΠΊΠΈ: Speex, MSN Siren, ADPCM IMA Acorn Replay, GEM (растровыС изобраТСния).
  • Π”ΠΎΠ±Π°Π²Π»Π΅Π½Ρ‹ Π½ΠΎΠ²Ρ‹Π΅ ΠΊΠΎΠ΄ΠΈΡ€ΠΎΠ²Ρ‰ΠΈΠΊΠΈ: bitpacked, Apple Graphics (SMC), ADPCM IMA Westwood, VideoToolbox ProRes. ΠŸΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Ρ‹ ΠΊΠΎΠ΄ΠΈΡ€ΠΎΠ²Ρ‰ΠΈΠΊΠ° AAC ΠΈΠ·ΠΌΠ΅Π½Π΅Π½Ρ‹ для достиТСния Π±ΠΎΠ»Π΅Π΅ высокого качСства.
  • Π”ΠΎΠ±Π°Π²Π»Π΅Π½Ρ‹ ΡƒΠΏΠ°ΠΊΠΎΠ²Ρ‰ΠΈΠΊΠΈ ΠΌΠ΅Π΄ΠΈΠ°ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€ΠΎΠ² (muxer): Westwood AUD, Argonaut Games CVG, AV1 (Low overhead bitstream).
  • Π”ΠΎΠ±Π°Π²Π»Π΅Π½Ρ‹ распаковщики ΠΌΠ΅Π΄ΠΈΠ°ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€ΠΎΠ² (demuxer): IMF, Argonaut Games CVG.
  • Π”ΠΎΠ±Π°Π²Π»Π΅Π½ Π½ΠΎΠ²Ρ‹ΠΉ парсСр для Π·Π²ΡƒΠΊΠΎΠ²ΠΎΠ³ΠΎ ΠΊΠΎΠ΄Π΅ΠΊΠ° AMR (Adaptive Multi-Rate).
  • Π”ΠΎΠ±Π°Π²Π»Π΅Π½ ΡƒΠΏΠ°ΠΊΠΎΠ²Ρ‰ΠΈΠΊ payload-Π΄Π°Π½Π½Ρ‹Ρ… (packetizer) для ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‡ΠΈ нСсТатого Π²ΠΈΠ΄Π΅ΠΎ с использованиСм ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ»Π° RTP (RFC 4175).
  • НовыС Ρ„ΠΈΠ»ΡŒΡ‚Ρ€Ρ‹ для Π²ΠΈΠ΄Π΅ΠΎ:
    • segment ΠΈ asegment — Ρ€Π°Π·Π΄Π΅Π»Π΅Π½ΠΈΠ΅ ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΏΠΎΡ‚ΠΎΠΊΠ° с Π²ΠΈΠ΄Π΅ΠΎ ΠΈΠ»ΠΈ Π·Π²ΡƒΠΊΠΎΠΌ Π½Π° нСсколько ΠΏΠΎΡ‚ΠΎΠΊΠΎΠ² с Ρ€Π°Π·Π΄Π΅Π»Π΅Π½ΠΈΠ΅ΠΌ ΠΏΠΎ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ ΠΈΠ»ΠΈ ΠΊΠ°Π΄Ρ€Π°ΠΌ.
    • hsvkey ΠΈ hsvhold — Π·Π°ΠΌΠ΅Π½ΡΡŽΡ‚ Π² Π²ΠΈΠ΄Π΅ΠΎ Ρ‡Π°ΡΡ‚ΡŒ Ρ†Π²Π΅Ρ‚ΠΎΠ²ΠΎΠ³ΠΎ Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½Π° HSV Π½Π° значСния Π² ΠΎΡ‚Ρ‚Π΅Π½ΠΊΠ°Ρ… сСрого.
    • grayworld — цвСтокоррСкция Π²ΠΈΠ΄Π΅ΠΎ с использованиСм Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΠ° Π½Π° основС Π³ΠΈΠΏΠΎΡ‚Π΅Π·Ρ‹ сСрого ΠΌΠΈΡ€Π°.
    • scharr — ΠΏΡ€ΠΈΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€Π° Π¨Π°Ρ€Π° (Π²Π°Ρ€ΠΈΠ°Π½Ρ‚ ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€Π° БобСля с Π΄Ρ€ΡƒΠ³ΠΈΠΌΠΈ коэффициСнтами) ΠΊ Π²Ρ…ΠΎΠ΄Π½ΠΎΠΌΡƒ Π²ΠΈΠ΄Π΅ΠΎ.
    • morpho — позволяСт ΠΏΡ€ΠΈΠΌΠ΅Π½ΠΈΡ‚ΡŒ Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Π΅ морфологичСскиС прСобразования ΠΊ Π²ΠΈΠ΄Π΅ΠΎ.
    • latency ΠΈ alatency — измСряСт ΠΌΠΈΠ½ΠΈΠΌΠ°Π»ΡŒΠ½ΡƒΡŽ ΠΈ ΠΌΠ°ΠΊΡΠΈΠΌΠ°Π»ΡŒΠ½ΡƒΡŽ Π·Π°Π΄Π΅Ρ€ΠΆΠΊΡƒ Ρ„ΠΈΠ»ΡŒΡ‚Ρ€Π°Ρ†ΠΈΠΈ для Ρ€Π°Π½Π΅Π΅ ΠΏΡ€ΠΈΠΌΠ΅Π½Ρ‘Π½Π½ΠΎΠ³ΠΎ Ρ„ΠΈΠ»ΡŒΡ‚Ρ€Π°.
    • limitdiff — опрСдСляСт Ρ€Π°Π·Π½ΠΈΡ†Ρƒ ΠΌΠ΅ΠΆΠ΄Ρƒ двумя ΠΈΠ»ΠΈ трСмя Π²ΠΈΠ΄Π΅ΠΎΠΏΠΎΡ‚ΠΎΠΊΠ°ΠΌΠΈ.
    • xcorrelate — вычисляСт Π²Π·Π°ΠΈΠΌΠ½ΡƒΡŽ ΠΊΠΎΡ€Ρ€Π΅Π»ΡΡ†ΠΈΡŽ ΠΌΠ΅ΠΆΠ΄Ρƒ Π²ΠΈΠ΄Π΅ΠΎΠΏΠΎΡ‚ΠΎΠΊΠ°ΠΌΠΈ.
    • varblur — ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠ΅ Ρ€Π°Π·ΠΌΡ‹Ρ‚ΠΈΠ΅ Π²ΠΈΠ΄Π΅ΠΎ с ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅ΠΌ радиуса размытия ΠΈΠ· Π²Ρ‚ΠΎΡ€ΠΎΠ³ΠΎ Π²ΠΈΠ΄Π΅ΠΎ.
    • huesaturation — ΠΏΡ€ΠΈΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ ΠΊ Π²ΠΈΠ΄Π΅ΠΎ ΠΊΠΎΡ€Ρ€Π΅ΠΊΡ‚ΠΈΡ€ΠΎΠ²ΠΊΠΈ ΠΎΡ‚Ρ‚Π΅Π½ΠΊΠ°, насыщСнности ΠΈΠ»ΠΈ интСнсивности.
    • colorspectrum — гСнСрация Π²ΠΈΠ΄Π΅ΠΎΠΏΠΎΡ‚ΠΎΠΊΠ° с Π·Π°Π΄Π°Π½Π½Ρ‹ΠΌ Ρ†Π²Π΅Ρ‚ΠΎΠ²Ρ‹ΠΌ спСктром.
    • libplacebo — ΠΏΡ€ΠΈΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ для ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ HDR ΡˆΠ΅ΠΉΠ΄Π΅Ρ€ΠΎΠ² ΠΈΠ· Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ libplacebo.
    • vflip_vulkan, hflip_vulkan ΠΈ flip_vulkan — Π²Π°Ρ€ΠΈΠ°Π½Ρ‚Ρ‹ Ρ„ΠΈΠ»ΡŒΡ‚Ρ€ΠΎΠ² Π²Π΅Ρ€Ρ‚ΠΈΠΊΠ°Π»ΡŒΠ½ΠΎΠ³ΠΎ ΠΈΠ»ΠΈ Π³ΠΎΡ€ΠΈΠ·ΠΎΠ½Ρ‚Π°Π»ΡŒΠ½ΠΎΠ³ΠΎ ΠΏΠ΅Ρ€Π΅Π²ΠΎΡ€ΠΎΡ‚Π° Π²ΠΈΠ΄Π΅ΠΎ (vflip, hflip ΠΈ flip), Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½Π½Ρ‹Π΅ с использованиСм графичСского API Vulkan.
    • yadif_videotoolbox — Π²Π°Ρ€ΠΈΠ°Π½Ρ‚ Ρ„ΠΈΠ»ΡŒΡ‚Ρ€Π° дСинтСрлСйсинга yadif Π½Π° Π±Π°Π·Π΅ Ρ„Ρ€Π΅ΠΉΠΌΠ²ΠΎΡ€ΠΊΠ° VideoToolbox.
  • НовыС Ρ„ΠΈΠ»ΡŒΡ‚Ρ€Ρ‹ для Π·Π²ΡƒΠΊΠ°:
    • apsyclip — ΠΏΡ€ΠΈΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ психоакустичСского отсСкатСля ΠΊ Π·Π²ΡƒΠΊΠΎΠ²ΠΎΠΌΡƒ ΠΏΠΎΡ‚ΠΎΠΊΡƒ.
    • afwtdn — подавляСт ΡˆΠΈΡ€ΠΎΠΊΠΎΠΏΠΎΠ»ΠΎΡΠ½Ρ‹ΠΉ ΡˆΡƒΠΌ.
    • adecorrelate — ΠΏΡ€ΠΈΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ ΠΊΠΎ Π²Ρ…ΠΎΠ΄Π½ΠΎΠΌΡƒ ΠΏΠΎΡ‚ΠΎΠΊΡƒ Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΠ° дСкоррСляции.
    • atilt — ΠΏΡ€ΠΈΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ ΡΠΏΠ΅ΠΊΡ‚Ρ€Π°Π»ΡŒΠ½ΠΎΠ³ΠΎ смСщСния для Π·Π°Π΄Π°Π½Π½ΠΎΠ³ΠΎ Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½Π° частот.
    • asdr — ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅ искаТСния сигнала ΠΌΠ΅ΠΆΠ΄Ρƒ двумя Π·Π²ΡƒΠΊΠΎΠ²Ρ‹ΠΌΠΈ ΠΏΠΎΡ‚ΠΎΠΊΠ°ΠΌΠΈ.
    • aspectralstats — Π²Ρ‹Π²ΠΎΠ΄ статистики со ΡΠΏΠ΅ΠΊΡ‚Ρ€Π°Π»ΡŒΠ½Ρ‹ΠΌΠΈ характСристиками ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ Π·Π²ΡƒΠΊΠΎΠ²ΠΎΠ³ΠΎ ΠΊΠ°Π½Π°Π»Π°.
    • adynamicsmooth — динамичСскоС сглаТиваниС Π·Π²ΡƒΠΊΠΎΠ²ΠΎΠ³ΠΎ ΠΏΠΎΡ‚ΠΎΠΊΠ°.
    • adynamicequalizer — динамичСскоС Π²Ρ‹Ρ€Π°Π²Π½ΠΈΠ²Π°Π½ΠΈΠ΅ Π·Π²ΡƒΠΊΠΎΠ²ΠΎΠ³ΠΎ ΠΏΠΎΡ‚ΠΎΠΊΠ°.
    • anlmf — ΠΏΡ€ΠΈΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΠ° Π½Π°ΠΈΠΌΠ΅Π½ΡŒΡˆΠΈΡ… срСдних ΠΊΠ²Π°Π΄Ρ€Π°Ρ‚ΠΎΠ² ΠΊ Π·Π²ΡƒΠΊΠΎΠ²ΠΎΠΌΡƒ ΠΏΠΎΡ‚ΠΎΠΊΡƒ.

Π˜ΡΡ‚ΠΎΡ‡Π½ΠΈΠΊ: opennet.ru