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]
