aitech-lab / gpu-rendering

serverside rendering on gpu

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Эксперименты по GPU ускоренной визуализации.

Задача

В рамках данного проекта предполагается попытатся решить задачу быстрой персонофикации видео. Большинство промышленных инструментов видео-компоузинга, таких как after-effects, черезвычайно тяжелы и ресурсоемки. Сборка видео в них, даже при поддержке GPU, часто занимает многие минуты или даже часы.

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

При автоматизации подобных процессов, первая возникающая мысль - использовать для финальной сборки видео ffmpeg, этот инструмент незаменим при коневертировании видео, но он плохо подходит для сложной визуалиации и анимации. Да и ускоряется на gpu незначительно.

Когда речь заходит о получении видео через gpu rendering многие упомянают virtualgl - библиотеку, позволющую запускать opengl приложения через VNC. Её недостатком является привязка к Х’ам.

OpenGL headless renderer

Современные видео-карты позволяют осуществлять рендер изображений без из их вывода на экран.

Цели

  • speed - как минимум реалтайм
  • blender export - экспорт сцен
  • headless - работа на серверах
  • GPU - рендер на видео картах
  • video / ffmpeg
    • stream - лайв стрим сцен
    • h264 - экспорт видеофайла
  • lua - скриптинг анимации
  • glsl - шейдер эффекты для сцен bloom/dof

node-based editors

About

serverside rendering on gpu


Languages

Language:C 97.0%Language:Shell 1.0%Language:CMake 0.8%Language:GLSL 0.7%Language:C++ 0.3%Language:Objective-C 0.2%