Рекомендуем
VPS на Windows и Linux — от 49 ₽ за 7 дней Быстрый запуск сервера на NVMe для сайтов, ботов и других задач.
Выбрать VPS

В FFmpeg 9.0.2 исправили H.264, HEVC, VVC и обработку MOV

FFmpeg 9.0.2 «Lei» опубликован 18 сентября 2026 года как второй сервисный выпуск ветки 9.0. Релиз исправляет ошибки в декодерах H.264, VP8, HEVC/Vulkan, VVC и CineForm, а обработчик MOV/MP4 получил дополнительные проверки для некорректных метаданных. Ветка 9.0 при этом сохраняет прежний набор возможностей: точечные выпуски FFmpeg предназначены прежде всего для исправлений и стабилизации.

FFmpeg 9.0.2 «Lei»
FFmpeg 9.0.2 «Lei»

H.264 в FFmpeg 9.0.2 получил проверки границ и синхронизации

Один из самых заметных блоков изменений затронул H.264 — формат, который по-прежнему встречается в огромном количестве видеофайлов, камер, архивов и потоков. В FFmpeg 9.0.2 разработчики перенесли проверку корректности данных до их загрузки и исправили обработку граничного значения, способного привести к чтению за пределами ожидаемой области памяти.

Для пользователя такая ошибка редко выглядит как понятное сообщение «проблема в декодере». На экране она может проявляться как сбой при открытии конкретного файла, повреждённый кадр или аварийное завершение программы, которая использует FFmpeg внутри.

Отдельные правки касаются чересстрочного видео. Декодер теперь дожидается обработки обоих полей опорного изображения перед использованием этих данных для direct prediction. При переходе ко второму полю кадра очищается состояние восстановления после ошибок. Ещё одна правка устраняет проблему синхронизации при многопоточном декодировании.

В совокупности эти изменения рассчитаны на редкие и сложные входные последовательности, где ошибка проявляется лишь при определённом порядке кадров, полей и ссылочных изображений.

Vulkan-декодирование HEVC аккуратнее работает со ссылочными кадрами

Аппаратно ускоренный HEVC-декодер через Vulkan получил изменения в логике ссылочных кадров. FFmpeg теперь ограничивает число ссылок отдельно для соответствующих категорий, чтобы внутреннее состояние декодера оставалось согласованным с ограничениями потока.

Исправлен и сценарий, когда изображение уже было пропущено, а в потоке ещё встречаются его оставшиеся slices — части закодированного кадра. Раньше такой фрагмент мог приводить к сообщению об ошибке. В 9.0.2 декодер корректнее распознаёт ситуацию и не трактует оставшиеся части уже пропущенного изображения как новую проблему.

Такой случай особенно характерен для обработки нестандартных или частично повреждённых потоков. Для программ, которые используют Vulkan ради разгрузки CPU при декодировании HEVC, корректность обработки ссылочных кадров напрямую влияет на стабильность всей цепочки воспроизведения или перекодирования.

VVC и CineForm получили правки для ошибок и повреждённых потоков

VVC, также известный как H.266, в FFmpeg 9.0.2 получил изменения в инициализации IBC. IBC расшифровывается как Intra Block Copy: декодер может использовать уже восстановленные области текущего изображения как источник данных для других блоков. В новой версии перед такой инициализацией проверяется область CTU — крупного блока, на которые VVC делит кадр при обработке.

В том же декодере устранена утечка памяти в ветке ошибки. Если pic_arrays_init() завершается неудачно, ранее выделенные таблицы и структуры теперь освобождаются. Для одиночного файла такой дефект может пройти почти незаметно, а в долго работающем сервисе обработки видео повторяющиеся ошибки способны постепенно накапливать занятую память.

CineForm HD, или CFHD, получил серию проверок структуры входного потока. Декодер проверяет номер канала после обработки каждого тега, сбрасывает размеры выделенных полос данных при освобождении буферов и требует, чтобы определённые заголовочные теги находились в ожидаемой части потока до выделения кадрового буфера.

Смысл этих правок проще технических терминов: декодер меньше доверяет входному файлу и раньше отбрасывает сочетания данных, которые нарушают ожидаемую структуру формата.

MOV и MP4 ограничили число ключей метаданных

Отдельный набор изменений пришёл в MOV demuxer — компонент FFmpeg, который разбирает контейнеры MOV и MP4 перед передачей аудио, видео и метаданных декодерам.

В FFmpeg 9.0.2 число записей metadata keys ограничивается размером соответствующего keys atom. Повреждённый файл больше не может объявить заведомо невозможное количество ключей, которое не соответствует объёму данных внутри контейнера. Такой контроль входных значений снижает вероятность некорректного выделения ресурсов и последующих ошибок разбора.

Разработчики убрали и несколько лишних операций обнуления памяти. Один массив больше не заполняется нулями непосредственно перед тем, как его полностью перезаписывают данными из файла. Аналогичная оптимизация касается буфера строки ключа. Каждая такая операция сама по себе мала, но MOV/MP4-разбор выполняется постоянно в медиасерверах, конвертерах и редакторах, поэтому устранение лишней работы уменьшает накладные расходы в горячем пути обработки.

Официальная страница проекта описывает FFmpeg 9.0.2 как актуальный стабильный выпуск ветки 9.0. Исходный код доступен на странице загрузки FFmpeg, а полный перечень изменений собран в Changelog версии 9.0.2.

FFmpeg 9.0.2 сохраняет API-линейку ветки 9.0

В релизе используются версии библиотек libavutil 61.1.102, libavcodec 63.1.102, libavformat 63.1.102, libavdevice 63.1.102, libavfilter 12.1.102, libswscale 10.1.102 и libswresample 7.1.102.

Сам проект разделяет крупные и точечные выпуски довольно жёстко. Крупные версии выходят примерно раз в полгода, а point-релизы внутри стабильной ветки получают выбранные исправления из основной разработки без добавления нового набора функций.

Предыдущий FFmpeg 9.0.1 появился 12 августа 2026 года, а 9.0.2 опубликован 18 сентября. За этот промежуток ветка получила ещё один пакет исправлений вокруг декодеров, контейнеров, памяти и обработки пограничных случаев. По составу изменений 9.0.2 сосредоточен на корректности уже существующих компонентов ветки 9.0.

Ветка 9.0 стала устойчивее к сложным входным данным

FFmpeg 9.0.2 собирает в одном выпуске правки для сценариев с повреждёнными файлами, необычными последовательностями кадров, чересстрочным H.264 и аппаратным декодированием HEVC через Vulkan. Для систем, где FFmpeg автоматически обрабатывает большое количество чужих файлов, именно такие пограничные случаи способны определять стабильность процесса.

Релиз уже доступен в виде исходного кода, а появление готовых пакетов зависит от конкретного дистрибутива и поставщика сборок. Разница между датой публикации исходников и появлением версии в пакетных репозиториях поэтому может сохраняться некоторое время.

При использовании материалов сайта необходимо указывать ссылку на TGLand.ru. Если вы копируете фрагменты текста в интернете, прямая гиперссылка, доступная для индексации поисковыми системами, должна быть размещена в начале материала.

Вам также может понравиться