Новости · Видео · Софт

VapourSynth R80: GPU-ускорение видеообработки через Vulkan 1.4 вышло из бета

VapourSynth — свободный скриптовый фреймворк для пофреймовой обработки видео, который используют энтузиасты и профессионалы для денойзинга, апскейлинга, цветокоррекции и кодирования перед сохранением финального файла. 16 сентября 2026 вышла версия R80: GPU-поддержка через Vulkan 1.4 впервые переведена в статус production, все встроенные фильтры получили полный паритет с CPU-версиями.

22 сентября 2026 Редакция Loadfile Чтение 5 мин
GPU-чип с видеолентами и цифровыми волнами на тёмном фоне — VapourSynth R80

Коротко: 16 сентября 2026 вышел VapourSynth R80. Все встроенные core-фильтры теперь работают на GPU через Vulkan 1.4 (production, не экспериментальный режим). BestSource получил полную GPU-реализацию; порты KNLMeans и BM3D ожидались в течение нескольких дней. Добавлена поддержка freethreading Python и исправлены ошибки компиляции с типом _Float16.

Что такое VapourSynth и почему это важно

VapourSynth — это скриптовый фреймворк для покадровой обработки видео. В отличие от линейного монтажа, он позволяет применять цепочки фильтров к каждому кадру видеофайла по отдельности, не перекодируя весь файл заново без необходимости. Типичный сценарий использования: загрузить исходный MKV- или MP4-файл, прогнать его через цепочку фильтров (удаление шума, повышение резкости, апскейл с помощью нейросети) и передать результат энкодеру — например, FFmpeg — для записи финального файла.

Фреймворк написан на C++ с Python API и поддерживает Windows, Linux и macOS. До R80 все вычисления выполнялись на CPU — даже фильтры на основе нейросетей. GPU-поддержка была помечена как экспериментальная начиная с R79, теперь же её перевели в статус production.

GPU через Vulkan 1.4: что изменилось в R80

Главное новшество R80 — полная GPU-поддержка через API Vulkan 1.4. По данным официального блога vapoursynth.com, все встроенные core-фильтры теперь имеют GPU-версии с полным паритетом функциональности относительно CPU-аналогов. Ограничение одно: GPU-фильтры не принимают входные данные с переменным форматом или переменным разрешением — только фиксированные параметры.

Для работы с GPU-узлами введены две функции: std.GPUUpload() загружает кадры из CPU-памяти в VRAM, а std.GPUDownload() возвращает их обратно. Это позволяет строить гибридные конвейеры: часть фильтров работает на CPU, часть — на GPU. Управление объёмом видеопамяти выполняется через max_vram_cache_size().

Совместимость GPU

Vulkan 1.4 поддерживают практически все современные видеокарты. Авторы указывают, что на Linux это требование может быть выполнено оборудованием почти десятилетней давности. Интегрированная графика тоже поддерживается, однако из-за меньшей пропускной способности памяти её производительность в вычислительных задачах ниже, чем у дискретных GPU.

Важная деталь архитектуры: R80 поддерживает работу с одним GPU одновременно. Разработчики объясняют это стремлением снизить сложность реализации на начальном этапе. Фильтры, принимающие несколько входных потоков, требуют, чтобы все потоки были либо только CPU-узлами, либо только GPU-узлами — смешивать нельзя.

BestSource и ожидаемые плагины

BestSource — плагин для точного покадрового декодирования видеофайлов (MKV, MP4, AVI и других контейнеров) с использованием FFmpeg под капотом. В R80 он получил полную реализацию GPU-узлов: теперь декодированные кадры могут передаваться напрямую в VRAM без лишних копирований через системную память.

На момент релиза авторы анонсировали скорые GPU-порты двух популярных плагинов — KNLMeans (денойзинг на базе нелокального среднего) и BM3D (денойзинг блочным сопоставлением). Оба активно применяются при реставрации старых видеозаписей и подготовке исходников перед кодированием в AV1 или H.265. Читайте также наш материал о аппаратном кодировании AV1 через Mesa и WSL.

Интероперабельность с CUDA-плагинами реализована через механизм exported memory и семафорные хэндлы — то есть плагины, написанные под CUDA, теоретически смогут обмениваться кадрами с Vulkan-фильтрами без перехода через CPU. По прогнозу разработчиков, разрыв в производительности между Vulkan и CUDA будет сокращаться по мере появления новых расширений Vulkan в течение ближайших двух-трёх лет.

Freethreading Python и другие изменения

R80 добавляет поддержку freethreading Python — режима без глобальной блокировки интерпретатора (GIL), появившегося в CPython 3.13. Это позволяет VapourSynth-скриптам запускаться в многопоточных Python-окружениях без ручного управления блокировками.

Помимо этого, исправлены ошибки компиляции на платформах, где тип _Float16 недоступен, — актуально для некоторых конфигураций Linux с нестандартными тулчейнами.

Как скачать VapourSynth R80

Дистрибутивы для Windows, Linux и macOS доступны на официальной странице релизов GitHub: github.com/vapoursynth/vapoursynth — Release R80. Пользователи Linux могут также получить обновление через PyPI: pip install VapourSynth. Для полноценной GPU-поддержки необходим драйвер видеокарты с поддержкой Vulkan 1.4.

VapourSynth широко используется совместно с FFmpeg для подготовки видеоматериала к финальному кодированию — подробности об обновлении самого FFmpeg читайте в нашем обзоре FFmpeg 9.0.2. Если вы хотите разобраться с форматами видеофайлов, которые обрабатывает VapourSynth, начните со справочника форматов Loadfile.

Источники

Читайте также