ffcast - screencast an interactively selected region
- ffcast [<options>] % [<command> [<args>]]
- ffcast [<options>] [<command> [<args>] [--] [<args>]]
ffcast is a thin glue between interactive region selection and command line tools that accept numerical geometry parameters. It makes passing geometry parameters to command line tools as easy as a mouse click. Screencasting tools are typical examples of such command line tools.
Typically, ffcast prompts the user to select a screen region and injects the geometry parameters thereof into the arguments of <command>, and then executes the resultant command line.
- -h,--help
-
Print help message, then exit.
- -l
-
List commands recognized by the double hyphen syntax, then exit.
- -p
-
Print geometry of the selected region and exit without executing <command>. The dimensions are not trimmed.
- -s
-
Prompt to select a region.
- -w
-
Prompt to select a window.
- -f
-
Include window frame in the selected application.
- -v
-
Be more verbose.
- -q
-
Be less verbose.
- -m <n>
-
Trim both dimensions of the region to be divisible by <n>. By default, both dimensions are trimmed to be divisible by
2
, which is required by x264. A value of16
may help when encoding to most video codecs. A value of1
disables trimming. - -x <n>
-
Select a Xinerama head of ID <n>. Multiple heads can be specified either as a comma-separate list, or by repeating this option. Use
list
to get a list of head IDs and the corresponding geometry parameters.
The format string syntax defines the following format strings:
- %d
-
DISPLAY
- %h
-
Height
- %w
-
Width
- %x
-
Left offset
- %y
-
Top offset
- %X
-
Right offset
- %Y
-
Bottom offset
- %%
-
A literal %
Use the recognized command ffmpeg in the double hyphen syntax, with debug messages printed to stderr:
ffcast -vv -s ffmpeg -r 30 -vcodec libx264 out.mkv
Screencast fullscreen on display :1
, using the default ffmpeg command line and saving to a mkv file in $HOME:
DISPLAY=:1 ffcast
lolilolicon <lolilolicon@gmail.com>
Javier Lopez <m@javier.io>
ffmpeg(1), avconv(1), byzanz-record(1), recordmydesktop(1), X(7)