Skip to content
No description, website, or topics provided.
Branch: master
Clone or download
Type Name Latest commit message Commit time
Failed to load latest commit information.
proto support multiple outputs Nov 1, 2018
src Set sw_format in the hardware device context to NV12 Mar 19, 2019
LICENSE add LICENSE Feb 25, 2019 add vaapi codec support Mar 19, 2019


wf-recorder is a utility program for screen recording of wlroots-based compositors (more specifically, those that support wlr-screencopy-v1 and xdg-output). Its dependences are ffmpeg, wayland-client and wayland-protocols.



Arch users can use wf-recorder-git from the AUR.

yay -S wf-recorder-git 

from source

git clone && cd wf-recorder
meson build --prefix=/usr --buildtype=release
ninja -C build

Now you can just run ./build/wf-recorder or install it with sudo ninja -C build install.


Use -f <filename> to specify the output file. In case of multiple outputs, you'll first be prompted to select the output you want to record. If you know the output name beforehand, you can use the -o <output name> option.

To select a specific part of the screen you can either use the -g <geometry>, or use slurp for interactive selection of the area

wf-recorder -g "$(slurp)"

to select and limit the recording to a part of the screen.

To specify a codec, use the -c <codec> option. To modify codec parameters, use -p <option_name>=<option_value>

To use gpu encoding, use a VAAPI codec (for ex. h264_vaapi) and specify a GPU device to use with the -d option:

wf-recorder -f test-vaapi.mkv -c h264_vaapi -d /dev/dri/renderD128
You can’t perform that action at this time.