LinuxCommandLibrary

silentcast

Record and replay terminal sessions

TLDR

Launch silentcast

$ silentcast
copy

Launch silentcast on a specific display
$ silentcast --display=[display]
copy

SYNOPSIS

silentcast [options] [output_file]

Examples:
silentcast -r -o my_screencast.webm
silentcast -g 1280x720+100+50 -f 25 -a default -o presentation.mp4

PARAMETERS

-o, --output file
    Specifies the output file path for the recorded video (e.g., video.webm). If not specified, a default filename might be used or output written to stdout depending on the backend.

-r, --region
    Allows interactive selection of the screen area to record using an external tool like xrectsel. This option pauses execution until a region is selected graphically.

-g, --geometry WxH+X+Y
    Manually defines the recording area's dimensions and position (e.g., 1920x1080+0+0 for a full HD screen starting at top-left). Overrides --region if both are used.

-f, --framerate fps
    Sets the frames per second for the recording (e.g., 30 for 30 FPS). Default is often 25 or 30, affecting smoothness and file size.

-a, --audio source
    Specifies an audio input source to include sound in the recording (e.g., hw:0,0 or default). Requires appropriate audio backend setup and permissions.

-c, --codec codec
    Defines the video codec to use for encoding (e.g., libvpx-vp9 for WebM, libx264 for MP4). The availability depends on the installed backend encoder.

-q, --quality level
    Sets the video quality level, typically a numerical value or preset where higher means better visual fidelity but potentially larger file size.

-d, --display display
    Specifies the X display to capture from (e.g., :0.0), useful in multi-monitor setups or remote X sessions.

-h, --help
    Displays a comprehensive help message with all available options and examples for silentcast.

-v, --version
    Shows the version information of the silentcast utility and exits.

DESCRIPTION

silentcast is a minimalistic yet powerful screen recording utility designed for Linux systems. It provides a straightforward way to capture screen activity, including mouse movements, clicks, and window interactions. Unlike more complex screencasting software, silentcast focuses on simplicity and efficiency, making it ideal for creating quick tutorials, demonstrations, or bug reports.

It typically integrates with backend video encoders like FFmpeg or avconv to produce high-quality, compressed video files, often in formats like WebM or MP4. Users can define a specific recording area, set the frame rate, and optionally include audio input from a microphone. Its command-line interface, combined with the ability to select regions graphically, offers flexibility for various screen capture needs without an overwhelming set of features.

CAVEATS

silentcast relies heavily on external dependencies for its core functionality. It requires a powerful multimedia framework like FFmpeg or avconv for video encoding and typically xrectsel (or a similar tool) for interactive screen region selection. These dependencies must be installed and properly configured on the system for silentcast to function correctly. It is primarily designed for X11 environments; Wayland support might be limited or require specific workarounds.

DEPENDENCIES

To use silentcast, ensure you have FFmpeg (or avconv) installed for video encoding. For interactive region selection with the -r option, a utility like xrectsel is also typically required. Missing dependencies will prevent silentcast from operating correctly.

RECORDING FLOW

The typical usage flow involves executing the silentcast command, often with the -r (region) option. You then interactively select the desired screen area using your mouse. Once the selection is made, recording begins immediately. To stop recording, you usually press Ctrl+C in the terminal where silentcast is running, or it might automatically stop after a predefined duration depending on the version or options used. The recorded video file will then be saved to the specified output path.

HISTORY

silentcast emerged as a lightweight alternative for screencasting on Linux, focusing on a minimal interface and leveraging existing powerful multimedia tools like FFmpeg. Its development aimed to provide a quick, no-frills method for capturing desktop activity without the overhead of more complex GUI-based applications. While not as feature-rich as some contemporaries, its strength lies in its simplicity and effectiveness for basic screen recording tasks, making it popular among users who prefer command-line workflows or need a reliable, low-resource option. It fills a niche for users valuing simplicity over extensive features.

SEE ALSO

ffmpeg(1), xrectsel(1), simplescreenrecorder(1), kazam(1), recordmydesktop(1)

Copied to clipboard