PR #21533 opened by mkver
URL: https://code.ffmpeg.org/FFmpeg/FFmpeg/pulls/21533
Patch URL: https://code.ffmpeg.org/FFmpeg/FFmpeg/pulls/21533.patch

Fixes ticket #21486.


>From 137f500077a76dea6bf5e768d20a0929a097386f Mon Sep 17 00:00:00 2001
From: Andreas Rheinhardt <[email protected]>
Date: Wed, 21 Jan 2026 00:28:35 +0100
Subject: [PATCH] avcodec/motion_est: Fix left shifts of negative numbers

Fixes ticket #21486.

Signed-off-by: Andreas Rheinhardt <[email protected]>
---
 libavcodec/motion_est.c | 4 +---
 1 file changed, 1 insertion(+), 3 deletions(-)

diff --git a/libavcodec/motion_est.c b/libavcodec/motion_est.c
index 33166f2a90..8ca6f16a7c 100644
--- a/libavcodec/motion_est.c
+++ b/libavcodec/motion_est.c
@@ -1082,11 +1082,9 @@ int ff_pre_estimate_p_frame_motion(MPVEncContext *const 
s,
     get_limits(s, 16*mb_x, 16*mb_y, 0);
     c->skip=0;
 
-    P_LEFT[0]       = s->p_mv_table[xy + 1][0];
+    P_LEFT[0]       = FFMAX(s->p_mv_table[xy + 1][0], c->xmin * (1 << shift));
     P_LEFT[1]       = s->p_mv_table[xy + 1][1];
 
-    if(P_LEFT[0]       < (c->xmin<<shift)) P_LEFT[0]       = (c->xmin<<shift);
-
     /* special case for first line */
     if (s->c.first_slice_line) {
         c->pred_x= P_LEFT[0];
-- 
2.52.0

_______________________________________________
ffmpeg-devel mailing list -- [email protected]
To unsubscribe send an email to [email protected]

Reply via email to