This is an automated email from the git hooks/post-receive script. Git pushed a commit to branch master in repository ffmpeg.
commit 7b6170a9a582dbb71c61465e143f308e5bed9254 Author: Niklas Haas <[email protected]> AuthorDate: Sun Mar 15 13:15:27 2026 +0100 Commit: Niklas Haas <[email protected]> CommitDate: Sat Mar 28 18:50:14 2026 +0100 tests/swscale: don't hard-error on low bit depth SSIM loss This is an expected consequence of the fact that the new ops code does not yet do error diffusion, which only really affects formats like rgb4 and monow. Specifically, this avoids erroring out with the following error: loss 0.214988 is WORSE by 0.0111071, ref loss 0.203881 SSIM {Y=0.745148 U=1.000000 V=1.000000 A=1.000000} When scaling monow -> monow from 96x96 to 128x96. We can remove this hack again in the future when error diffusion is implemented, but for now, this check prevents me from easily testing the scaling code. Sponsored-by: Sovereign Tech Fund Signed-off-by: Niklas Haas <[email protected]> --- libswscale/tests/swscale.c | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/libswscale/tests/swscale.c b/libswscale/tests/swscale.c index 03e07918c8..338529c14b 100644 --- a/libswscale/tests/swscale.c +++ b/libswscale/tests/swscale.c @@ -356,7 +356,16 @@ static void print_results(const AVFrame *ref, const AVFrame *src, const AVFrame } if (ref_r && r->loss - ref_r->loss > 1e-4) { - const int bad = r->loss - ref_r->loss > 1e-2; + /** + * The new scaling code does not (yet) perform error diffusion for + * low bit depth output, which impacts the SSIM score slightly for + * very low bit-depth formats (e.g. monow, monob). Since this is an + * expected result, drop the badness from an error to a warning for + * such cases. This can be removed again once error diffusion is + * implemented in the new ops code. + */ + const int dst_bits = av_pix_fmt_desc_get(dst->format)->comp[0].depth; + const int bad = r->loss - ref_r->loss > 1e-2 && dst_bits > 1; const int level = bad ? AV_LOG_ERROR : AV_LOG_WARNING; const char *worse_str = bad ? "WORSE" : "worse"; av_log(NULL, level, _______________________________________________ ffmpeg-cvslog mailing list -- [email protected] To unsubscribe send an email to [email protected]
