Кодировать видео OpenGL, не покидая память графического процессора

Я делаю некоторую предварительную работу, чтобы создать конвейер рендеринга, и я исследую, является ли OpenGL хорошим вариантом для моего случая использования: из языка разметки мне нужно создать видео, в идеале используя opengl, который уже реализует большинство необходимых мне примитивов.

Есть ли способ вместо (или дополнительно) обновления кадрового буфера создать видеофайл mp4 с помощью nvenc без копирования данных между графическим процессором и основной памятью?

1 ответ

Страница nvenc SDK [1] на веб-сайте NVidia предполагает, что это возможно, поскольку текущее графическое изображение заголовка относится к потоковой игре. (Даже если это игра Direct3D, с той же микросхемой внизу.) Быстрый поиск "буфера общего ресурса nvenc с OpenGL" обнаружил несколько людей, которые, очевидно, объединили их.

Работает только на Linux и MS Windows, так что не радуйтесь, если у вас Mac.

Надеюсь это поможет.

Другие вопросы по тегам