diff mbox series

[FFmpeg-devel,2/7] avutil/tests/imgutils: add tests for av_image_fill_black()

Message ID 20231203002726.29683-2-cus@passwd.hu
State New
Headers show
Series [FFmpeg-devel,1/7] avutil/tests/imgutils: factorize basic tests to new function | expand

Checks

Context Check Description
andriy/make_x86 success Make finished
andriy/make_fate_x86 success Make fate finished

Commit Message

Marton Balint Dec. 3, 2023, 12:27 a.m. UTC
Signed-off-by: Marton Balint <cus@passwd.hu>
---
 libavutil/tests/imgutils.c |  60 ++++++++--
 tests/ref/fate/imgutils    | 217 +++++++++++++++++++++++++++++++++++++
 2 files changed, 268 insertions(+), 9 deletions(-)

Comments

Stefano Sabatini Dec. 3, 2023, 11:47 p.m. UTC | #1
On date Sunday 2023-12-03 01:27:21 +0100, Marton Balint wrote:
> Signed-off-by: Marton Balint <cus@passwd.hu>
> ---
>  libavutil/tests/imgutils.c |  60 ++++++++--
>  tests/ref/fate/imgutils    | 217 +++++++++++++++++++++++++++++++++++++
>  2 files changed, 268 insertions(+), 9 deletions(-)
> 
> diff --git a/libavutil/tests/imgutils.c b/libavutil/tests/imgutils.c
> index f3a433ac4a..500d24fdb8 100644
> --- a/libavutil/tests/imgutils.c
> +++ b/libavutil/tests/imgutils.c
> @@ -17,6 +17,7 @@
>   */
>  
>  #include "libavutil/imgutils.c"
> +#include "libavutil/crc.h"
>  
>  #undef printf
>  static int basic_tests(enum AVPixelFormat pix_fmt, int w, int h) {
> @@ -55,9 +56,43 @@ static int basic_tests(enum AVPixelFormat pix_fmt, int w, int h) {
>      return 0;
>  }
>  

> +static int black_tests(const AVPixFmtDescriptor *desc, enum AVPixelFormat pix_fmt, int w, int h)

nit: check_image_fill_black ?

> +{
> +    uint8_t *data[4];
> +    ptrdiff_t linesizes1[4];
> +    int ret, total_size, linesizes[4];
> +

> +    if (av_image_fill_linesizes(linesizes, pix_fmt, w) < 0)
> +        return -1;

nit: maybe we could store and return ret to give more information

> +    total_size = av_image_alloc(data, linesizes, w, h, pix_fmt, 4);
> +    if (total_size < 0) {
> +        printf("alloc failure");
> +        return -1;

ditto

> +    }
> +    printf("total_size: %6d", total_size);
> +    if (desc->flags & AV_PIX_FMT_FLAG_PAL)
> +        total_size -= 256 * 4;
> +    // Make it non-black by default...
> +    memset(data[0], 0xA3, total_size);
> +    for (int i = 0; i < 4; i++)
> +        linesizes1[i] = linesizes[i];
> +    for (enum AVColorRange range = 0; range < AVCOL_RANGE_NB; range++) {
> +        ret = av_image_fill_black(data, linesizes1, pix_fmt, range, w, h);
> +        printf(",  black_%s_crc: ", av_color_range_name(range));
> +        if (ret < 0) {
> +            printf("----------");

> +        } else {
> +            const AVCRC *ctx = av_crc_get_table(AV_CRC_32_IEEE_LE);

nit: crc?

> +            printf("0x%08"PRIx32, av_crc(ctx, 0, data[0], total_size));
> +        }
> +    }
> +    av_freep(&data[0]);
> +
> +    return 0;
> +}
> +
>  int main(void)
>  {
> -    const AVPixFmtDescriptor *desc = NULL;
>      int64_t x, y;
>  
>      for (y = -1; y<UINT_MAX; y+= y/2 + 1) {
> @@ -69,15 +104,22 @@ int main(void)
>      }
>      printf("\n");
>  
> -    while (desc = av_pix_fmt_desc_next(desc)) {
> -        int w = 64, h = 48;
> -        enum AVPixelFormat pix_fmt = av_pix_fmt_desc_get_id(desc);
> +    for (int i = 0; i < 2; i++) {
> +        printf(i ? "\nblack tests\n" : "basic tests\n");
> +        for (const AVPixFmtDescriptor *desc = NULL; desc = av_pix_fmt_desc_next(desc);) {
> +            int w = 64, h = 48;
> +            enum AVPixelFormat pix_fmt = av_pix_fmt_desc_get_id(desc);
>  
> -        if (desc->flags & AV_PIX_FMT_FLAG_HWACCEL)
> -            continue;
> -        printf("%-16s", desc->name);
> -        basic_tests(pix_fmt, w, h);
> -        printf("\n");
> +            if (desc->flags & AV_PIX_FMT_FLAG_HWACCEL)
> +                continue;
> +
> +            printf("%-16s", desc->name);
> +            if (i == 0)
> +                basic_tests(pix_fmt, w, h);
> +            else
> +                black_tests(desc, pix_fmt, w, h);
> +            printf("\n");
> +        }
>      }

LGTM otherwise.
diff mbox series

Patch

diff --git a/libavutil/tests/imgutils.c b/libavutil/tests/imgutils.c
index f3a433ac4a..500d24fdb8 100644
--- a/libavutil/tests/imgutils.c
+++ b/libavutil/tests/imgutils.c
@@ -17,6 +17,7 @@ 
  */
 
 #include "libavutil/imgutils.c"
+#include "libavutil/crc.h"
 
 #undef printf
 static int basic_tests(enum AVPixelFormat pix_fmt, int w, int h) {
@@ -55,9 +56,43 @@  static int basic_tests(enum AVPixelFormat pix_fmt, int w, int h) {
     return 0;
 }
 
+static int black_tests(const AVPixFmtDescriptor *desc, enum AVPixelFormat pix_fmt, int w, int h)
+{
+    uint8_t *data[4];
+    ptrdiff_t linesizes1[4];
+    int ret, total_size, linesizes[4];
+
+    if (av_image_fill_linesizes(linesizes, pix_fmt, w) < 0)
+        return -1;
+    total_size = av_image_alloc(data, linesizes, w, h, pix_fmt, 4);
+    if (total_size < 0) {
+        printf("alloc failure");
+        return -1;
+    }
+    printf("total_size: %6d", total_size);
+    if (desc->flags & AV_PIX_FMT_FLAG_PAL)
+        total_size -= 256 * 4;
+    // Make it non-black by default...
+    memset(data[0], 0xA3, total_size);
+    for (int i = 0; i < 4; i++)
+        linesizes1[i] = linesizes[i];
+    for (enum AVColorRange range = 0; range < AVCOL_RANGE_NB; range++) {
+        ret = av_image_fill_black(data, linesizes1, pix_fmt, range, w, h);
+        printf(",  black_%s_crc: ", av_color_range_name(range));
+        if (ret < 0) {
+            printf("----------");
+        } else {
+            const AVCRC *ctx = av_crc_get_table(AV_CRC_32_IEEE_LE);
+            printf("0x%08"PRIx32, av_crc(ctx, 0, data[0], total_size));
+        }
+    }
+    av_freep(&data[0]);
+
+    return 0;
+}
+
 int main(void)
 {
-    const AVPixFmtDescriptor *desc = NULL;
     int64_t x, y;
 
     for (y = -1; y<UINT_MAX; y+= y/2 + 1) {
@@ -69,15 +104,22 @@  int main(void)
     }
     printf("\n");
 
-    while (desc = av_pix_fmt_desc_next(desc)) {
-        int w = 64, h = 48;
-        enum AVPixelFormat pix_fmt = av_pix_fmt_desc_get_id(desc);
+    for (int i = 0; i < 2; i++) {
+        printf(i ? "\nblack tests\n" : "basic tests\n");
+        for (const AVPixFmtDescriptor *desc = NULL; desc = av_pix_fmt_desc_next(desc);) {
+            int w = 64, h = 48;
+            enum AVPixelFormat pix_fmt = av_pix_fmt_desc_get_id(desc);
 
-        if (desc->flags & AV_PIX_FMT_FLAG_HWACCEL)
-            continue;
-        printf("%-16s", desc->name);
-        basic_tests(pix_fmt, w, h);
-        printf("\n");
+            if (desc->flags & AV_PIX_FMT_FLAG_HWACCEL)
+                continue;
+
+            printf("%-16s", desc->name);
+            if (i == 0)
+                basic_tests(pix_fmt, w, h);
+            else
+                black_tests(desc, pix_fmt, w, h);
+            printf("\n");
+        }
     }
 
     return 0;
diff --git a/tests/ref/fate/imgutils b/tests/ref/fate/imgutils
index f166cb67fb..1a2aaa86c6 100644
--- a/tests/ref/fate/imgutils
+++ b/tests/ref/fate/imgutils
@@ -54,6 +54,7 @@ 
 0000000000000000000000000000000000000000000000000000000
 0000000000000000000000000000000000000000000000000000000
 
+basic tests
 yuv420p         planes: 3, linesizes:  64  32  32   0, plane_sizes:  3072   768   768     0, plane_offsets:  3072   768     0, total_size: 4608
 yuyv422         planes: 1, linesizes: 128   0   0   0, plane_sizes:  6144     0     0     0, plane_offsets:     0     0     0, total_size: 6144
 rgb24           planes: 1, linesizes: 192   0   0   0, plane_sizes:  9216     0     0     0, plane_offsets:     0     0     0, total_size: 9216
@@ -268,3 +269,219 @@  p412be          planes: 2, linesizes: 128 256   0   0, plane_sizes:  6144 12288
 p412le          planes: 2, linesizes: 128 256   0   0, plane_sizes:  6144 12288     0     0, plane_offsets:  6144     0     0, total_size: 18432
 gbrap14be       planes: 4, linesizes: 128 128 128 128, plane_sizes:  6144  6144  6144  6144, plane_offsets:  6144  6144  6144, total_size: 24576
 gbrap14le       planes: 4, linesizes: 128 128 128 128, plane_sizes:  6144  6144  6144  6144, plane_offsets:  6144  6144  6144, total_size: 24576
+
+black tests
+yuv420p         total_size:   4608,  black_unknown_crc: 0xd00f6cc6,  black_tv_crc: 0xd00f6cc6,  black_pc_crc: 0x234969af
+yuyv422         total_size:   6144,  black_unknown_crc: 0xcb089fb0,  black_tv_crc: 0xcb089fb0,  black_pc_crc: 0xc9dc3ddf
+rgb24           total_size:   9216,  black_unknown_crc: 0x00000000,  black_tv_crc: 0x00000000,  black_pc_crc: 0x00000000
+bgr24           total_size:   9216,  black_unknown_crc: 0x00000000,  black_tv_crc: 0x00000000,  black_pc_crc: 0x00000000
+yuv422p         total_size:   6144,  black_unknown_crc: 0x71fcc79c,  black_tv_crc: 0x71fcc79c,  black_pc_crc: 0xa9fa0192
+yuv444p         total_size:   9216,  black_unknown_crc: 0x1c302b58,  black_tv_crc: 0x1c302b58,  black_pc_crc: 0xdf792ea7
+yuv410p         total_size:   3456,  black_unknown_crc: 0x09f3e4b0,  black_tv_crc: 0x09f3e4b0,  black_pc_crc: 0xe4f4e553
+yuv411p         total_size:   4608,  black_unknown_crc: 0xd00f6cc6,  black_tv_crc: 0xd00f6cc6,  black_pc_crc: 0x234969af
+gray            total_size:   3072,  black_unknown_crc: 0x63e301a2,  black_tv_crc: 0x63e301a2,  black_pc_crc: 0x00000000
+monow           total_size:    384,  black_unknown_crc: 0x1ba3e150,  black_tv_crc: 0x1ba3e150,  black_pc_crc: 0x1ba3e150
+monob           total_size:    384,  black_unknown_crc: 0x00000000,  black_tv_crc: 0x00000000,  black_pc_crc: 0x00000000
+pal8            total_size:   4096,  black_unknown_crc: 0x63e301a2,  black_tv_crc: 0x63e301a2,  black_pc_crc: 0x00000000
+yuvj420p        total_size:   4608,  black_unknown_crc: 0xd00f6cc6,  black_tv_crc: 0xd00f6cc6,  black_pc_crc: 0x234969af
+yuvj422p        total_size:   6144,  black_unknown_crc: 0x71fcc79c,  black_tv_crc: 0x71fcc79c,  black_pc_crc: 0xa9fa0192
+yuvj444p        total_size:   9216,  black_unknown_crc: 0x1c302b58,  black_tv_crc: 0x1c302b58,  black_pc_crc: 0xdf792ea7
+uyvy422         total_size:   6144,  black_unknown_crc: 0xaf9476bb,  black_tv_crc: 0xaf9476bb,  black_pc_crc: 0x16a51378
+uyyvyy411       total_size:   4608,  black_unknown_crc: 0x6f8b7288,  black_tv_crc: 0x6f8b7288,  black_pc_crc: 0x9f9c5552
+bgr8            total_size:   3072,  black_unknown_crc: 0x00000000,  black_tv_crc: 0x00000000,  black_pc_crc: 0x00000000
+bgr4            total_size:   1536,  black_unknown_crc: 0x00000000,  black_tv_crc: 0x00000000,  black_pc_crc: 0x00000000
+bgr4_byte       total_size:   3072,  black_unknown_crc: 0x00000000,  black_tv_crc: 0x00000000,  black_pc_crc: 0x00000000
+rgb8            total_size:   3072,  black_unknown_crc: 0x00000000,  black_tv_crc: 0x00000000,  black_pc_crc: 0x00000000
+rgb4            total_size:   1536,  black_unknown_crc: 0x00000000,  black_tv_crc: 0x00000000,  black_pc_crc: 0x00000000
+rgb4_byte       total_size:   3072,  black_unknown_crc: 0x00000000,  black_tv_crc: 0x00000000,  black_pc_crc: 0x00000000
+nv12            total_size:   4608,  black_unknown_crc: 0xd00f6cc6,  black_tv_crc: 0xd00f6cc6,  black_pc_crc: 0x234969af
+nv21            total_size:   4608,  black_unknown_crc: 0xd00f6cc6,  black_tv_crc: 0xd00f6cc6,  black_pc_crc: 0x234969af
+argb            total_size:  12288,  black_unknown_crc: 0x97f3518e,  black_tv_crc: 0x97f3518e,  black_pc_crc: 0x97f3518e
+rgba            total_size:  12288,  black_unknown_crc: 0xf15ae524,  black_tv_crc: 0xf15ae524,  black_pc_crc: 0xf15ae524
+abgr            total_size:  12288,  black_unknown_crc: 0x97f3518e,  black_tv_crc: 0x97f3518e,  black_pc_crc: 0x97f3518e
+bgra            total_size:  12288,  black_unknown_crc: 0xf15ae524,  black_tv_crc: 0xf15ae524,  black_pc_crc: 0xf15ae524
+gray16be        total_size:   6144,  black_unknown_crc: 0x02d4a26f,  black_tv_crc: 0x02d4a26f,  black_pc_crc: 0x00000000
+gray16le        total_size:   6144,  black_unknown_crc: 0xb93165c3,  black_tv_crc: 0xb93165c3,  black_pc_crc: 0x00000000
+yuv440p         total_size:   6144,  black_unknown_crc: 0x71fcc79c,  black_tv_crc: 0x71fcc79c,  black_pc_crc: 0xa9fa0192
+yuvj440p        total_size:   6144,  black_unknown_crc: 0x71fcc79c,  black_tv_crc: 0x71fcc79c,  black_pc_crc: 0xa9fa0192
+yuva420p        total_size:   7680,  black_unknown_crc: 0x0bcc140f,  black_tv_crc: 0x0bcc140f,  black_pc_crc: 0xa724ab23
+rgb48be         total_size:  18432,  black_unknown_crc: 0x00000000,  black_tv_crc: 0x00000000,  black_pc_crc: 0x00000000
+rgb48le         total_size:  18432,  black_unknown_crc: 0x00000000,  black_tv_crc: 0x00000000,  black_pc_crc: 0x00000000
+rgb565be        total_size:   6144,  black_unknown_crc: 0x00000000,  black_tv_crc: 0x00000000,  black_pc_crc: 0x00000000
+rgb565le        total_size:   6144,  black_unknown_crc: 0x00000000,  black_tv_crc: 0x00000000,  black_pc_crc: 0x00000000
+rgb555be        total_size:   6144,  black_unknown_crc: 0x00000000,  black_tv_crc: 0x00000000,  black_pc_crc: 0x00000000
+rgb555le        total_size:   6144,  black_unknown_crc: 0x00000000,  black_tv_crc: 0x00000000,  black_pc_crc: 0x00000000
+bgr565be        total_size:   6144,  black_unknown_crc: 0x00000000,  black_tv_crc: 0x00000000,  black_pc_crc: 0x00000000
+bgr565le        total_size:   6144,  black_unknown_crc: 0x00000000,  black_tv_crc: 0x00000000,  black_pc_crc: 0x00000000
+bgr555be        total_size:   6144,  black_unknown_crc: 0x00000000,  black_tv_crc: 0x00000000,  black_pc_crc: 0x00000000
+bgr555le        total_size:   6144,  black_unknown_crc: 0x00000000,  black_tv_crc: 0x00000000,  black_pc_crc: 0x00000000
+yuv420p16le     total_size:   9216,  black_unknown_crc: 0xfff85b60,  black_tv_crc: 0xfff85b60,  black_pc_crc: 0xc03cff93
+yuv420p16be     total_size:   9216,  black_unknown_crc: 0x4d4d9903,  black_tv_crc: 0x4d4d9903,  black_pc_crc: 0x69c6fe01
+yuv422p16le     total_size:  12288,  black_unknown_crc: 0x6582d6cf,  black_tv_crc: 0x6582d6cf,  black_pc_crc: 0xc9dc3ddf
+yuv422p16be     total_size:  12288,  black_unknown_crc: 0x0bbe5df7,  black_tv_crc: 0x0bbe5df7,  black_pc_crc: 0x16a51378
+yuv444p16le     total_size:  18432,  black_unknown_crc: 0x4028ac30,  black_tv_crc: 0x4028ac30,  black_pc_crc: 0xab7c7698
+yuv444p16be     total_size:  18432,  black_unknown_crc: 0x26991800,  black_tv_crc: 0x26991800,  black_pc_crc: 0xfe7f6700
+rgb444le        total_size:   6144,  black_unknown_crc: 0x00000000,  black_tv_crc: 0x00000000,  black_pc_crc: 0x00000000
+rgb444be        total_size:   6144,  black_unknown_crc: 0x00000000,  black_tv_crc: 0x00000000,  black_pc_crc: 0x00000000
+bgr444le        total_size:   6144,  black_unknown_crc: 0x00000000,  black_tv_crc: 0x00000000,  black_pc_crc: 0x00000000
+bgr444be        total_size:   6144,  black_unknown_crc: 0x00000000,  black_tv_crc: 0x00000000,  black_pc_crc: 0x00000000
+ya8             total_size:   6144,  black_unknown_crc: 0xcb089fb0,  black_tv_crc: 0xcb089fb0,  black_pc_crc: 0xc9dc3ddf
+bgr48be         total_size:  18432,  black_unknown_crc: 0x00000000,  black_tv_crc: 0x00000000,  black_pc_crc: 0x00000000
+bgr48le         total_size:  18432,  black_unknown_crc: 0x00000000,  black_tv_crc: 0x00000000,  black_pc_crc: 0x00000000
+yuv420p9be      total_size:   9216,  black_unknown_crc: 0x9154a536,  black_tv_crc: 0x9154a536,  black_pc_crc: 0xeeddecd0
+yuv420p9le      total_size:   9216,  black_unknown_crc: 0x9a9b3206,  black_tv_crc: 0x9a9b3206,  black_pc_crc: 0xd38dfc02
+yuv420p10be     total_size:   9216,  black_unknown_crc: 0xf9d84c2d,  black_tv_crc: 0xf9d84c2d,  black_pc_crc: 0x06cadfe1
+yuv420p10le     total_size:   9216,  black_unknown_crc: 0xee47624d,  black_tv_crc: 0xee47624d,  black_pc_crc: 0x7c6afe45
+yuv422p10be     total_size:  12288,  black_unknown_crc: 0x7cb8d0b6,  black_tv_crc: 0x7cb8d0b6,  black_pc_crc: 0xa0507635
+yuv422p10le     total_size:  12288,  black_unknown_crc: 0x2ef977dc,  black_tv_crc: 0x2ef977dc,  black_pc_crc: 0x5a944de0
+yuv444p9be      total_size:  18432,  black_unknown_crc: 0x0c244ddf,  black_tv_crc: 0x0c244ddf,  black_pc_crc: 0x01fcfece
+yuv444p9le      total_size:  18432,  black_unknown_crc: 0x4d323000,  black_tv_crc: 0x4d323000,  black_pc_crc: 0x278fc841
+yuv444p10be     total_size:  18432,  black_unknown_crc: 0x18489bbe,  black_tv_crc: 0x18489bbe,  black_pc_crc: 0x03f9fd9c
+yuv444p10le     total_size:  18432,  black_unknown_crc: 0x9a646000,  black_tv_crc: 0x9a646000,  black_pc_crc: 0x4f1f9082
+yuv422p9be      total_size:  12288,  black_unknown_crc: 0x3e5c685b,  black_tv_crc: 0x3e5c685b,  black_pc_crc: 0xbd90b83a
+yuv422p9le      total_size:  12288,  black_unknown_crc: 0x177cbbee,  black_tv_crc: 0x177cbbee,  black_pc_crc: 0x2d4a26f0
+gbrp            total_size:   9216,  black_unknown_crc: 0x00000000,  black_tv_crc: 0x00000000,  black_pc_crc: 0x00000000
+gbrp9be         total_size:  18432,  black_unknown_crc: 0x00000000,  black_tv_crc: 0x00000000,  black_pc_crc: 0x00000000
+gbrp9le         total_size:  18432,  black_unknown_crc: 0x00000000,  black_tv_crc: 0x00000000,  black_pc_crc: 0x00000000
+gbrp10be        total_size:  18432,  black_unknown_crc: 0x00000000,  black_tv_crc: 0x00000000,  black_pc_crc: 0x00000000
+gbrp10le        total_size:  18432,  black_unknown_crc: 0x00000000,  black_tv_crc: 0x00000000,  black_pc_crc: 0x00000000
+gbrp16be        total_size:  18432,  black_unknown_crc: 0x00000000,  black_tv_crc: 0x00000000,  black_pc_crc: 0x00000000
+gbrp16le        total_size:  18432,  black_unknown_crc: 0x00000000,  black_tv_crc: 0x00000000,  black_pc_crc: 0x00000000
+yuva422p        total_size:   9216,  black_unknown_crc: 0x6fa9db98,  black_tv_crc: 0x6fa9db98,  black_pc_crc: 0xace0de67
+yuva444p        total_size:  12288,  black_unknown_crc: 0x72114eba,  black_tv_crc: 0x72114eba,  black_pc_crc: 0x001deeda
+yuva420p9be     total_size:  15360,  black_unknown_crc: 0x47717974,  black_tv_crc: 0x47717974,  black_pc_crc: 0xf485b36d
+yuva420p9le     total_size:  15360,  black_unknown_crc: 0xe23950ad,  black_tv_crc: 0xe23950ad,  black_pc_crc: 0x86e10ca7
+yuva422p9be     total_size:  18432,  black_unknown_crc: 0x2f5a84da,  black_tv_crc: 0x2f5a84da,  black_pc_crc: 0x228237cb
+yuva422p9le     total_size:  18432,  black_unknown_crc: 0x3d7bba46,  black_tv_crc: 0x3d7bba46,  black_pc_crc: 0x57c64207
+yuva444p9be     total_size:  24576,  black_unknown_crc: 0x12aed20d,  black_tv_crc: 0x12aed20d,  black_pc_crc: 0x2f0c503b
+yuva444p9le     total_size:  24576,  black_unknown_crc: 0x7b4cbb96,  black_tv_crc: 0x7b4cbb96,  black_pc_crc: 0xb4cb8c8d
+yuva420p10be    total_size:  15360,  black_unknown_crc: 0x56f111dd,  black_tv_crc: 0x56f111dd,  black_pc_crc: 0xea6983ae
+yuva420p10le    total_size:  15360,  black_unknown_crc: 0xa2931f21,  black_tv_crc: 0xa2931f21,  black_pc_crc: 0x6b23a735
+yuva422p10be    total_size:  18432,  black_unknown_crc: 0x86a6ea81,  black_tv_crc: 0x86a6ea81,  black_pc_crc: 0x9d178ca3
+yuva422p10le    total_size:  18432,  black_unknown_crc: 0xc767ccb6,  black_tv_crc: 0xc767ccb6,  black_pc_crc: 0x121c3c34
+yuva444p10be    total_size:  24576,  black_unknown_crc: 0xfd4e472f,  black_tv_crc: 0xfd4e472f,  black_pc_crc: 0x860b4343
+yuva444p10le    total_size:  24576,  black_unknown_crc: 0x4b09cf16,  black_tv_crc: 0x4b09cf16,  black_pc_crc: 0x0f76a761
+yuva420p16be    total_size:  15360,  black_unknown_crc: 0xe112be6e,  black_tv_crc: 0xe112be6e,  black_pc_crc: 0xd37e906b
+yuva420p16le    total_size:  15360,  black_unknown_crc: 0xcbc146fa,  black_tv_crc: 0xcbc146fa,  black_pc_crc: 0x7f83a0d6
+yuva422p16be    total_size:  18432,  black_unknown_crc: 0x630b483b,  black_tv_crc: 0x630b483b,  black_pc_crc: 0xbbed373b
+yuva422p16le    total_size:  18432,  black_unknown_crc: 0xdac3d2ac,  black_tv_crc: 0xdac3d2ac,  black_pc_crc: 0x31970804
+yuva444p16be    total_size:  24576,  black_unknown_crc: 0x4010c8d3,  black_tv_crc: 0x4010c8d3,  black_pc_crc: 0xca6bd07e
+yuva444p16le    total_size:  24576,  black_unknown_crc: 0x1824855b,  black_tv_crc: 0x1824855b,  black_pc_crc: 0x06f5c440
+xyz12le         total_size:  18432,  black_unknown_crc: 0x24c4432b,  black_tv_crc: 0x24c4432b,  black_pc_crc: 0xfe5a7889
+xyz12be         total_size:  18432,  black_unknown_crc: 0xac983d03,  black_tv_crc: 0xac983d03,  black_pc_crc: 0x949a61fc
+nv16            total_size:   6144,  black_unknown_crc: 0x71fcc79c,  black_tv_crc: 0x71fcc79c,  black_pc_crc: 0xa9fa0192
+nv20le          total_size:  12288,  black_unknown_crc: 0x2ef977dc,  black_tv_crc: 0x2ef977dc,  black_pc_crc: 0x5a944de0
+nv20be          total_size:  12288,  black_unknown_crc: 0x7cb8d0b6,  black_tv_crc: 0x7cb8d0b6,  black_pc_crc: 0xa0507635
+rgba64be        total_size:  24576,  black_unknown_crc: 0x0ab5caf6,  black_tv_crc: 0x0ab5caf6,  black_pc_crc: 0x0ab5caf6
+rgba64le        total_size:  24576,  black_unknown_crc: 0x0ab5caf6,  black_tv_crc: 0x0ab5caf6,  black_pc_crc: 0x0ab5caf6
+bgra64be        total_size:  24576,  black_unknown_crc: 0x0ab5caf6,  black_tv_crc: 0x0ab5caf6,  black_pc_crc: 0x0ab5caf6
+bgra64le        total_size:  24576,  black_unknown_crc: 0x0ab5caf6,  black_tv_crc: 0x0ab5caf6,  black_pc_crc: 0x0ab5caf6
+yvyu422         total_size:   6144,  black_unknown_crc: 0xcb089fb0,  black_tv_crc: 0xcb089fb0,  black_pc_crc: 0xc9dc3ddf
+ya16be          total_size:  12288,  black_unknown_crc: 0x5483d935,  black_tv_crc: 0x5483d935,  black_pc_crc: 0x06397bf3
+ya16le          total_size:  12288,  black_unknown_crc: 0x5d8e1cf6,  black_tv_crc: 0x5d8e1cf6,  black_pc_crc: 0x8fceec45
+gbrap           total_size:  12288,  black_unknown_crc: 0xda63f152,  black_tv_crc: 0xda63f152,  black_pc_crc: 0xda63f152
+gbrap16be       total_size:  24576,  black_unknown_crc: 0x53374343,  black_tv_crc: 0x53374343,  black_pc_crc: 0x53374343
+gbrap16le       total_size:  24576,  black_unknown_crc: 0x53374343,  black_tv_crc: 0x53374343,  black_pc_crc: 0x53374343
+0rgb            total_size:  12288,  black_unknown_crc: 0x00000000,  black_tv_crc: 0x00000000,  black_pc_crc: 0x00000000
+rgb0            total_size:  12288,  black_unknown_crc: 0x00000000,  black_tv_crc: 0x00000000,  black_pc_crc: 0x00000000
+0bgr            total_size:  12288,  black_unknown_crc: 0x00000000,  black_tv_crc: 0x00000000,  black_pc_crc: 0x00000000
+bgr0            total_size:  12288,  black_unknown_crc: 0x00000000,  black_tv_crc: 0x00000000,  black_pc_crc: 0x00000000
+yuv420p12be     total_size:   9216,  black_unknown_crc: 0x220de93c,  black_tv_crc: 0x220de93c,  black_pc_crc: 0x1b2b7f84
+yuv420p12le     total_size:   9216,  black_unknown_crc: 0x0fff85b6,  black_tv_crc: 0x0fff85b6,  black_pc_crc: 0x2adaff55
+yuv420p14be     total_size:   9216,  black_unknown_crc: 0x8837a4f0,  black_tv_crc: 0x8837a4f0,  black_pc_crc: 0x6cadfe10
+yuv420p14le     total_size:   9216,  black_unknown_crc: 0x3ffe16d8,  black_tv_crc: 0x3ffe16d8,  black_pc_crc: 0xab6bfd54
+yuv422p12be     total_size:  12288,  black_unknown_crc: 0x50be94e3,  black_tv_crc: 0x50be94e3,  black_pc_crc: 0xecd2d217
+yuv422p12le     total_size:  12288,  black_unknown_crc: 0xbbe5df70,  black_tv_crc: 0xbbe5df70,  black_pc_crc: 0xb12031c1
+yuv422p14be     total_size:  12288,  black_unknown_crc: 0x998b55cd,  black_tv_crc: 0x998b55cd,  black_pc_crc: 0x05a944de
+yuv422p14le     total_size:  12288,  black_unknown_crc: 0x82047703,  black_tv_crc: 0x82047703,  black_pc_crc: 0xa913cdc7
+yuv444p12be     total_size:  18432,  black_unknown_crc: 0x02699180,  black_tv_crc: 0x02699180,  black_pc_crc: 0x0fe7f670
+yuv444p12le     total_size:  18432,  black_unknown_crc: 0x04028ac3,  black_tv_crc: 0x04028ac3,  black_pc_crc: 0xe70f4449
+yuv444p14be     total_size:  18432,  black_unknown_crc: 0x09a64600,  black_tv_crc: 0x09a64600,  black_pc_crc: 0x3f9fd9c0
+yuv444p14le     total_size:  18432,  black_unknown_crc: 0x100a2b0c,  black_tv_crc: 0x100a2b0c,  black_pc_crc: 0x2adf1da6
+gbrp12be        total_size:  18432,  black_unknown_crc: 0x00000000,  black_tv_crc: 0x00000000,  black_pc_crc: 0x00000000
+gbrp12le        total_size:  18432,  black_unknown_crc: 0x00000000,  black_tv_crc: 0x00000000,  black_pc_crc: 0x00000000
+gbrp14be        total_size:  18432,  black_unknown_crc: 0x00000000,  black_tv_crc: 0x00000000,  black_pc_crc: 0x00000000
+gbrp14le        total_size:  18432,  black_unknown_crc: 0x00000000,  black_tv_crc: 0x00000000,  black_pc_crc: 0x00000000
+yuvj411p        total_size:   4608,  black_unknown_crc: 0xd00f6cc6,  black_tv_crc: 0xd00f6cc6,  black_pc_crc: 0x234969af
+bayer_bggr8     total_size:   3072,  black_unknown_crc: 0x00000000,  black_tv_crc: 0x00000000,  black_pc_crc: 0x00000000
+bayer_rggb8     total_size:   3072,  black_unknown_crc: 0x00000000,  black_tv_crc: 0x00000000,  black_pc_crc: 0x00000000
+bayer_gbrg8     total_size:   3072,  black_unknown_crc: 0x00000000,  black_tv_crc: 0x00000000,  black_pc_crc: 0x00000000
+bayer_grbg8     total_size:   3072,  black_unknown_crc: 0x00000000,  black_tv_crc: 0x00000000,  black_pc_crc: 0x00000000
+bayer_bggr16le  total_size:   6144,  black_unknown_crc: 0x00000000,  black_tv_crc: 0x00000000,  black_pc_crc: 0x00000000
+bayer_bggr16be  total_size:   6144,  black_unknown_crc: 0x00000000,  black_tv_crc: 0x00000000,  black_pc_crc: 0x00000000
+bayer_rggb16le  total_size:   6144,  black_unknown_crc: 0x00000000,  black_tv_crc: 0x00000000,  black_pc_crc: 0x00000000
+bayer_rggb16be  total_size:   6144,  black_unknown_crc: 0x00000000,  black_tv_crc: 0x00000000,  black_pc_crc: 0x00000000
+bayer_gbrg16le  total_size:   6144,  black_unknown_crc: 0x00000000,  black_tv_crc: 0x00000000,  black_pc_crc: 0x00000000
+bayer_gbrg16be  total_size:   6144,  black_unknown_crc: 0x00000000,  black_tv_crc: 0x00000000,  black_pc_crc: 0x00000000
+bayer_grbg16le  total_size:   6144,  black_unknown_crc: 0x00000000,  black_tv_crc: 0x00000000,  black_pc_crc: 0x00000000
+bayer_grbg16be  total_size:   6144,  black_unknown_crc: 0x00000000,  black_tv_crc: 0x00000000,  black_pc_crc: 0x00000000
+yuv440p10le     total_size:  12288,  black_unknown_crc: 0x2ef977dc,  black_tv_crc: 0x2ef977dc,  black_pc_crc: 0x5a944de0
+yuv440p10be     total_size:  12288,  black_unknown_crc: 0x7cb8d0b6,  black_tv_crc: 0x7cb8d0b6,  black_pc_crc: 0xa0507635
+yuv440p12le     total_size:  12288,  black_unknown_crc: 0xbbe5df70,  black_tv_crc: 0xbbe5df70,  black_pc_crc: 0xb12031c1
+yuv440p12be     total_size:  12288,  black_unknown_crc: 0x50be94e3,  black_tv_crc: 0x50be94e3,  black_pc_crc: 0xecd2d217
+ayuv64le        total_size:  24576,  black_unknown_crc: 0xcb441ee4,  black_tv_crc: 0xcb441ee4,  black_pc_crc: 0x48ba1e8d
+ayuv64be        total_size:  24576,  black_unknown_crc: 0xe0be064e,  black_tv_crc: 0xe0be064e,  black_pc_crc: 0xd45321b2
+p010le          total_size:   9216,  black_unknown_crc: 0xfff85b60,  black_tv_crc: 0xfff85b60,  black_pc_crc: 0xc03cff93
+p010be          total_size:   9216,  black_unknown_crc: 0x4d4d9903,  black_tv_crc: 0x4d4d9903,  black_pc_crc: 0x69c6fe01
+gbrap12be       total_size:  24576,  black_unknown_crc: 0x49bd3f36,  black_tv_crc: 0x49bd3f36,  black_pc_crc: 0x49bd3f36
+gbrap12le       total_size:  24576,  black_unknown_crc: 0x039f4b57,  black_tv_crc: 0x039f4b57,  black_pc_crc: 0x039f4b57
+gbrap10be       total_size:  24576,  black_unknown_crc: 0x3ebe070a,  black_tv_crc: 0x3ebe070a,  black_pc_crc: 0x3ebe070a
+gbrap10le       total_size:  24576,  black_unknown_crc: 0x0797e156,  black_tv_crc: 0x0797e156,  black_pc_crc: 0x0797e156
+gray12be        total_size:   6144,  black_unknown_crc: 0xbd90b83a,  black_tv_crc: 0xbd90b83a,  black_pc_crc: 0x00000000
+gray12le        total_size:   6144,  black_unknown_crc: 0x2d4a26f0,  black_tv_crc: 0x2d4a26f0,  black_pc_crc: 0x00000000
+gray10be        total_size:   6144,  black_unknown_crc: 0x89569dcf,  black_tv_crc: 0x89569dcf,  black_pc_crc: 0x00000000
+gray10le        total_size:   6144,  black_unknown_crc: 0x0b5289bc,  black_tv_crc: 0x0b5289bc,  black_pc_crc: 0x00000000
+p016le          total_size:   9216,  black_unknown_crc: 0xfff85b60,  black_tv_crc: 0xfff85b60,  black_pc_crc: 0xc03cff93
+p016be          total_size:   9216,  black_unknown_crc: 0x4d4d9903,  black_tv_crc: 0x4d4d9903,  black_pc_crc: 0x69c6fe01
+gray9be         total_size:   6144,  black_unknown_crc: 0xa913cdc7,  black_tv_crc: 0xa913cdc7,  black_pc_crc: 0x00000000
+gray9le         total_size:   6144,  black_unknown_crc: 0x05a944de,  black_tv_crc: 0x05a944de,  black_pc_crc: 0x00000000
+gbrpf32be       total_size:  36864,  black_unknown_crc: ----------,  black_tv_crc: ----------,  black_pc_crc: ----------
+gbrpf32le       total_size:  36864,  black_unknown_crc: ----------,  black_tv_crc: ----------,  black_pc_crc: ----------
+gbrapf32be      total_size:  49152,  black_unknown_crc: ----------,  black_tv_crc: ----------,  black_pc_crc: ----------
+gbrapf32le      total_size:  49152,  black_unknown_crc: ----------,  black_tv_crc: ----------,  black_pc_crc: ----------
+gray14be        total_size:   6144,  black_unknown_crc: 0x9bd1ea2b,  black_tv_crc: 0x9bd1ea2b,  black_pc_crc: 0x00000000
+gray14le        total_size:   6144,  black_unknown_crc: 0xb5289bc0,  black_tv_crc: 0xb5289bc0,  black_pc_crc: 0x00000000
+grayf32be       total_size:  12288,  black_unknown_crc: ----------,  black_tv_crc: ----------,  black_pc_crc: ----------
+grayf32le       total_size:  12288,  black_unknown_crc: ----------,  black_tv_crc: ----------,  black_pc_crc: ----------
+yuva422p12be    total_size:  18432,  black_unknown_crc: 0xa7067ca1,  black_tv_crc: 0xa7067ca1,  black_pc_crc: 0xaa881b51
+yuva422p12le    total_size:  18432,  black_unknown_crc: 0xb6bdf055,  black_tv_crc: 0xb6bdf055,  black_pc_crc: 0x55b03edf
+yuva444p12be    total_size:  24576,  black_unknown_crc: 0x488f478f,  black_tv_crc: 0x488f478f,  black_pc_crc: 0xc6fb24d1
+yuva444p12le    total_size:  24576,  black_unknown_crc: 0xea96f416,  black_tv_crc: 0xea96f416,  black_pc_crc: 0x201a538b
+nv24            total_size:   9216,  black_unknown_crc: 0x1c302b58,  black_tv_crc: 0x1c302b58,  black_pc_crc: 0xdf792ea7
+nv42            total_size:   9216,  black_unknown_crc: 0x1c302b58,  black_tv_crc: 0x1c302b58,  black_pc_crc: 0xdf792ea7
+y210be          total_size:  12288,  black_unknown_crc: 0x5483d935,  black_tv_crc: 0x5483d935,  black_pc_crc: 0x06397bf3
+y210le          total_size:  12288,  black_unknown_crc: 0x5d8e1cf6,  black_tv_crc: 0x5d8e1cf6,  black_pc_crc: 0x8fceec45
+x2rgb10le       total_size:  12288,  black_unknown_crc: 0x00000000,  black_tv_crc: 0x00000000,  black_pc_crc: 0x00000000
+x2rgb10be       total_size:  12288,  black_unknown_crc: 0x00000000,  black_tv_crc: 0x00000000,  black_pc_crc: 0x00000000
+x2bgr10le       total_size:  12288,  black_unknown_crc: 0x00000000,  black_tv_crc: 0x00000000,  black_pc_crc: 0x00000000
+x2bgr10be       total_size:  12288,  black_unknown_crc: 0x00000000,  black_tv_crc: 0x00000000,  black_pc_crc: 0x00000000
+p210be          total_size:  12288,  black_unknown_crc: 0x0bbe5df7,  black_tv_crc: 0x0bbe5df7,  black_pc_crc: 0x16a51378
+p210le          total_size:  12288,  black_unknown_crc: 0x6582d6cf,  black_tv_crc: 0x6582d6cf,  black_pc_crc: 0xc9dc3ddf
+p410be          total_size:  18432,  black_unknown_crc: 0x26991800,  black_tv_crc: 0x26991800,  black_pc_crc: 0xfe7f6700
+p410le          total_size:  18432,  black_unknown_crc: 0x4028ac30,  black_tv_crc: 0x4028ac30,  black_pc_crc: 0xab7c7698
+p216be          total_size:  12288,  black_unknown_crc: 0x0bbe5df7,  black_tv_crc: 0x0bbe5df7,  black_pc_crc: 0x16a51378
+p216le          total_size:  12288,  black_unknown_crc: 0x6582d6cf,  black_tv_crc: 0x6582d6cf,  black_pc_crc: 0xc9dc3ddf
+p416be          total_size:  18432,  black_unknown_crc: 0x26991800,  black_tv_crc: 0x26991800,  black_pc_crc: 0xfe7f6700
+p416le          total_size:  18432,  black_unknown_crc: 0x4028ac30,  black_tv_crc: 0x4028ac30,  black_pc_crc: 0xab7c7698
+vuya            total_size:  12288,  black_unknown_crc: 0x60db2d2c,  black_tv_crc: 0x60db2d2c,  black_pc_crc: 0x2dae630a
+rgbaf16be       total_size:  24576,  black_unknown_crc: 0x0ab5caf6,  black_tv_crc: 0x0ab5caf6,  black_pc_crc: 0x0ab5caf6
+rgbaf16le       total_size:  24576,  black_unknown_crc: 0x0ab5caf6,  black_tv_crc: 0x0ab5caf6,  black_pc_crc: 0x0ab5caf6
+vuyx            total_size:  12288,  black_unknown_crc: 0x9181c808,  black_tv_crc: 0x9181c808,  black_pc_crc: 0xdcf4862e
+p012le          total_size:   9216,  black_unknown_crc: 0xfff85b60,  black_tv_crc: 0xfff85b60,  black_pc_crc: 0xc03cff93
+p012be          total_size:   9216,  black_unknown_crc: 0x4d4d9903,  black_tv_crc: 0x4d4d9903,  black_pc_crc: 0x69c6fe01
+y212be          total_size:  12288,  black_unknown_crc: 0x5483d935,  black_tv_crc: 0x5483d935,  black_pc_crc: 0x06397bf3
+y212le          total_size:  12288,  black_unknown_crc: 0x5d8e1cf6,  black_tv_crc: 0x5d8e1cf6,  black_pc_crc: 0x8fceec45
+xv30be          total_size:  12288,  black_unknown_crc: ----------,  black_tv_crc: ----------,  black_pc_crc: ----------
+xv30le          total_size:  12288,  black_unknown_crc: 0x4bb0b075,  black_tv_crc: 0x4bb0b075,  black_pc_crc: 0x02d585cf
+xv36be          total_size:  24576,  black_unknown_crc: 0x6ba828bd,  black_tv_crc: 0x6ba828bd,  black_pc_crc: 0x5f450f41
+xv36le          total_size:  24576,  black_unknown_crc: 0xc3794950,  black_tv_crc: 0xc3794950,  black_pc_crc: 0x40874939
+rgbf32be        total_size:  36864,  black_unknown_crc: ----------,  black_tv_crc: ----------,  black_pc_crc: ----------
+rgbf32le        total_size:  36864,  black_unknown_crc: ----------,  black_tv_crc: ----------,  black_pc_crc: ----------
+rgbaf32be       total_size:  49152,  black_unknown_crc: ----------,  black_tv_crc: ----------,  black_pc_crc: ----------
+rgbaf32le       total_size:  49152,  black_unknown_crc: ----------,  black_tv_crc: ----------,  black_pc_crc: ----------
+p212be          total_size:  12288,  black_unknown_crc: 0x0bbe5df7,  black_tv_crc: 0x0bbe5df7,  black_pc_crc: 0x16a51378
+p212le          total_size:  12288,  black_unknown_crc: 0x6582d6cf,  black_tv_crc: 0x6582d6cf,  black_pc_crc: 0xc9dc3ddf
+p412be          total_size:  18432,  black_unknown_crc: 0x26991800,  black_tv_crc: 0x26991800,  black_pc_crc: 0xfe7f6700
+p412le          total_size:  18432,  black_unknown_crc: 0x4028ac30,  black_tv_crc: 0x4028ac30,  black_pc_crc: 0xab7c7698
+gbrap14be       total_size:  24576,  black_unknown_crc: 0x4ec0d987,  black_tv_crc: 0x4ec0d987,  black_pc_crc: 0x4ec0d987
+gbrap14le       total_size:  24576,  black_unknown_crc: 0x13bde353,  black_tv_crc: 0x13bde353,  black_pc_crc: 0x13bde353