Commit 493e00dc39 for ffmpeg
commit 493e00dc397a262a3bd3f2ea8cf8048dfb0392c5
Author: Timo Rothenpieler <timo@rothenpieler.org>
Date: Wed Oct 7 02:26:10 2026 +0200
tests/checkasm/sw_rgb: test uyvytoyuv420 and yuyvtoyuv420
Only the yuv422 variants of the interleaved-to-planar converters were
tested, so the yuv420 variants had no coverage at all. The existing
helper works for 4:2:0 output as is, since it compares whole
destination buffers.
Also add single-line sizes covering the slow path, the fast path, and
the fast path with a tail, which would have caught the height-1 overrun
fixed in a previous commit.
Assisted-by: Claude Opus 5.5
diff --git a/tests/checkasm/sw_rgb.c b/tests/checkasm/sw_rgb.c
index 7bf5d8e175..723f810411 100644
--- a/tests/checkasm/sw_rgb.c
+++ b/tests/checkasm/sw_rgb.c
@@ -40,7 +40,8 @@
static const uint8_t width[] = {12, 16, 20, 32, 36, 128};
static const struct {uint8_t w, h;} planes[] = {
{12,16}, {16,16}, {20,23}, {32,18}, {8,128}, {128,128},
- {1,1}, {1,4}, {3,8}, {13,16}, {21,9}, {63,7}, {127,5}
+ {1,1}, {1,4}, {3,8}, {13,16}, {21,9}, {63,7}, {127,5},
+ {13,1}, {32,1}, {66,1}
};
#define MAX_STRIDE 128
@@ -964,6 +965,10 @@ void checkasm_check_sw_rgb(void)
report("uyvytoyuv422");
check_interleaved_to_planar(yuyvtoyuv422, "yuyvtoyuv422", 2);
report("yuyvtoyuv422");
+ check_interleaved_to_planar(uyvytoyuv420, "uyvytoyuv420", 1);
+ report("uyvytoyuv420");
+ check_interleaved_to_planar(yuyvtoyuv420, "yuyvtoyuv420", 2);
+ report("yuyvtoyuv420");
check_interleave_bytes();
report("interleave_bytes");