NVIDIA выпустила Video Codec SDK 13.1 с zero-copy-транскодированием и точным поиском кадров

NVIDIA представила Video Codec SDK 13.1 — набор API и примеров для аппаратного кодирования и декодирования видео на GPU. Обновление добавляет транскодирование без промежуточного копирования кадров, иерархические B-кадры для AV1 и покадровый доступ с учётом структуры GOP.

NVIDIA выпустила Video Codec SDK 13.1. В обновлении переработаны примеры конвейеров, использующих аппаратные блоки кодирования NVENC и декодирования NVDEC.

Новое приложение AppTransZeroCopy позволяет NVDEC и NVENC работать с общим пулом массивов CUDA CUarray. Кадры больше не требуется копировать и преобразовывать между отдельными буферами декодера и кодировщика. По данным NVIDIA, это снижает нагрузку на потоковые мультипроцессоры GPU, расход видеопамяти и пропускной способности памяти, оставляя больше ресурсов для обработки видео и запуска моделей машинного обучения.

Модульная архитектура конвейера транскодирования в Video Codec SDK 13.1

Для AV1 появился режим иерархических ссылочных кадров с поддержкой 1, 3, 7, 15 или 31 B-кадра вместо прежнего максимума в семь кадров. Компания указывает, что режим улучшает использование временной избыточности без заметного снижения производительности, но требует больше видеопамяти. Поддержку аналогичного режима для H.264 и HEVC планируется добавить в будущих версиях драйверов.

Иерархическая структура ссылок между B-кадрами AV1

Класс NvVideoDecoder получил покадровый поиск: SDK находит ближайший предшествующий IDR-кадр и обрабатывает только необходимые для достижения цели ссылочные кадры. Для H.264 и HEVC также стали доступны данные по каждому макроблоку, включая параметры квантования, тип блока и векторы движения.

Сравнение последовательного декодирования и поиска кадра с учётом GOP

В состав релиза вошли улучшения работы с многовидовым HEVC, модульные многопоточные примеры транскодирования и официальное окружение разработки на базе Docker. Контейнер фиксирует версии CUDA, Vulkan SDK, FFmpeg и Ubuntu и предназначен для воспроизводимой сборки и тестирования примеров SDK.

Источник: developer.nvidia.com

Связь с редакцией