Gpu-screen-recorder
gpu-screen-recorder is a screen recorder that has minimal impact on system performance by recording your monitor using the GPU only, similar to shadowplay on windows. It is the fastest screen recording tool for Linux.
Supported codecs
Video
- H264 (default on Intel)
- HEVC (default on AMD and NVIDIA)
- AV1
Audio
- Opus (default)
- AAC
- FLAC
Installation
environment.systemPackages = with pkgs; [
gpu-screen-recorder # CLI
gpu-screen-recorder-gtk # GUI
];
Troubleshooting
The possibility of this error arising exists if you possess an NVIDIA graphics card, as the package does not include the NVIDIA X11 libraries in its wrapper by default.
- Make sure your drivers are installed.
- Install the missing the NVENC patch for your card. nvidia-patch is a great overlay which you can use
- Override the package build inputs and add the library to the wrapper.
(gpu-screen-recorder.overrideAttrs (oldAttrs: rec { buildInputs = with pkgs; [ xorg.libXcomposite libpulseaudio ffmpeg wayland libdrm libva xorg.libXrandr linuxKernel.packages.linux_xanmod_stable.nvidia_x11 ]; postInstall = '' install -Dt $out/bin gpu-screen-recorder gsr-kms-server mkdir $out/bin/.wrapped mv $out/bin/gpu-screen-recorder $out/bin/.wrapped/ makeWrapper "$out/bin/.wrapped/gpu-screen-recorder" "$out/bin/gpu-screen-recorder" \ --prefix LD_LIBRARY_PATH : ${pkgs.libglvnd}/lib \ --prefix LD_LIBRARY_PATH : ${pkgs.linuxKernel.packages.linux_xanmod_stable.nvidia_x11}/lib \ --prefix PATH : $out/bin ''; }))