From af5468410376f6b8cb3a0c6e3fb46636e03299f8 Mon Sep 17 00:00:00 2001 From: dec05eba Date: Thu, 13 Mar 2025 01:38:26 +0100 Subject: Fix screenshot with region not working correctly for some sizes and possibly crashing --- src/encoder/video/vaapi.c | 7 +++++++ 1 file changed, 7 insertions(+) (limited to 'src/encoder/video/vaapi.c') diff --git a/src/encoder/video/vaapi.c b/src/encoder/video/vaapi.c index 3931571..8bb2f08 100644 --- a/src/encoder/video/vaapi.c +++ b/src/encoder/video/vaapi.c @@ -167,6 +167,13 @@ static bool gsr_video_encoder_vaapi_start(gsr_video_encoder *encoder, AVCodecCon } else { video_codec_context->height = FFALIGN(video_codec_context->height, 16); } + } else { + video_codec_context->width = FFALIGN(video_codec_context->width, 2); + video_codec_context->height = FFALIGN(video_codec_context->height, 2); + } + + if(FFALIGN(video_codec_context->width, 2) != FFALIGN(frame->width, 2) || FFALIGN(video_codec_context->height, 2) != FFALIGN(frame->height, 2)) { + fprintf(stderr, "gsr warning: gsr_video_encoder_vaapi_start: black bars have been added to the video because of a bug in AMD drivers/hardware. Record with h264 codec instead (-k h264) to get around this issue\n"); } if(video_codec_context->width < 128) -- cgit v1.2.3-70-g09d2