После десяти месяцев разработки доступен мультимедиа-пакет FFmpeg 5.0, включающий набор приложений и коллекцию библиотек для операций над различными мультимедиа-форматами (запись, преобразование и декодирование звуковых и видеоформатов). Пакет распространяется под лицензиями LGPL и GPL, разработка FFmpeg ведётся смежно с проектом MPlayer. Значительная смена номера версии объясняется существенными изменениями в API и переходом на новую схему формирования релизов, в соответствии с которой новые значительные выпуски будут формироваться раз в год, а релизы с расширенным временем поддержи - раз в два года. FFmpeg 5.0 станет первым LTS-релизом проекта.
Из изменений, добавленных в FFmpeg 5.0, можно выделить:
Из изменений, добавленных в 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 - применение алгоритма наименьших средних квадратов к звуковому потоку.
Выпуск мультимедиа-пакета FFmpeg 5.0
www.opennet.ru