Инструментарий для создания видеопотока с процедурно генерируемым содержимым

Есть желание создать software для генерирования видеопотока с процедурно создаваемым содержимым.

Главное, что приходит в голову - particle emitter, к примеру:

1

,

2

.

Подскажите, какой инструментарий адекватно взять для создания software, генерирующего видеопоток с таким содержимым, в том числе в плане затрат на освоение. Может ли это сделать OpenGL? Может ли DirectX? Как в освоении по затратам DirectX по сравнению с OpenGL? Или адекватнее это делать на каком-то другом уровне?