После семи месяцев разработки опубликован мультимедиа-пакет FFmpeg 8.1, включающий набор приложений и коллекцию библиотек для операций над различными мультимедиа-форматами (запись, преобразование и декодирование звуковых и видеоформатов). Пакет написан на языке Си и распространяется под лицензиями LGPL и GPL.
Среди изменений в FFmpeg 8.1:
- Добавлены парсер, кодировщик и декодировщик, а также упаковщик и распаковщик мультимедийных контейнров (muxer/demuxer), для формата изображений JPEG XS, который позиционируется как легковесная система кодирования изображений, обеспечивающая минимальные задержки при кодировании и декодировании, и ориентированная на оптимизацию передачи последовательностей изображений очень высокого качества (до 8K). JPEG XS позволяет существенно снизить необходимую пропускную способность канала связи без заметных для человеческого глаза потерь качества. Реализация основана на библиотеке libsvtjpegxs.
- Добавлен экспериментальный декодировщик для формата кодирования звука xHE-AAC (High-Efficiency Advanced Audio Coding) со схемой объёмного звука Mps212 (MPEG Surround с раскладкой каналов 212). xHE-AAC используется в потоковом вещании Netflix и задействован в технологиях цифрового радиовещания Digital Radio Mondiale. Кодек примечателен поддержкой широкого диапазона битрейта (от 12 до 300 kbit/s), высокой степенью сжатия, средствами воспроизведения с постоянной громкостью, обеспечением высокой чёткости при любых уровнях громкости, дополнительными профилями управления динамическим диапазоном при прослушивании в шумных местах и добавлением метаданных, позволяющих восстанавливать потери на принимающей стороне.
- На базе библиотеки libmpeghdec реализован декодировщик для интерактивного и объёмного звука в формате NGA (Next Generation Audio), определённого в стандарте кодирования звука и видео MPEG-H.
- Добавлена поддержка упаковки и распаковки пространственного звука в формате IAMF (Immersive Audio Model and Formats) с объёмным звучанием в режиме Ambisonics, учитывающем распространение звука не только в горизонтальной плоскости, но и в вертикальной (для определения сверху или снизу источник звука).
- Добавлена поддержка разбора и перенаправления метаданных в формате LCEVC (Low Complexity Enhancement Video Coding), реализующем дополнительный слой с метаданными поверх штатных кодеков для улучшения качества видео. Добавлена поддержка экспорта слоёв улучшения качества LCEVC в мультимедийные контейнеры MPEG-TS (MPEG Transport Stream).
- На базе графического API Vulkan реализованы кодировщик и декодировщик для кодека Apple ProRes, а также декодировщик для применяемого в кинопроизводстве формата раздельной передачи кадров DPX (Digital Picture Exchange). Реализации на базе API Vulkan примечательны значительным повышением производительности за счёт аппаратного ускорения, распараллеливания операций и задействования вычислительных шейдеров. Проведена оптимизация реализаций кодеков на основе AI Vulkan. Для ускорения инициализации кодеков реализована возможность использование уже скомпилированных шейдеров GLSL, без необходимости их компиляции во время работы.
- В библиотеке swscale (Software Scaler), применяемой в FFmpeg для программного масштабирования и преобразования цветов, реализован бэкенд, использующий для ускорения выполнения операций графический API Vulkan.
- Добавлены варианты кодировщиков форматов H.264 и AV1, использующие
API D3D12 (Direct3D 12) для аппаратного ускорения кодирования. - Добавлен вариант кодировщика формата H.264/HEVC, использующий доступные в чипах Rockchip средства аппаратного кодирования видео.
- Добавлены распаковщики (demuxer) мультимедийных контейнеров в форматах HXVS и HXVT, применяемых в IP-камерах.
- Реализован парсер для метаданных в формате EXIF и сопутствующий API для разбора метаданных.
- В утилиту ffprobe добавлена опция «-codec» («-c») для выбора определённой реализации декодировщика.
- В утилиту ffmpeg добавлена поддержка мозаичного режима (tiled) хранения изображений в формате HEIF (когда очень большое изображение сохраняется в форме набора из более мелких изображений).
- Удалён старый обработчик протокола HLS.
- Новые фильтры:
- drawvg для вывода векторной графики поверх видеокадров, используя библиотеку libcairo.
- vpp_amf для изменения размера видео и преобразования цветового пространства, используя AMD Advanced Media Framework для аппаратного ускорения.
- vf_scale_d3d12, vf_deinterlace_d3d12, vf_mestimate_d3d12 для масштабирования, деинтерлейсинга и анализа движения на видео, используя для аппаратного ускорения графический API Direct3D 12.
- gfxcapture для захвата содержимого окон и экрана на платформе Windows при помощи API Windows.Graphics.Capture.
- Добавлен bitstream-фильтр для метаданных LCEVC.
Источник: http://www.opennet.ru/opennews/art.shtml?num=65004
