In order to capture videos there are at least two options which differ significantly.
Frame output system +
This method consists on outputting an image to a file every frame using the Frame output of Gaia Sky to later gather them to create a video using a video encoder software such as ffmpeg, which works on Windows, Linux and OS X.
F6 to activate the frame output mode and start saving each frame as an image. Use
F6 again to deactivate it. When the frame output mode is active, the icon is displayed at the top-right corner of the screen.
When the frame output system is active, each frame is saved as a
JPEG image to disk. Refer to the
Frame output section to learn how to configure the frame output system.
Once you have the image frames you can encode a video using a
ffmpeg preset (slow, veryslow, fast, etc.) with the following command:
$ ffmpeg -framerate 60 -start_number [start_img_num] -i [prefix]%05d.jpg -vframes [num_images] -s 1280x720 -c:v libx264 -preset [slower|veryslow|placebo] -r 60 [out_video_filename].mp4
Please note that if you don’t want scaling, the
--framerate input framerate,
-r output framerate and
-s resolution settings must match the settings defined in the frame output system preferences in Gaia Sky.
You can also use a constant rate factor
$ ffmpeg -framerate 60 -start_number [start_img_num] -i [prefix]%05d.jpg -vframes [num_images] -s 1280x720 -c:v libx264 -pix_fmt yuv420p -crf 23 -r 60 [out_video_filename].mp4
You need to obviously change the prefix and start number, if any, choose the right resolution, frame rate and preset and modify the output format if you need to.
ffmpeg is quite a complex command which provides a lot of options, so for more information please refer
to the official ffmpeg documentation.
Also, here is a good resource on
encoding videos from image sequences with
OpenGL context recorder¶
There are several available options to record OpenGL rendering to videos, in all systems. Below are some of these listed. These methods, however, will only record the OpenGL scene as it is displayed in the screen and are limited to its resolution.