Gpu-screen-recorder: Difference between revisions
Appearance
m Changed the ShadowPlay link to point to the English version of the Nvidia website, rather than German |
KeenanWeaver (talk | contribs) Add updated features and instructions |
||
| Line 5: | Line 5: | ||
===== Video ===== | ===== Video ===== | ||
* H264 (default | * H264 (default) | ||
* HEVC ( | * HEVC (Optionally with HDR) | ||
* AV1 | * AV1 (Optionally with HDR) | ||
* VP8 | |||
* VP9 | |||
===== Audio ===== | ===== Audio ===== | ||
| Line 13: | Line 15: | ||
* Opus (default) | * Opus (default) | ||
* AAC | * AAC | ||
== Installation == | == Installation == | ||
<syntaxhighlight lang="nix"> | <syntaxhighlight lang="nix"> | ||
programs.gpu-screen-recorder.enable = true; # For | programs.gpu-screen-recorder = { | ||
enable = true; | |||
ui.enable = true; # For overlay | |||
}; | |||
environment.systemPackages = with pkgs; [ | environment.systemPackages = with pkgs; [ | ||
gpu-screen-recorder-gtk # | gpu-screen-recorder-gtk # For 'deprecated' GTK interface | ||
]; | ]; | ||
</syntaxhighlight> | </syntaxhighlight> | ||
Latest revision as of 23:39, 7 September 2026
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.
Supported codecs
Video
- H264 (default)
- HEVC (Optionally with HDR)
- AV1 (Optionally with HDR)
- VP8
- VP9
Audio
- Opus (default)
- AAC
Installation
programs.gpu-screen-recorder = {
enable = true;
ui.enable = true; # For overlay
};
environment.systemPackages = with pkgs; [
gpu-screen-recorder-gtk # For 'deprecated' GTK interface
];
Troubleshooting
libnvidia-fbc.so.1: cannot open shared object file: No such file or directory
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.
{
environment.systemPackages = [
(pkgs.runCommand "gpu-screen-recorder" {
nativeBuildInputs = [ pkgs.makeWrapper ];
} ''
mkdir -p $out/bin
makeWrapper ${pkgs.gpu-screen-recorder}/bin/gpu-screen-recorder $out/bin/gpu-screen-recorder \
--prefix LD_LIBRARY_PATH : ${pkgs.libglvnd}/lib \
--prefix LD_LIBRARY_PATH : ${config.boot.kernelPackages.nvidia_x11}/lib
'')
];
}