Релиз FFmpeg 7.0 Dijkstra

5 апреля 2024 года состоялся релиз открытого мультимедиа-пакета релиз FFmpeg 7.0 под кодовым названием Dijkstra для Linux, Windows и macOS. Предыдущая мажорная версия проекта вышла в ноябре 2023 года.

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

В FFmpeg 7.0 разработчиками проведён крупнейший рефакторинг кода за многие годы, который стал огромным достижением для проекта, включая поддержку multi-threading CLI, демультиплексора DVD-Video, начальную поддержку AOMedia IAMF для модели и форматов иммерсивного звука, средство рендеринга Vulkan для ffplay и многие другие изменения.

По информации OpenNET, основные изменения, дополнения и обновления в коде FFmpeg 7.0:

в утилите командной строки ffmpeg обеспечено параллельное выполнение операций распаковки/упаковки медиаконтейнеров, декодирования, кодирования и применения фильтров;

реализована поддержка кодирования и декодирования видео в формате MPEG-5 (EVC — Essential Video Coding), используя внешнюю библиотеку libxevd;

добавлены распаковщики и упаковщики медиаконтейнеров (demuxer/muxer) для формата QOA (Quite OK Audio), применяемого для передачи звука без потери качества. Утверждается, что декодирование QOA осуществляется быстрее Ogg-Vorbis в три раза при достижении в QOA более высокого качества и уровня сжатия по сравнению с ADPCM;

добавлены распаковщики и упаковщики медиаконтейнеров (demuxer/muxer) для формата IAMF (Immersive Audio Model and Format), определяющего контейнер для распространения объёмного звука. Формат предусматривает передачу дополнительной информации, необходимой для работы алгоритмов воссоздания звуковой сцены и микширования звука, а также учитывает распространение звуковых сигналов в трехмерном пространстве для воссоздания звучания, максимально близкого к естественному. Обеспечена поддержка метаданных IAMF для форматов MP4 и ISOBMFF;

добавлен экспериментальный декодировщик для формата VVC (Versatile Video Coding), известного также как стандарт сжатия видео H.266, разработанный совместно рабочими группами MPEG (ISO/IEC JTC 1) и VCEG (ITU-T), при участии таких компаний, как Apple, Ericsson, Intel, Huawei, Microsoft, Qualcomm и Sony. H.266 идёт на смену H.265 (HEVC) и обеспечивает высокую эффективность передачи и хранения всех экранных разрешений (от SD и HD до 4K и 8K), поддерживает видео с расширенным динамическим диапазоном (HDR, High Dynamic Range) и панорамное видео в режиме 360 градусов;

реализована возможность использования API D3D12VA (Direct 3D 12 Video Encoding) для аппаратного ускорения декодирования форматов H264, HEVC, VP9, AV1, MPEG-2 и VC1;

в утилиту ffplay добавлена поддержка аппаратного ускорения декодирования, используя API Vulkan и libplacebo;

добавлена поддержка протокола Content URI, используемого в платформе Android;

повышены требования к окружению для сборки — для компиляции FFmpeg теперь необходим компилятор с поддержкой стандарта C11. В одном из следующих выпусков в качестве минимально поддерживаемой версии планируют использовать C17;

для кодировщиков на базе QSV (Intel Quick Sync Video) метод управления битретом по умолчанию изменён с VBR (переменный битрейт) на CQP (постоянный битрейт);

добавлен новый распаковщик медиаконтейнеров DVD-Video, основанный на использовании библиотек libdvdnav и libdvdread от проекта VideoLAN;

в реализацию формата flv добавлена возможность передачи метаданных в пакетах (PacketTypeMetadata);

добавлен кодировщик DXV DXT1;

добавлен декодировщик LEAD MCMP;

добавлены упаковщики медиаконтейнеров (muxer) RCWT (Raw Captions with Time) и AEA;

для форматов MP4 и ISOBMFF реализована возможность включения метаданных AVE (Ambient Viewing Environment);

реализована поддержка технологии AFGS1 (AOMedia Film Grain Synthesis 1), используемой в спецификации AV1 Film Grain и предназначенной для повышения эффективности зернистых изображений;

добавлена поддержка статичных (still) изображений в форматах HEIF и AVIF, а также мозаичных статичных изображений;

для формата AV1 реализован профиль Dolby Vision;

обеспечена поддержка проброса метаданных HDR10 при кодировании через библиотеки libx264, libx265 и libsvtav1;

добавлены оптимизации для ускорения работы с форматом HEVC на архитектурах AArch64 и Loongarch. Внесены оптимизации производительности для ускорения кодирования и декодирования форматов AAC, FLAC, JPEG-2000, LPC, RV4.0, SVQ, VC1 и VP8 на системах с архитектурой RISC-V;

добавлен бэкенд dnn для создания фильтров, использующих модели машинного обучения, загружаемые при помощи libtorch;

добавлен bitstream-фильтр showinfo для отладочного вывода информации о пакетах;

добавлен обработчик qrencodesrc для вставки QR-кодов.

20 декабря 2020 года проекту FFmpeg исполнилось 20 лет. Первый коммит для набора свободных библиотек с открытым исходным кодом, которые позволяют записывать, конвертировать и передавать цифровые аудио- и видеозаписи в различных форматах, был написан автором проекта Фабрисом Белларом (Fabrice Bellard) 20 декабря 2000 года. Многие IT-компании, включая Google и YouTube, используют FFmpeg в бэкенде своих проектов и сервисов.

Источник: habr.com

0 0 голоса
Рейтинг новости
0
0
Подписаться
Уведомить о
0 комментариев
Межтекстовые Отзывы
Посмотреть все комментарии