This is an automated email from the git hooks/post-receive script. Git pushed a commit to branch master in repository ffmpeg.
commit a621ef4291148739e6a301ac5e7aee839c5d0933 Author: Timo Rothenpieler <[email protected]> AuthorDate: Fri Aug 14 23:52:00 2026 +0200 Commit: Timo Rothenpieler <[email protected]> CommitDate: Thu Aug 20 12:09:22 2026 +0000 avfilter/vf_scale_cuda: consider chroma subsampling for scaling decisions --- libavfilter/vf_scale_cuda.c | 15 ++++++++++++--- 1 file changed, 12 insertions(+), 3 deletions(-) diff --git a/libavfilter/vf_scale_cuda.c b/libavfilter/vf_scale_cuda.c index 7b001c9f5b..36c53288be 100644 --- a/libavfilter/vf_scale_cuda.c +++ b/libavfilter/vf_scale_cuda.c @@ -379,11 +379,16 @@ static av_cold void cudascale_setup_passes(AVFilterContext *ctx) if (!s->use_filters) return; - if (inlink->w != outlink->w && inlink->h != outlink->h) { + const int scale_x = inlink->w != outlink->w || + s->in_desc->log2_chroma_w != s->out_desc->log2_chroma_w; + const int scale_y = inlink->h != outlink->h || + s->in_desc->log2_chroma_h != s->out_desc->log2_chroma_h; + + if (scale_x && scale_y) { /* Always perform the horizontal scaling pass first */ s->pass_x = FILTER_TMP; s->pass_y = FILTER_OUT; - } else if (inlink->w != outlink->w) { + } else if (scale_x) { s->pass_x = FILTER_OUT; } else { s->pass_y = FILTER_OUT; @@ -444,7 +449,11 @@ static av_cold int init_processing_chain(AVFilterContext *ctx, int in_width, int if (s->interp_algo == INTERP_ALGO_NEAREST) { s->use_filters = 0; - } else if (s->use_filters < 0 && (out_width < in_width || out_height < in_height)) + } else if (s->use_filters < 0 && ( + out_width < in_width || out_height < in_height || + AV_CEIL_RSHIFT(out_width, s->out_desc->log2_chroma_w) < AV_CEIL_RSHIFT(in_width, s->in_desc->log2_chroma_w) || + AV_CEIL_RSHIFT(out_height, s->out_desc->log2_chroma_h) < AV_CEIL_RSHIFT(in_height, s->in_desc->log2_chroma_h) + )) s->use_filters = 1; /* downscaling; needed for anti-aliasing */ else if (s->use_filters < 0) s->use_filters = 0; -- To stop receiving notification emails like this one, please contact [email protected]. _______________________________________________ ffmpeg-cvslog mailing list -- [email protected] To unsubscribe send an email to [email protected]
