This is an automated email from the git hooks/post-receive script.

Git pushed a commit to branch master
in repository ffmpeg.

commit 6b7fd40e2519418fce5208c84b799c705ab3abda
Author:     Ramiro Polla <[email protected]>
AuthorDate: Tue May 26 02:45:15 2026 +0200
Commit:     Ramiro Polla <[email protected]>
CommitDate: Fri Jun 5 22:33:37 2026 +0200

    swscale/swscale_unscaled: disable unscaled copy from yaf32be to grayf32be
    
    yaf32be input wasn't being properly filtered out of the simple copy
    condition when converting to grayf32be, which caused half the luma
    plane to be interleaved with half the alpha plane, instead of just
    copying the luma plane.
    
    This fixes:
    $ ./libswscale/tests/swscale -scaler none -src yaf32be -dst grayf32be
    yaf32be 96x96 -> grayf32be 96x96, flags=0x0 dither=1 scaler=0/0, 
SSIM={Y=0.866842 U=1.000000 V=1.000000 A=1.000000} loss=1.065262e-01
    yaf32be 96x96 -> grayf32be 96x96, flags=0x0 dither=1 scaler=0/0
      loss 1.065262e-01 is WORSE by 1.065202e-01, expected loss 6.020069e-06
    
    Sponsored-by: Sovereign Tech Fund
    Signed-off-by: Ramiro Polla <[email protected]>
---
 libswscale/swscale_unscaled.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/libswscale/swscale_unscaled.c b/libswscale/swscale_unscaled.c
index 7de47dfbb7..18fc8fe7d7 100644
--- a/libswscale/swscale_unscaled.c
+++ b/libswscale/swscale_unscaled.c
@@ -2670,7 +2670,7 @@ void ff_get_unscaled_swscale(SwsInternal *c)
         (srcFormat == AV_PIX_FMT_NV24 || srcFormat == AV_PIX_FMT_NV42))
         c->convert_unscaled = nv24ToYuv420Wrapper;
 
-#define isPlanarGray(x) (isGray(x) && (x) != AV_PIX_FMT_YA8 && (x) != 
AV_PIX_FMT_YA16LE && (x) != AV_PIX_FMT_YA16BE)
+#define isPlanarGray(x) (isGray(x) && !isALPHA(x))
 
     /* simple copy */
     if ( srcFormat == dstFormat ||

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

Reply via email to