aboutsummaryrefslogtreecommitdiff
path: root/src/capture/kms.c
diff options
context:
space:
mode:
authordec05eba <dec05eba@protonmail.com>2024-11-21 00:25:56 +0100
committerdec05eba <dec05eba@protonmail.com>2024-11-21 00:25:56 +0100
commit02673c46445a78324416e08ec61284012f7bcc8d (patch)
tree54cf80ba361b6981cdecebe74e89c8b89dd8680a /src/capture/kms.c
parent68c9781f44bddc7256677668b559cd02f29bb059 (diff)
Fix portal capture on broken amd drivers: fallback to opengl copy instead of vaapi on known buggy mesa version
Diffstat (limited to 'src/capture/kms.c')
-rw-r--r--src/capture/kms.c4
1 files changed, 4 insertions, 0 deletions
diff --git a/src/capture/kms.c b/src/capture/kms.c
index c85811e..fcf3b85 100644
--- a/src/capture/kms.c
+++ b/src/capture/kms.c
@@ -224,6 +224,10 @@ static int gsr_capture_kms_start(gsr_capture *cap, AVCodecContext *video_codec_c
video_codec_context->height = FFALIGN(self->params.output_resolution.y, 2);
}
+ self->fast_path_failed = self->params.egl->gpu_info.vendor == GSR_GPU_VENDOR_AMD && !gl_driver_version_greater_than(self->params.egl, 24, 0, 9);
+ if(self->fast_path_failed)
+ fprintf(stderr, "gsr warning: gsr_capture_kms_start: your amd driver (mesa) version is known to be buggy (<= version 24.0.9), falling back to opengl copy\n");
+
frame->width = video_codec_context->width;
frame->height = video_codec_context->height;