Выпуск мультимедиа-пакета 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

Добавить комментарий