bugle-screenshot — takes screenshots and captures video
filterset screenshot { filename "screenshot.ppm
" key_screenshot "C-A-S-S
" }
filterset screenshotC-V
inactive { video "yes" filename "video.avi
" codec "mpeg4
" bitrate "1000000
" allframes "no
" }
The screenshot
filter-set can be used
in one of two modes, corresponding to the two examples above. In
the first, a particular key-press causes a screenshot to be taken,
which is written to file in ppm(5)
format. In the second, a video stream is captured and encoded to
one of a range of formats with ffmpeg(1).
video
This option controls the mode: either screenshots on request or a video stream. This filter-set supports activation and deactivation, so it is possible to record video only on demand.
filename
The file to which the image/video is written. In the
case of an image, if the filename contains a
%
it is
used as a format string for
sprintf(3) with the frame number passed as the
parameter.
key_screenshot
The key combination used to capture a screenshot.
codec
The codec to use when capturing a video. Refer to the
documentation for ffmpeg(1)
for a list of valid codecs. Some codecs require
special setup and may not work, but common codecs such
as mpeg4
and
huffyuv
should work.
bitrate
The approximate number of bits per second to use for video encoding.
allframes
By default, a frame is captured 30 times per second. If this option is set, every frame is captured. Note that the video file will still play at 30fps, so the speed will vary unless the application has been written to use a fixed time-step between frames for its internal animation (this is a useful way to produce smooth video if the capturing overhead is otherwise too high).
lag
Sets the latency between frame capture and encoding. If GL_EXT_pixel_buffer_object is available, setting this option to a value greater than 1 can help mask readback latency, at the expense of video memory.