Данная заметка устарела, более свежая находится тут – Захват видео и звука из OpenGL приложений под Linux.


В поисках утилиты захвата экрана OpenGL-приложения я наткнулся на captury (media-video/captury). Captury не умеет паковать фреймы “налету”, просто пишет их как есть в контейнер своего формата. Но есть утилита, которая умеет работать с этим форматом.

Захват:
[sourcecode language=”bash”]
$ captury –output-dir=./ — your_opengl_application
[/sourcecode]

Для старта захвата видео нужно нажать кнопочку F12 (настройки меняются в /etc/captury.conf, спасибо за подсказку ftrvxmtrx).

Воспроизведение:
[sourcecode language=”bash”]
$ cpsrecode -i capture.cps -o – | mplayer -demuxer y4m –
[/sourcecode]

Кодирование в theora:
[sourcecode language=”bash”]
$ cpsrecode -i capture.cps -o out.ogg -c theora
[/sourcecode]

или

[sourcecode language=”bash”]
$ cpsrecode -i capture.cps -o – | ffmpeg2theora -o out.ogg –
[/sourcecode]