aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authordec05eba <dec05eba@protonmail.com>2024-02-10 15:45:20 +0100
committerdec05eba <dec05eba@protonmail.com>2024-02-10 15:45:20 +0100
commitaabd64aabb45d52f87f3dd6b255ee6c11ba576dd (patch)
treee4d75cf7428787fc5db3e1d4919bfd1091c1892d
parentc4ba5672b746ed13f87a37085df6e2657f509e0a (diff)
FAQ: glitched video
-rw-r--r--.gitignore2
-rw-r--r--README.md6
-rw-r--r--TODO6
-rw-r--r--src/main.cpp2
4 files changed, 12 insertions, 4 deletions
diff --git a/.gitignore b/.gitignore
index ed1d024..aa01f09 100644
--- a/.gitignore
+++ b/.gitignore
@@ -17,3 +17,5 @@ gsr-kms-server
*.mp4
*.flv
+*.mkv
+*.mov
diff --git a/README.md b/README.md
index 6ac9b09..3e4ab71 100644
--- a/README.md
+++ b/README.md
@@ -116,8 +116,8 @@ You can use the `scripts/save-replay.sh` script to save a replay and by default
If you are using a NVIDIA GPU then it's recommended to set PreserveVideoMemoryAllocations=1 as mentioned in the section below.
## Examples
Look at the [scripts](https://git.dec05eba.com/gpu-screen-recorder/tree/scripts) directory for script examples. For example if you want to automatically save a recording/replay into a folder with the same name as the game you are recording.
-## Issues
-### NVIDIA
+# Issues
+## NVIDIA
Nvidia drivers have an issue where CUDA breaks if CUDA is running when suspend/hibernation happens, and it remains broken until you reload the nvidia driver. To fix this, either disable suspend or tell the NVIDIA driver to preserve video memory on suspend/hibernate by using the `NVreg_PreserveVideoMemoryAllocations=1` option. You can run `sudo extra/install_preserve_video_memory.sh` to automatically add that option to your system.
# Reporting bugs/contributing patches
@@ -147,6 +147,8 @@ edit the video with a video editor. Hevc allows for better video quality (especi
## I get a black bar on the right/bottom in the video
This is mostly an issue on AMD and it's a hardware issue/ffmpeg issue. If you use HEVC video codec then it's an issue in ffmpeg and if you use AV1 then it's an issue in the video encoding unit on certain AMD gpus, see: https://gitlab.freedesktop.org/mesa/mesa/-/issues/9185.
If you get black bars then the workaround is to record with h264 video codec instead (using the -k h264 option).
+## The video is glitched, looks like checkerboard pattern
+This is an issue on some intel integrated gpus on wayland caused by power saving option. Right now the only way to fix this is to record on X11 instead.
# Donations
If you want to donate you can donate via bitcoin or monero.
diff --git a/TODO b/TODO
index e15f703..ef9b633 100644
--- a/TODO
+++ b/TODO
@@ -122,4 +122,8 @@ Mention known issue, capture on intel wayland compressed data glitch.
Add 10 bit record option, h264_10bit, hevc_10bit and av1_10bit.
-Rotate cursor texture properly (around top left origin) \ No newline at end of file
+Rotate cursor texture properly (around top left origin).
+
+Color range doesn't seem to work on nvidia, why?
+
+Setup hardware video context so we can query constraints and capabilities for better default and better error messages. \ No newline at end of file
diff --git a/src/main.cpp b/src/main.cpp
index 31b58d7..f4c15b4 100644
--- a/src/main.cpp
+++ b/src/main.cpp
@@ -2025,7 +2025,7 @@ int main(int argc, char **argv) {
const AVCodec *h265_codec = find_h265_encoder(gpu_inf.vendor, egl.card_path);
if(h265_codec && fps > 60) {
- fprintf(stderr, "Warning: recording at higher fps than 60 with hevc might result in recording at a very low fps. If this happens, switch to h264\n");
+ fprintf(stderr, "Warning: recording at higher fps than 60 with hevc might result in recording at a very low fps. If this happens, switch to h264 or av1\n");
}
// hevc generally allows recording at a higher resolution than h264 on nvidia cards. On a gtx 1080 4k is the max resolution for h264 but for hevc it's 8k.