Выпуск мультимедиа-пакета FFmpeg 4.1

После шести месяцев разработки доступен мультимедиа-пакет FFmpeg 4.1, включающий набор приложений и коллекцию библиотек для операций над различными мультимедиа-форматами (запись, преобразование и декодирование звуковых и видеоформатов). Пакет распространяется под лицензиями LGPL и GPL, разработка FFmpeg ведётся смежно с проектом MPlayer.

Из изменений, добавленных в FFmpeg 4.1, можно выделить:

  • Добавлена возможность использования формата кодирования видео AV1 в контейнерах MP4 и реализован парсер для AV1. AV1 разработан альянсом Open Media (AOMedia) и позиционируется как общедоступный и не требующий оплаты отчислений свободный формат кодирования видео, который заметно опережает H.264 и VP9 по уровню сжатия;
  • Добавлена поддержка реализации TLS на базе библиотеки mbedTLS;
  • Новые кодировщики и декодировщики:
    • Декодировщик формата кодирования звука Sony ATRAC9 (Adaptive Transform Acoustic Coding);
    • Кодировщик и декодировщик формата сжатия звука и видео AVS2, стандартизированного в Китае. Реализация основана на библиотеке libdavs2;
    • Декодировщик для звукового кодека iLBC (Internet Low Bitrate Codec), оптимизированного для передачи голоса по низкоскоростным каналам связи;
    • Кодировщик и декодировщик для звукового кодека pcm vidc;
    • Декодировщик для видеокодека IMM4;
    • Декодировщик для формата кодирования видео Brooktree ProSumer;
    • Декодировщик для формата WinCam Motion Video;
    • Декодировщик для форматов MatchWare Screen Capture и RemotelyAnywhere Screen Capture, используемых при записи содержимого экрана;
    • Для формата h264 реализовна поддержка декодирования таймкода S12M;
    • Представлен распаковщик (demuxer) медиаконтейнеров SER;
    • В декодировщике vc1 задействован алгоритм bit-exact;
  • Новые фильтры:
    • deblock — удаление блочных артефактов из видео;
    • tmix — смешивание следующих друг за другом видеокадров;
    • amplify — усиление разницы между текущим пикселем и пикселями в том же месте из соседних кадров;
    • fftdnoiz — подавление шума в кадрах при помощи фильтра 3D FFT (frequency domain filtering);
    • aderivative и aintegral — вычисление производной и интеграла для звукового потока. Применение одного фильтра после другого позволяет восстановить оригинальный звуковой поток;
    • pal75bars и pal100bars — генерирует цветовые шаблоны на основе рекомендаций EBU PAL с 75% и 100% уровнем цвета;
    • adeclick — удаление импульсных помех из звукового потока, которые заменяются на интерполированные сэмплы, используя авторегрессионное моделирование;
    • adeclip — заменяет повреждённые сэмплы при помощи авторегрессионного моделирования;
    • lensfun — корректирует вносимые объективом искажения, используя библиотеку lensfun;
    • colorconstancy — корректирует цвет объектов в зависимости от цвета освещения;
    • lut1d — применение цветового преобразования 1D LUT к видео;
    • cue и acue — задержка применения фильтров к видео или звуку до наступления указанной временной метки (позиции в потоке);
    • transpose_npp — перестановка местами строк и столбцов в видео;
    • amultiply — объединение двух звуковых потоков;
    • bm3d — подавление шумов в кадрах при помощи алгоритма Block-Matching 3D;
    • acrossover — разделение звукового потока с разбивкой по частотным диапазонам;
    • afftdn — подавление шума в звуковом потоке при помощи быстрого преобразования Фурье (FFT);
    • graphmonitor и agraphmonitor — отображения различной статистики работы видео и звуковых фильтров;
    • yadif_cuda — устранение чересстрочности в видео, используя реализацию алгоритма yadif, ускоренную при помощи CUDA;
    • xstack — совмещение нескольких видео (каждое видео показывается в своей области экрана);
    • sinc — генерация коэффициентов FIR для звукового потока;
    • chromahold — удаление информации о всех цветах за исключением указанного;
    • setparams — установка параметров для кадра, влияющих на работу других фильтров и кодировщиков;
    • vibrance — увеличение или уменьшение цветовой насыщенности;
    • Для фильтров на основе методов глубинного машинного обучения (DNN), таких как srcnn (Super-Resolution Convolutional Neural Network), подготовлен новый бэкенд на основе libtensorflow;

© OpenNet