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

Git pushed a commit to branch master
in repository ffmpeg.

commit 48f30aa08c473fb034f0a43313ad566a1ea7a3ed
Author:     Michael Niedermayer <[email protected]>
AuthorDate: Mon Jun 15 22:12:41 2026 +0200
Commit:     michaelni <[email protected]>
CommitDate: Wed Jul 1 01:48:33 2026 +0000

    checkasm/sw_rgb: also test yuyvtoyuv422
    
    yuyvtoyuv422 reads the trailing odd V sample at src[2w+1], one byte further
    than uyvytoyuv422, so the number of extra source bytes an odd width needs is
    passed in per format (1 for UYVY, 2 for YUYV) and added to the stride.
    
    uyvytoyuv420 and yuyvtoyuv420 are intentionally not added: their x86 mmxext
    chroma averaging uses PAVGB rounding and so is not bit-exact with the C
    reference, which truncates, so they cannot be verified this way.
    
    Signed-off-by: Michael Niedermayer <[email protected]>
---
 tests/checkasm/sw_rgb.c | 10 ++++++----
 1 file changed, 6 insertions(+), 4 deletions(-)

diff --git a/tests/checkasm/sw_rgb.c b/tests/checkasm/sw_rgb.c
index 53bde765db..7bf5d8e175 100644
--- a/tests/checkasm/sw_rgb.c
+++ b/tests/checkasm/sw_rgb.c
@@ -72,7 +72,7 @@ static void check_shuffle_bytes(void * func, const char * 
report)
     }
 }
 
-static void check_uyvy_to_422p(void)
+static void check_interleaved_to_planar(void *func, const char *report, int 
odd_tail)
 {
     int i;
 
@@ -92,10 +92,10 @@ static void check_uyvy_to_422p(void)
     randomize_buffers(src0, MAX_STRIDE * MAX_HEIGHT * 2);
     memcpy(src1, src0, MAX_STRIDE * MAX_HEIGHT * 2);
 
-    if (check_func(uyvytoyuv422, "uyvytoyuv422")) {
+    if (check_func(func, "%s", report)) {
         for (i = 0; i < FF_ARRAY_ELEMS(planes); i ++) {
             int w = planes[i].w, h = planes[i].h;
-            int srcStride = 2 * w + (w & 1);   // UYVY odd width reads V at 
src[2w]
+            int srcStride = 2 * w + (w & 1 ? odd_tail : 0);
 
             memset(dst_y_0, 0, MAX_STRIDE * MAX_HEIGHT);
             memset(dst_y_1, 0, MAX_STRIDE * MAX_HEIGHT);
@@ -960,8 +960,10 @@ void checkasm_check_sw_rgb(void)
     }
     report("rgb24tobgr32");
 
-    check_uyvy_to_422p();
+    check_interleaved_to_planar(uyvytoyuv422, "uyvytoyuv422", 1);
     report("uyvytoyuv422");
+    check_interleaved_to_planar(yuyvtoyuv422, "yuyvtoyuv422", 2);
+    report("yuyvtoyuv422");
 
     check_interleave_bytes();
     report("interleave_bytes");

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

Reply via email to