PR #20603 opened by James Almer (jamrial)
URL: https://code.ffmpeg.org/FFmpeg/FFmpeg/pulls/20603
Patch URL: https://code.ffmpeg.org/FFmpeg/FFmpeg/pulls/20603.patch

Should fix issue #20589.


>From 37df42b97f8c6a0fb05c208276a46feb5512a493 Mon Sep 17 00:00:00 2001
From: James Almer <[email protected]>
Date: Wed, 24 Sep 2025 13:39:37 -0300
Subject: [PATCH] avfilter/vf_scale: don't atempt to rescale AV_NOPTS_VALUE

Should fix issue #20589.

Signed-off-by: James Almer <[email protected]>
---
 libavfilter/framesync.c | 2 +-
 libavfilter/vf_scale.c  | 2 +-
 2 files changed, 2 insertions(+), 2 deletions(-)

diff --git a/libavfilter/framesync.c b/libavfilter/framesync.c
index 0d5779f830..8fc6d9d4a6 100644
--- a/libavfilter/framesync.c
+++ b/libavfilter/framesync.c
@@ -248,7 +248,7 @@ static void framesync_inject_frame(FFFrameSync *fs, 
unsigned in, AVFrame *frame)
 
     av_assert0(!fs->in[in].have_next);
     av_assert0(frame);
-    pts = av_rescale_q(frame->pts, fs->in[in].time_base, fs->time_base);
+    pts = frame->pts == AV_NOPTS_VALUE ? frame->pts : av_rescale_q(frame->pts, 
fs->in[in].time_base, fs->time_base);
     frame->pts = pts;
     fs->in[in].frame_next = frame;
     fs->in[in].pts_next   = pts;
diff --git a/libavfilter/vf_scale.c b/libavfilter/vf_scale.c
index c0cd1b96c6..ffb5a7bd1f 100644
--- a/libavfilter/vf_scale.c
+++ b/libavfilter/vf_scale.c
@@ -951,7 +951,7 @@ static int do_scale(FFFrameSync *fs)
         goto err;
 
     av_assert0(out);
-    out->pts = av_rescale_q(fs->pts, fs->time_base, outlink->time_base);
+    out->pts = fs->pts == AV_NOPTS_VALUE ? fs->pts : av_rescale_q(fs->pts, 
fs->time_base, outlink->time_base);
     return ff_filter_frame(outlink, out);
 
 err:
-- 
2.49.1

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

Reply via email to