From 2eb9c35010fe2c65a6d0f9a420332bca369c5ead Mon Sep 17 00:00:00 2001 From: James Almer Date: Thu, 7 Nov 2024 11:16:35 -0300 Subject: [PATCH] x86/swscale: disable AVX2 yuv2nv12cX functions if accurate_rnd is requested Signed-off-by: James Almer --- libswscale/x86/swscale.c | 1 + tests/ref/pixfmt/gbrp10-nv12 | 2 +- tests/ref/pixfmt/gbrp10-nv24 | 2 +- tests/ref/pixfmt/gbrp12-nv12 | 2 +- tests/ref/pixfmt/gbrp12-nv24 | 2 +- tests/ref/pixfmt/rgb48-nv12 | 2 +- tests/ref/pixfmt/rgb48-nv24 | 2 +- tests/ref/pixfmt/yuv444p10-nv12 | 2 +- tests/ref/pixfmt/yuv444p10-nv24 | 2 +- tests/ref/pixfmt/yuv444p12-nv12 | 2 +- tests/ref/pixfmt/yuv444p12-nv24 | 2 +- 11 files changed, 11 insertions(+), 10 deletions(-) diff --git a/libswscale/x86/swscale.c b/libswscale/x86/swscale.c index a61105b998..ceafdf4aef 100644 --- a/libswscale/x86/swscale.c +++ b/libswscale/x86/swscale.c @@ -678,6 +678,7 @@ switch(c->dstBpc){ \ case_rgb(abgr, ABGR, avx2); case_rgb(argb, ARGB, avx2); } + if (!(c->flags & SWS_ACCURATE_RND)) // FIXME switch (c->dstFormat) { case AV_PIX_FMT_NV12: case AV_PIX_FMT_NV24: diff --git a/tests/ref/pixfmt/gbrp10-nv12 b/tests/ref/pixfmt/gbrp10-nv12 index 20382e61df..3b8e28a321 100644 --- a/tests/ref/pixfmt/gbrp10-nv12 +++ b/tests/ref/pixfmt/gbrp10-nv12 @@ -1,2 +1,2 @@ -dfeb7f05970bae694ed8713d284b3f7e *tests/data/pixfmt/gbrp10-nv12.yuv +c1e554255de934b10fbffda5121f2680 *tests/data/pixfmt/gbrp10-nv12.yuv 15206400 tests/data/pixfmt/gbrp10-nv12.yuv diff --git a/tests/ref/pixfmt/gbrp10-nv24 b/tests/ref/pixfmt/gbrp10-nv24 index 6c4cb7846d..7a30aed158 100644 --- a/tests/ref/pixfmt/gbrp10-nv24 +++ b/tests/ref/pixfmt/gbrp10-nv24 @@ -1,2 +1,2 @@ -df99a669100970de2adfdbf78d3d6282 *tests/data/pixfmt/gbrp10-nv24.yuv +e40afe127b0d698b03e1165603e871e1 *tests/data/pixfmt/gbrp10-nv24.yuv 15206400 tests/data/pixfmt/gbrp10-nv24.yuv diff --git a/tests/ref/pixfmt/gbrp12-nv12 b/tests/ref/pixfmt/gbrp12-nv12 index 294447c67e..e18fa973c6 100644 --- a/tests/ref/pixfmt/gbrp12-nv12 +++ b/tests/ref/pixfmt/gbrp12-nv12 @@ -1,2 +1,2 @@ -368d99ad7c86b5a0094b15bbebf6490b *tests/data/pixfmt/gbrp12-nv12.yuv +faa7b7f6332300263711e46d8c6a1841 *tests/data/pixfmt/gbrp12-nv12.yuv 15206400 tests/data/pixfmt/gbrp12-nv12.yuv diff --git a/tests/ref/pixfmt/gbrp12-nv24 b/tests/ref/pixfmt/gbrp12-nv24 index 8a39b60bef..0e0a5a049c 100644 --- a/tests/ref/pixfmt/gbrp12-nv24 +++ b/tests/ref/pixfmt/gbrp12-nv24 @@ -1,2 +1,2 @@ -138fe6d7116b1a9d525bd70c355de633 *tests/data/pixfmt/gbrp12-nv24.yuv +e285d138f196a7b9e13e4703c97420d2 *tests/data/pixfmt/gbrp12-nv24.yuv 15206400 tests/data/pixfmt/gbrp12-nv24.yuv diff --git a/tests/ref/pixfmt/rgb48-nv12 b/tests/ref/pixfmt/rgb48-nv12 index 1e123387f2..07968e772a 100644 --- a/tests/ref/pixfmt/rgb48-nv12 +++ b/tests/ref/pixfmt/rgb48-nv12 @@ -1,2 +1,2 @@ -6bb4022bd553678f751c6a198167c55e *tests/data/pixfmt/rgb48-nv12.yuv +2a9817112e5dab50d753eb331eac2c34 *tests/data/pixfmt/rgb48-nv12.yuv 15206400 tests/data/pixfmt/rgb48-nv12.yuv diff --git a/tests/ref/pixfmt/rgb48-nv24 b/tests/ref/pixfmt/rgb48-nv24 index 0e54956827..59323bf1a0 100644 --- a/tests/ref/pixfmt/rgb48-nv24 +++ b/tests/ref/pixfmt/rgb48-nv24 @@ -1,2 +1,2 @@ -01398d67e0844599253574c67fa2f608 *tests/data/pixfmt/rgb48-nv24.yuv +fbb12a3f411e34fec877c03cb41ad455 *tests/data/pixfmt/rgb48-nv24.yuv 15206400 tests/data/pixfmt/rgb48-nv24.yuv diff --git a/tests/ref/pixfmt/yuv444p10-nv12 b/tests/ref/pixfmt/yuv444p10-nv12 index 4f4c9af43e..9e7c395b8b 100644 --- a/tests/ref/pixfmt/yuv444p10-nv12 +++ b/tests/ref/pixfmt/yuv444p10-nv12 @@ -1,2 +1,2 @@ -bd5e32b13acc3f3431e5fc0c14466b4f *tests/data/pixfmt/yuv444p10-nv12.yuv +27fc9d596cdb023945263f612de8d7d0 *tests/data/pixfmt/yuv444p10-nv12.yuv 15206400 tests/data/pixfmt/yuv444p10-nv12.yuv diff --git a/tests/ref/pixfmt/yuv444p10-nv24 b/tests/ref/pixfmt/yuv444p10-nv24 index 0f9b405cb3..7726926cdf 100644 --- a/tests/ref/pixfmt/yuv444p10-nv24 +++ b/tests/ref/pixfmt/yuv444p10-nv24 @@ -1,2 +1,2 @@ -12e33acf9605dd7b8c3f2ce4bec5b275 *tests/data/pixfmt/yuv444p10-nv24.yuv +6af215bf78cba3fa3e22b85b202e0a2c *tests/data/pixfmt/yuv444p10-nv24.yuv 15206400 tests/data/pixfmt/yuv444p10-nv24.yuv diff --git a/tests/ref/pixfmt/yuv444p12-nv12 b/tests/ref/pixfmt/yuv444p12-nv12 index ccbda0773c..cf4363e7b6 100644 --- a/tests/ref/pixfmt/yuv444p12-nv12 +++ b/tests/ref/pixfmt/yuv444p12-nv12 @@ -1,2 +1,2 @@ -b123008efd2e1793c90d6aede028004b *tests/data/pixfmt/yuv444p12-nv12.yuv +02679cf4ddfb12d1f4ba03d54a949d9e *tests/data/pixfmt/yuv444p12-nv12.yuv 15206400 tests/data/pixfmt/yuv444p12-nv12.yuv diff --git a/tests/ref/pixfmt/yuv444p12-nv24 b/tests/ref/pixfmt/yuv444p12-nv24 index fe9c97e4e1..f02720811a 100644 --- a/tests/ref/pixfmt/yuv444p12-nv24 +++ b/tests/ref/pixfmt/yuv444p12-nv24 @@ -1,2 +1,2 @@ -fe5f29ca40140c63f082029bfd23047d *tests/data/pixfmt/yuv444p12-nv24.yuv +3457a9ef6af639e0b1565d01b3e145e5 *tests/data/pixfmt/yuv444p12-nv24.yuv 15206400 tests/data/pixfmt/yuv444p12-nv24.yuv