From caee8748da5c25b928f699bfa9f1ac4a5f3ae0ce Mon Sep 17 00:00:00 2001 From: wm4 Date: Sun, 17 May 2020 14:57:13 +0200 Subject: [PATCH] video: clean up some imgfmt related stuff Remove the vaguely defined plane_bits and component_bits fields from struct mp_imgfmt_desc. Add weird replacements for existing uses. Remove the bytes[] field, replace uses with bpp[]. Fix some potential alignment issues in existing code. As a compromise, split mp_image_pixel_ptr() into 2 functions, because I think it's a bad idea to implicitly round, but for some callers being slightly less strict is convenient. This shouldn't really change anything. In fact, it's a 100% useless change. I'm just cleaning up what I started almost 8 years ago (see commit 00653a3eb052). With this I've decided to keep mp_imgfmt_desc, just removing the weird parts, and keeping the saner parts. --- DOCS/interface-changes.rst | 1 + DOCS/man/input.rst | 5 - player/command.c | 2 - sub/draw_bmp.c | 8 +- test/img_format.c | 14 +- test/ref/img_formats.txt | 1302 ++++++++++++++++++------------------ test/repack.c | 6 +- test/scale_test.c | 16 +- video/image_writer.c | 14 +- video/img_format.c | 43 +- video/img_format.h | 18 +- video/mp_image.c | 59 +- video/mp_image.h | 1 + video/repack.c | 16 +- video/sws_utils.c | 2 +- 15 files changed, 749 insertions(+), 758 deletions(-) diff --git a/DOCS/interface-changes.rst b/DOCS/interface-changes.rst index b4e926c267..ad1e5b47d1 100644 --- a/DOCS/interface-changes.rst +++ b/DOCS/interface-changes.rst @@ -68,6 +68,7 @@ Interface changes - reading loop-file property as native property or mpv_node will now return "inf" instead of boolean true (also affects loop option) - remove some --vo-direct3d-... options (it got dumbed down; use --vo=gpu) + - remove video-params/plane-depth property (was too vaguely defined) --- mpv 0.32.0 --- - change behavior when using legacy option syntax with options that start with two dashes (``--`` instead of a ``-``). Now, using the recommended diff --git a/DOCS/man/input.rst b/DOCS/man/input.rst index 200b3d403f..bfb8573a86 100644 --- a/DOCS/man/input.rst +++ b/DOCS/man/input.rst @@ -2236,11 +2236,6 @@ Property list different resolution, which is the reason this value can sometimes be odd or confusing. Can be unavailable with some formats. - ``video-params/plane-depth`` - Bit depth for each color component as integer. This is only exposed - for planar or single-component formats, and is unavailable for other - formats. - ``video-params/w``, ``video-params/h`` Video size as integers, with no aspect correction applied. diff --git a/player/command.c b/player/command.c index 04e84c998f..45b721ef09 100644 --- a/player/command.c +++ b/player/command.c @@ -2131,8 +2131,6 @@ static int property_imgparams(struct mp_image_params p, int action, void *arg) {"pixelformat", SUB_PROP_STR(mp_imgfmt_to_name(p.imgfmt))}, {"average-bpp", SUB_PROP_INT(bpp), .unavailable = !bpp}, - {"plane-depth", SUB_PROP_INT(desc.plane_bits), - .unavailable = !(desc.flags & MP_IMGFLAG_YUV_P)}, {"w", SUB_PROP_INT(p.w)}, {"h", SUB_PROP_INT(p.h)}, {"dw", SUB_PROP_INT(d_w)}, diff --git a/sub/draw_bmp.c b/sub/draw_bmp.c index b208ec6ad5..f7f8982051 100644 --- a/sub/draw_bmp.c +++ b/sub/draw_bmp.c @@ -138,10 +138,10 @@ static void blend_slice(struct mp_draw_sub_cache *p) int h = (1 << vid->fmt.chroma_ys) - (1 << ys) + 1; int cw = mp_chroma_div_up(vid->w, xs); for (int y = 0; y < h; y++) { - p->blend_line(mp_image_pixel_ptr(vid, plane, 0, y), - mp_image_pixel_ptr(ov, plane, 0, y), - xs || ys ? mp_image_pixel_ptr(ca, 0, 0, y) - : mp_image_pixel_ptr(ov, ov->num_planes - 1, 0, y), + p->blend_line(mp_image_pixel_ptr_ny(vid, plane, 0, y), + mp_image_pixel_ptr_ny(ov, plane, 0, y), + xs || ys ? mp_image_pixel_ptr_ny(ca, 0, 0, y) + : mp_image_pixel_ptr_ny(ov, ov->num_planes - 1, 0, y), cw); } } diff --git a/test/img_format.c b/test/img_format.c index 2e4e899203..9cd8186ab6 100644 --- a/test/img_format.c +++ b/test/img_format.c @@ -82,7 +82,7 @@ static void run(struct test_ctx *ctx) struct mp_imgfmt_desc d = mp_imgfmt_get_desc(mpfmt); if (d.id) { - fprintf(f, " Legacy desc: "); + fprintf(f, " Basic desc: "); #define FLAG(t, c) if (d.flags & (t)) fprintf(f, "[%s]", c); FLAG(MP_IMGFLAG_BYTE_ALIGNED, "ba") FLAG(MP_IMGFLAG_ALPHA, "a") @@ -95,13 +95,15 @@ static void run(struct test_ctx *ctx) FLAG(MP_IMGFLAG_PAL, "pal") FLAG(MP_IMGFLAG_HWACCEL, "hw") fprintf(f, "\n"); - fprintf(f, " planes=%d, chroma=%d:%d align=%d:%d bits=%d cbits=%d\n", - d.num_planes, d.chroma_xs, d.chroma_ys, d.align_x, d.align_y, - d.plane_bits, d.component_bits); + fprintf(f, " planes=%d, chroma=%d:%d align=%d:%d\n", + d.num_planes, d.chroma_xs, d.chroma_ys, d.align_x, d.align_y); fprintf(f, " {"); for (int n = 0; n < MP_MAX_PLANES; n++) { - fprintf(f, "%d/%d/[%d:%d] ", d.bytes[n], d.bpp[n], - d.xs[n], d.ys[n]); + if (n >= d.num_planes) { + assert(d.bpp[n] == 0 && d.xs[n] == 0 && d.ys[n] == 0); + continue; + } + fprintf(f, "%d/[%d:%d] ", d.bpp[n], d.xs[n], d.ys[n]); } fprintf(f, "}\n"); } else { diff --git a/test/ref/img_formats.txt b/test/ref/img_formats.txt index eeeb20b2cd..b1c733fa8f 100644 --- a/test/ref/img_formats.txt +++ b/test/ref/img_formats.txt @@ -1,7 +1,7 @@ 0bgr: fcsp=rgb ctype=uint - Legacy desc: [ba][rgb][le][be] - planes=1, chroma=0:0 align=1:1 bits=24 cbits=8 - {4/32/[0:0] 0/0/[0:0] 0/0/[0:0] 0/0/[0:0] } + Basic desc: [ba][rgb][le][be] + planes=1, chroma=0:0 align=1:1 + {32/[0:0] } Regular: planes=1 compbytes=1 bitpad=0 chroma=1x1 ctype=uint 0: {0, 3, 2, 1} AVD: name=0bgr chroma=0:0 flags=0x20 [rgb] @@ -9,9 +9,9 @@ 1: p=0 st=4 o=2 sh=0 d=8 2: p=0 st=4 o=1 sh=0 d=8 0rgb: fcsp=rgb ctype=uint - Legacy desc: [ba][rgb][le][be] - planes=1, chroma=0:0 align=1:1 bits=24 cbits=8 - {4/32/[0:0] 0/0/[0:0] 0/0/[0:0] 0/0/[0:0] } + Basic desc: [ba][rgb][le][be] + planes=1, chroma=0:0 align=1:1 + {32/[0:0] } Regular: planes=1 compbytes=1 bitpad=0 chroma=1x1 ctype=uint 0: {0, 1, 2, 3} AVD: name=0rgb chroma=0:0 flags=0x20 [rgb] @@ -19,9 +19,9 @@ 1: p=0 st=4 o=2 sh=0 d=8 2: p=0 st=4 o=3 sh=0 d=8 abgr: fcsp=rgb ctype=uint - Legacy desc: [ba][a][rgb][le][be] - planes=1, chroma=0:0 align=1:1 bits=32 cbits=8 - {4/32/[0:0] 0/0/[0:0] 0/0/[0:0] 0/0/[0:0] } + Basic desc: [ba][a][rgb][le][be] + planes=1, chroma=0:0 align=1:1 + {32/[0:0] } Regular: planes=1 compbytes=1 bitpad=0 chroma=1x1 ctype=uint 0: {4, 3, 2, 1} AVD: name=abgr chroma=0:0 flags=0xa0 [rgb][alpha] @@ -30,9 +30,9 @@ abgr: fcsp=rgb ctype=uint 2: p=0 st=4 o=1 sh=0 d=8 3: p=0 st=4 o=0 sh=0 d=8 argb: fcsp=rgb ctype=uint - Legacy desc: [ba][a][rgb][le][be] - planes=1, chroma=0:0 align=1:1 bits=32 cbits=8 - {4/32/[0:0] 0/0/[0:0] 0/0/[0:0] 0/0/[0:0] } + Basic desc: [ba][a][rgb][le][be] + planes=1, chroma=0:0 align=1:1 + {32/[0:0] } Regular: planes=1 compbytes=1 bitpad=0 chroma=1x1 ctype=uint 0: {4, 1, 2, 3} AVD: name=argb chroma=0:0 flags=0xa0 [rgb][alpha] @@ -41,9 +41,9 @@ argb: fcsp=rgb ctype=uint 2: p=0 st=4 o=3 sh=0 d=8 3: p=0 st=4 o=0 sh=0 d=8 ayuv64: [GENERIC] ctype=uint - Legacy desc: [ba][a][yuv][le] - planes=1, chroma=0:0 align=1:1 bits=64 cbits=16 - {8/64/[0:0] 0/0/[0:0] 0/0/[0:0] 0/0/[0:0] } + Basic desc: [ba][a][yuv][le] + planes=1, chroma=0:0 align=1:1 + {64/[0:0] } Regular: planes=1 compbytes=2 bitpad=0 chroma=1x1 ctype=uint 0: {4, 1, 2, 3} AVD: name=ayuv64le chroma=0:0 flags=0x80 [alpha] @@ -52,114 +52,114 @@ ayuv64: [GENERIC] ctype=uint 2: p=0 st=8 o=6 sh=0 d=16 3: p=0 st=8 o=0 sh=0 d=16 ayuv64be: [GENERIC] ctype=uint - Legacy desc: [ba][a][yuv][be] - planes=1, chroma=0:0 align=1:1 bits=64 cbits=16 - {8/64/[0:0] 0/0/[0:0] 0/0/[0:0] 0/0/[0:0] } + Basic desc: [ba][a][yuv][be] + planes=1, chroma=0:0 align=1:1 + {64/[0:0] } AVD: name=ayuv64be chroma=0:0 flags=0x81 [be][alpha] 0: p=0 st=8 o=2 sh=0 d=16 1: p=0 st=8 o=4 sh=0 d=16 2: p=0 st=8 o=6 sh=0 d=16 3: p=0 st=8 o=0 sh=0 d=16 bayer_bggr16: [GENERIC] fcsp=rgb ctype=uint - Legacy desc: [ba][rgb][le][be] - planes=1, chroma=0:0 align=1:1 bits=16 cbits=0 - {2/16/[0:0] 0/0/[0:0] 0/0/[0:0] 0/0/[0:0] } + Basic desc: [ba][rgb][le][be] + planes=1, chroma=0:0 align=1:1 + {16/[0:0] } AVD: name=bayer_bggr16le chroma=0:0 flags=0x120 [rgb][bayer] 0: p=0 st=2 o=0 sh=0 d=4 1: p=0 st=2 o=0 sh=0 d=8 2: p=0 st=2 o=0 sh=0 d=4 bayer_bggr16be: [GENERIC] fcsp=rgb ctype=uint - Legacy desc: [ba][rgb][le][be] - planes=1, chroma=0:0 align=1:1 bits=16 cbits=0 - {2/16/[0:0] 0/0/[0:0] 0/0/[0:0] 0/0/[0:0] } + Basic desc: [ba][rgb][le][be] + planes=1, chroma=0:0 align=1:1 + {16/[0:0] } AVD: name=bayer_bggr16be chroma=0:0 flags=0x121 [be][rgb][bayer] 0: p=0 st=2 o=0 sh=0 d=4 1: p=0 st=2 o=0 sh=0 d=8 2: p=0 st=2 o=0 sh=0 d=4 bayer_bggr8: [GENERIC] fcsp=rgb ctype=uint - Legacy desc: [ba][rgb][le][be] - planes=1, chroma=0:0 align=1:1 bits=8 cbits=0 - {1/8/[0:0] 0/0/[0:0] 0/0/[0:0] 0/0/[0:0] } + Basic desc: [ba][rgb][le][be] + planes=1, chroma=0:0 align=1:1 + {8/[0:0] } AVD: name=bayer_bggr8 chroma=0:0 flags=0x120 [rgb][bayer] 0: p=0 st=1 o=0 sh=0 d=2 1: p=0 st=1 o=0 sh=0 d=4 2: p=0 st=1 o=0 sh=0 d=2 bayer_gbrg16: [GENERIC] fcsp=rgb ctype=uint - Legacy desc: [ba][rgb][le][be] - planes=1, chroma=0:0 align=1:1 bits=16 cbits=0 - {2/16/[0:0] 0/0/[0:0] 0/0/[0:0] 0/0/[0:0] } + Basic desc: [ba][rgb][le][be] + planes=1, chroma=0:0 align=1:1 + {16/[0:0] } AVD: name=bayer_gbrg16le chroma=0:0 flags=0x120 [rgb][bayer] 0: p=0 st=2 o=0 sh=0 d=4 1: p=0 st=2 o=0 sh=0 d=8 2: p=0 st=2 o=0 sh=0 d=4 bayer_gbrg16be: [GENERIC] fcsp=rgb ctype=uint - Legacy desc: [ba][rgb][le][be] - planes=1, chroma=0:0 align=1:1 bits=16 cbits=0 - {2/16/[0:0] 0/0/[0:0] 0/0/[0:0] 0/0/[0:0] } + Basic desc: [ba][rgb][le][be] + planes=1, chroma=0:0 align=1:1 + {16/[0:0] } AVD: name=bayer_gbrg16be chroma=0:0 flags=0x121 [be][rgb][bayer] 0: p=0 st=2 o=0 sh=0 d=4 1: p=0 st=2 o=0 sh=0 d=8 2: p=0 st=2 o=0 sh=0 d=4 bayer_gbrg8: [GENERIC] fcsp=rgb ctype=uint - Legacy desc: [ba][rgb][le][be] - planes=1, chroma=0:0 align=1:1 bits=8 cbits=0 - {1/8/[0:0] 0/0/[0:0] 0/0/[0:0] 0/0/[0:0] } + Basic desc: [ba][rgb][le][be] + planes=1, chroma=0:0 align=1:1 + {8/[0:0] } AVD: name=bayer_gbrg8 chroma=0:0 flags=0x120 [rgb][bayer] 0: p=0 st=1 o=0 sh=0 d=2 1: p=0 st=1 o=0 sh=0 d=4 2: p=0 st=1 o=0 sh=0 d=2 bayer_grbg16: [GENERIC] fcsp=rgb ctype=uint - Legacy desc: [ba][rgb][le][be] - planes=1, chroma=0:0 align=1:1 bits=16 cbits=0 - {2/16/[0:0] 0/0/[0:0] 0/0/[0:0] 0/0/[0:0] } + Basic desc: [ba][rgb][le][be] + planes=1, chroma=0:0 align=1:1 + {16/[0:0] } AVD: name=bayer_grbg16le chroma=0:0 flags=0x120 [rgb][bayer] 0: p=0 st=2 o=0 sh=0 d=4 1: p=0 st=2 o=0 sh=0 d=8 2: p=0 st=2 o=0 sh=0 d=4 bayer_grbg16be: [GENERIC] fcsp=rgb ctype=uint - Legacy desc: [ba][rgb][le][be] - planes=1, chroma=0:0 align=1:1 bits=16 cbits=0 - {2/16/[0:0] 0/0/[0:0] 0/0/[0:0] 0/0/[0:0] } + Basic desc: [ba][rgb][le][be] + planes=1, chroma=0:0 align=1:1 + {16/[0:0] } AVD: name=bayer_grbg16be chroma=0:0 flags=0x121 [be][rgb][bayer] 0: p=0 st=2 o=0 sh=0 d=4 1: p=0 st=2 o=0 sh=0 d=8 2: p=0 st=2 o=0 sh=0 d=4 bayer_grbg8: [GENERIC] fcsp=rgb ctype=uint - Legacy desc: [ba][rgb][le][be] - planes=1, chroma=0:0 align=1:1 bits=8 cbits=0 - {1/8/[0:0] 0/0/[0:0] 0/0/[0:0] 0/0/[0:0] } + Basic desc: [ba][rgb][le][be] + planes=1, chroma=0:0 align=1:1 + {8/[0:0] } AVD: name=bayer_grbg8 chroma=0:0 flags=0x120 [rgb][bayer] 0: p=0 st=1 o=0 sh=0 d=2 1: p=0 st=1 o=0 sh=0 d=4 2: p=0 st=1 o=0 sh=0 d=2 bayer_rggb16: [GENERIC] fcsp=rgb ctype=uint - Legacy desc: [ba][rgb][le][be] - planes=1, chroma=0:0 align=1:1 bits=16 cbits=0 - {2/16/[0:0] 0/0/[0:0] 0/0/[0:0] 0/0/[0:0] } + Basic desc: [ba][rgb][le][be] + planes=1, chroma=0:0 align=1:1 + {16/[0:0] } AVD: name=bayer_rggb16le chroma=0:0 flags=0x120 [rgb][bayer] 0: p=0 st=2 o=0 sh=0 d=4 1: p=0 st=2 o=0 sh=0 d=8 2: p=0 st=2 o=0 sh=0 d=4 bayer_rggb16be: [GENERIC] fcsp=rgb ctype=uint - Legacy desc: [ba][rgb][le][be] - planes=1, chroma=0:0 align=1:1 bits=16 cbits=0 - {2/16/[0:0] 0/0/[0:0] 0/0/[0:0] 0/0/[0:0] } + Basic desc: [ba][rgb][le][be] + planes=1, chroma=0:0 align=1:1 + {16/[0:0] } AVD: name=bayer_rggb16be chroma=0:0 flags=0x121 [be][rgb][bayer] 0: p=0 st=2 o=0 sh=0 d=4 1: p=0 st=2 o=0 sh=0 d=8 2: p=0 st=2 o=0 sh=0 d=4 bayer_rggb8: [GENERIC] fcsp=rgb ctype=uint - Legacy desc: [ba][rgb][le][be] - planes=1, chroma=0:0 align=1:1 bits=8 cbits=0 - {1/8/[0:0] 0/0/[0:0] 0/0/[0:0] 0/0/[0:0] } + Basic desc: [ba][rgb][le][be] + planes=1, chroma=0:0 align=1:1 + {8/[0:0] } AVD: name=bayer_rggb8 chroma=0:0 flags=0x120 [rgb][bayer] 0: p=0 st=1 o=0 sh=0 d=2 1: p=0 st=1 o=0 sh=0 d=4 2: p=0 st=1 o=0 sh=0 d=2 bgr0: fcsp=rgb ctype=uint - Legacy desc: [ba][rgb][le][be] - planes=1, chroma=0:0 align=1:1 bits=24 cbits=8 - {4/32/[0:0] 0/0/[0:0] 0/0/[0:0] 0/0/[0:0] } + Basic desc: [ba][rgb][le][be] + planes=1, chroma=0:0 align=1:1 + {32/[0:0] } Regular: planes=1 compbytes=1 bitpad=0 chroma=1x1 ctype=uint 0: {3, 2, 1, 0} AVD: name=bgr0 chroma=0:0 flags=0x20 [rgb] @@ -167,9 +167,9 @@ bgr0: fcsp=rgb ctype=uint 1: p=0 st=4 o=1 sh=0 d=8 2: p=0 st=4 o=0 sh=0 d=8 bgr24: fcsp=rgb ctype=uint - Legacy desc: [ba][rgb][le][be] - planes=1, chroma=0:0 align=1:1 bits=24 cbits=8 - {3/24/[0:0] 0/0/[0:0] 0/0/[0:0] 0/0/[0:0] } + Basic desc: [ba][rgb][le][be] + planes=1, chroma=0:0 align=1:1 + {24/[0:0] } Regular: planes=1 compbytes=1 bitpad=0 chroma=1x1 ctype=uint 0: {3, 2, 1} AVD: name=bgr24 chroma=0:0 flags=0x20 [rgb] @@ -177,33 +177,33 @@ bgr24: fcsp=rgb ctype=uint 1: p=0 st=3 o=1 sh=0 d=8 2: p=0 st=3 o=0 sh=0 d=8 bgr4: [GENERIC] fcsp=rgb ctype=uint - Legacy desc: [rgb][le][be] - planes=1, chroma=0:0 align=2:1 bits=4 cbits=0 - {0/4/[0:0] 0/0/[0:0] 0/0/[0:0] 0/0/[0:0] } + Basic desc: [rgb][le][be] + planes=1, chroma=0:0 align=2:1 + {4/[0:0] } AVD: name=bgr4 chroma=0:0 flags=0x24 [bs][rgb] 0: p=0 st=4 o=3 sh=0 d=1 1: p=0 st=4 o=1 sh=0 d=2 2: p=0 st=4 o=0 sh=0 d=1 bgr444: [GENERIC] fcsp=rgb ctype=uint - Legacy desc: [ba][rgb][le] - planes=1, chroma=0:0 align=1:1 bits=12 cbits=4 - {2/16/[0:0] 0/0/[0:0] 0/0/[0:0] 0/0/[0:0] } + Basic desc: [ba][rgb][le] + planes=1, chroma=0:0 align=1:1 + {16/[0:0] } AVD: name=bgr444le chroma=0:0 flags=0x20 [rgb] 0: p=0 st=2 o=0 sh=0 d=4 1: p=0 st=2 o=0 sh=4 d=4 2: p=0 st=2 o=1 sh=0 d=4 bgr444be: [GENERIC] fcsp=rgb ctype=uint - Legacy desc: [ba][rgb][be] - planes=1, chroma=0:0 align=1:1 bits=12 cbits=4 - {2/16/[0:0] 0/0/[0:0] 0/0/[0:0] 0/0/[0:0] } + Basic desc: [ba][rgb][be] + planes=1, chroma=0:0 align=1:1 + {16/[0:0] } AVD: name=bgr444be chroma=0:0 flags=0x21 [be][rgb] 0: p=0 st=2 o=0 sh=0 d=4 1: p=0 st=2 o=0 sh=4 d=4 2: p=0 st=2 o=-1 sh=0 d=4 bgr48: [GENERIC] fcsp=rgb ctype=uint - Legacy desc: [ba][rgb][le] - planes=1, chroma=0:0 align=1:1 bits=48 cbits=16 - {6/48/[0:0] 0/0/[0:0] 0/0/[0:0] 0/0/[0:0] } + Basic desc: [ba][rgb][le] + planes=1, chroma=0:0 align=1:1 + {48/[0:0] } Regular: planes=1 compbytes=2 bitpad=0 chroma=1x1 ctype=uint 0: {3, 2, 1} AVD: name=bgr48le chroma=0:0 flags=0x20 [rgb] @@ -211,65 +211,65 @@ bgr48: [GENERIC] fcsp=rgb ctype=uint 1: p=0 st=6 o=2 sh=0 d=16 2: p=0 st=6 o=0 sh=0 d=16 bgr48be: [GENERIC] fcsp=rgb ctype=uint - Legacy desc: [ba][rgb][be] - planes=1, chroma=0:0 align=1:1 bits=48 cbits=16 - {6/48/[0:0] 0/0/[0:0] 0/0/[0:0] 0/0/[0:0] } + Basic desc: [ba][rgb][be] + planes=1, chroma=0:0 align=1:1 + {48/[0:0] } AVD: name=bgr48be chroma=0:0 flags=0x21 [be][rgb] 0: p=0 st=6 o=4 sh=0 d=16 1: p=0 st=6 o=2 sh=0 d=16 2: p=0 st=6 o=0 sh=0 d=16 bgr4_byte: [GENERIC] fcsp=rgb ctype=uint - Legacy desc: [ba][rgb][le][be] - planes=1, chroma=0:0 align=1:1 bits=4 cbits=0 - {1/8/[0:0] 0/0/[0:0] 0/0/[0:0] 0/0/[0:0] } + Basic desc: [ba][rgb][le][be] + planes=1, chroma=0:0 align=1:1 + {8/[0:0] } AVD: name=bgr4_byte chroma=0:0 flags=0x60 [rgb] 0: p=0 st=1 o=0 sh=0 d=1 1: p=0 st=1 o=0 sh=1 d=2 2: p=0 st=1 o=0 sh=3 d=1 bgr555: [GENERIC] fcsp=rgb ctype=uint - Legacy desc: [ba][rgb][le] - planes=1, chroma=0:0 align=1:1 bits=15 cbits=5 - {2/16/[0:0] 0/0/[0:0] 0/0/[0:0] 0/0/[0:0] } + Basic desc: [ba][rgb][le] + planes=1, chroma=0:0 align=1:1 + {16/[0:0] } AVD: name=bgr555le chroma=0:0 flags=0x20 [rgb] 0: p=0 st=2 o=0 sh=0 d=5 1: p=0 st=2 o=0 sh=5 d=5 2: p=0 st=2 o=1 sh=2 d=5 bgr555be: [GENERIC] fcsp=rgb ctype=uint - Legacy desc: [ba][rgb][be] - planes=1, chroma=0:0 align=1:1 bits=15 cbits=5 - {2/16/[0:0] 0/0/[0:0] 0/0/[0:0] 0/0/[0:0] } + Basic desc: [ba][rgb][be] + planes=1, chroma=0:0 align=1:1 + {16/[0:0] } AVD: name=bgr555be chroma=0:0 flags=0x21 [be][rgb] 0: p=0 st=2 o=0 sh=0 d=5 1: p=0 st=2 o=0 sh=5 d=5 2: p=0 st=2 o=-1 sh=2 d=5 bgr565: [GENERIC] fcsp=rgb ctype=uint - Legacy desc: [ba][rgb][le] - planes=1, chroma=0:0 align=1:1 bits=16 cbits=0 - {2/16/[0:0] 0/0/[0:0] 0/0/[0:0] 0/0/[0:0] } + Basic desc: [ba][rgb][le] + planes=1, chroma=0:0 align=1:1 + {16/[0:0] } AVD: name=bgr565le chroma=0:0 flags=0x20 [rgb] 0: p=0 st=2 o=0 sh=0 d=5 1: p=0 st=2 o=0 sh=5 d=6 2: p=0 st=2 o=1 sh=3 d=5 bgr565be: [GENERIC] fcsp=rgb ctype=uint - Legacy desc: [ba][rgb][be] - planes=1, chroma=0:0 align=1:1 bits=16 cbits=0 - {2/16/[0:0] 0/0/[0:0] 0/0/[0:0] 0/0/[0:0] } + Basic desc: [ba][rgb][be] + planes=1, chroma=0:0 align=1:1 + {16/[0:0] } AVD: name=bgr565be chroma=0:0 flags=0x21 [be][rgb] 0: p=0 st=2 o=0 sh=0 d=5 1: p=0 st=2 o=0 sh=5 d=6 2: p=0 st=2 o=-1 sh=3 d=5 bgr8: [GENERIC] fcsp=rgb ctype=uint - Legacy desc: [ba][rgb][le][be] - planes=1, chroma=0:0 align=1:1 bits=8 cbits=0 - {1/8/[0:0] 0/0/[0:0] 0/0/[0:0] 0/0/[0:0] } + Basic desc: [ba][rgb][le][be] + planes=1, chroma=0:0 align=1:1 + {8/[0:0] } AVD: name=bgr8 chroma=0:0 flags=0x60 [rgb] 0: p=0 st=1 o=0 sh=0 d=3 1: p=0 st=1 o=0 sh=3 d=3 2: p=0 st=1 o=0 sh=6 d=2 bgra: fcsp=rgb ctype=uint - Legacy desc: [ba][a][rgb][le][be] - planes=1, chroma=0:0 align=1:1 bits=32 cbits=8 - {4/32/[0:0] 0/0/[0:0] 0/0/[0:0] 0/0/[0:0] } + Basic desc: [ba][a][rgb][le][be] + planes=1, chroma=0:0 align=1:1 + {32/[0:0] } Regular: planes=1 compbytes=1 bitpad=0 chroma=1x1 ctype=uint 0: {3, 2, 1, 4} AVD: name=bgra chroma=0:0 flags=0xa0 [rgb][alpha] @@ -278,9 +278,9 @@ bgra: fcsp=rgb ctype=uint 2: p=0 st=4 o=0 sh=0 d=8 3: p=0 st=4 o=3 sh=0 d=8 bgra64: [GENERIC] fcsp=rgb ctype=uint - Legacy desc: [ba][a][rgb][le] - planes=1, chroma=0:0 align=1:1 bits=64 cbits=16 - {8/64/[0:0] 0/0/[0:0] 0/0/[0:0] 0/0/[0:0] } + Basic desc: [ba][a][rgb][le] + planes=1, chroma=0:0 align=1:1 + {64/[0:0] } Regular: planes=1 compbytes=2 bitpad=0 chroma=1x1 ctype=uint 0: {3, 2, 1, 4} AVD: name=bgra64le chroma=0:0 flags=0xa0 [rgb][alpha] @@ -289,43 +289,43 @@ bgra64: [GENERIC] fcsp=rgb ctype=uint 2: p=0 st=8 o=0 sh=0 d=16 3: p=0 st=8 o=6 sh=0 d=16 bgra64be: [GENERIC] fcsp=rgb ctype=uint - Legacy desc: [ba][a][rgb][be] - planes=1, chroma=0:0 align=1:1 bits=64 cbits=16 - {8/64/[0:0] 0/0/[0:0] 0/0/[0:0] 0/0/[0:0] } + Basic desc: [ba][a][rgb][be] + planes=1, chroma=0:0 align=1:1 + {64/[0:0] } AVD: name=bgra64be chroma=0:0 flags=0xa1 [be][rgb][alpha] 0: p=0 st=8 o=4 sh=0 d=16 1: p=0 st=8 o=2 sh=0 d=16 2: p=0 st=8 o=0 sh=0 d=16 3: p=0 st=8 o=6 sh=0 d=16 cuda: ctype=unknown - Legacy desc: [le][be][hw] - planes=0, chroma=0:0 align=1:1 bits=0 cbits=0 - {0/0/[0:0] 0/0/[0:0] 0/0/[0:0] 0/0/[0:0] } + Basic desc: [le][be][hw] + planes=0, chroma=0:0 align=1:1 + {} AVD: name=cuda chroma=0:0 flags=0x8 [hw] d3d11: ctype=unknown - Legacy desc: [le][be][hw] - planes=0, chroma=0:0 align=1:1 bits=0 cbits=0 - {0/0/[0:0] 0/0/[0:0] 0/0/[0:0] 0/0/[0:0] } + Basic desc: [le][be][hw] + planes=0, chroma=0:0 align=1:1 + {} AVD: name=d3d11 chroma=0:0 flags=0x8 [hw] d3d11va_vld: [GENERIC] ctype=unknown - Legacy desc: [le][be][hw] - planes=0, chroma=1:1 align=2:2 bits=0 cbits=0 - {0/0/[0:0] 0/0/[0:0] 0/0/[0:0] 0/0/[0:0] } + Basic desc: [le][be][hw] + planes=0, chroma=1:1 align=2:2 + {} AVD: name=d3d11va_vld chroma=1:1 flags=0x8 [hw] drm_prime: ctype=unknown - Legacy desc: [le][be][hw] - planes=0, chroma=0:0 align=1:1 bits=0 cbits=0 - {0/0/[0:0] 0/0/[0:0] 0/0/[0:0] 0/0/[0:0] } + Basic desc: [le][be][hw] + planes=0, chroma=0:0 align=1:1 + {} AVD: name=drm_prime chroma=0:0 flags=0x8 [hw] dxva2_vld: ctype=unknown - Legacy desc: [le][be][hw] - planes=0, chroma=1:1 align=2:2 bits=0 cbits=0 - {0/0/[0:0] 0/0/[0:0] 0/0/[0:0] 0/0/[0:0] } + Basic desc: [le][be][hw] + planes=0, chroma=1:1 align=2:2 + {} AVD: name=dxva2_vld chroma=1:1 flags=0x8 [hw] gbrap: [GENERIC] fcsp=rgb ctype=uint - Legacy desc: [ba][a][rgb][le][be] - planes=4, chroma=0:0 align=1:1 bits=8 cbits=8 - {1/8/[0:0] 1/8/[0:0] 1/8/[0:0] 1/8/[0:0] } + Basic desc: [ba][a][rgb][le][be] + planes=4, chroma=0:0 align=1:1 + {8/[0:0] 8/[0:0] 8/[0:0] 8/[0:0] } Regular: planes=4 compbytes=1 bitpad=0 chroma=1x1 ctype=uint 0: {2} 1: {3} @@ -337,9 +337,9 @@ gbrap: [GENERIC] fcsp=rgb ctype=uint 2: p=1 st=1 o=0 sh=0 d=8 3: p=3 st=1 o=0 sh=0 d=8 gbrap10: [GENERIC] fcsp=rgb ctype=uint - Legacy desc: [ba][a][rgb][le] - planes=4, chroma=0:0 align=1:1 bits=10 cbits=10 - {2/16/[0:0] 2/16/[0:0] 2/16/[0:0] 2/16/[0:0] } + Basic desc: [ba][a][rgb][le] + planes=4, chroma=0:0 align=1:1 + {16/[0:0] 16/[0:0] 16/[0:0] 16/[0:0] } Regular: planes=4 compbytes=2 bitpad=-6 chroma=1x1 ctype=uint 0: {2} 1: {3} @@ -351,18 +351,18 @@ gbrap10: [GENERIC] fcsp=rgb ctype=uint 2: p=1 st=2 o=0 sh=0 d=10 3: p=3 st=2 o=0 sh=0 d=10 gbrap10be: [GENERIC] fcsp=rgb ctype=uint - Legacy desc: [ba][a][rgb][be] - planes=4, chroma=0:0 align=1:1 bits=10 cbits=10 - {2/16/[0:0] 2/16/[0:0] 2/16/[0:0] 2/16/[0:0] } + Basic desc: [ba][a][rgb][be] + planes=4, chroma=0:0 align=1:1 + {16/[0:0] 16/[0:0] 16/[0:0] 16/[0:0] } AVD: name=gbrap10be chroma=0:0 flags=0xb1 [be][planar][rgb][alpha] 0: p=2 st=2 o=0 sh=0 d=10 1: p=0 st=2 o=0 sh=0 d=10 2: p=1 st=2 o=0 sh=0 d=10 3: p=3 st=2 o=0 sh=0 d=10 gbrap12: [GENERIC] fcsp=rgb ctype=uint - Legacy desc: [ba][a][rgb][le] - planes=4, chroma=0:0 align=1:1 bits=12 cbits=12 - {2/16/[0:0] 2/16/[0:0] 2/16/[0:0] 2/16/[0:0] } + Basic desc: [ba][a][rgb][le] + planes=4, chroma=0:0 align=1:1 + {16/[0:0] 16/[0:0] 16/[0:0] 16/[0:0] } Regular: planes=4 compbytes=2 bitpad=-4 chroma=1x1 ctype=uint 0: {2} 1: {3} @@ -374,18 +374,18 @@ gbrap12: [GENERIC] fcsp=rgb ctype=uint 2: p=1 st=2 o=0 sh=0 d=12 3: p=3 st=2 o=0 sh=0 d=12 gbrap12be: [GENERIC] fcsp=rgb ctype=uint - Legacy desc: [ba][a][rgb][be] - planes=4, chroma=0:0 align=1:1 bits=12 cbits=12 - {2/16/[0:0] 2/16/[0:0] 2/16/[0:0] 2/16/[0:0] } + Basic desc: [ba][a][rgb][be] + planes=4, chroma=0:0 align=1:1 + {16/[0:0] 16/[0:0] 16/[0:0] 16/[0:0] } AVD: name=gbrap12be chroma=0:0 flags=0xb1 [be][planar][rgb][alpha] 0: p=2 st=2 o=0 sh=0 d=12 1: p=0 st=2 o=0 sh=0 d=12 2: p=1 st=2 o=0 sh=0 d=12 3: p=3 st=2 o=0 sh=0 d=12 gbrap16: [GENERIC] fcsp=rgb ctype=uint - Legacy desc: [ba][a][rgb][le] - planes=4, chroma=0:0 align=1:1 bits=16 cbits=16 - {2/16/[0:0] 2/16/[0:0] 2/16/[0:0] 2/16/[0:0] } + Basic desc: [ba][a][rgb][le] + planes=4, chroma=0:0 align=1:1 + {16/[0:0] 16/[0:0] 16/[0:0] 16/[0:0] } Regular: planes=4 compbytes=2 bitpad=0 chroma=1x1 ctype=uint 0: {2} 1: {3} @@ -397,18 +397,18 @@ gbrap16: [GENERIC] fcsp=rgb ctype=uint 2: p=1 st=2 o=0 sh=0 d=16 3: p=3 st=2 o=0 sh=0 d=16 gbrap16be: [GENERIC] fcsp=rgb ctype=uint - Legacy desc: [ba][a][rgb][be] - planes=4, chroma=0:0 align=1:1 bits=16 cbits=16 - {2/16/[0:0] 2/16/[0:0] 2/16/[0:0] 2/16/[0:0] } + Basic desc: [ba][a][rgb][be] + planes=4, chroma=0:0 align=1:1 + {16/[0:0] 16/[0:0] 16/[0:0] 16/[0:0] } AVD: name=gbrap16be chroma=0:0 flags=0xb1 [be][planar][rgb][alpha] 0: p=2 st=2 o=0 sh=0 d=16 1: p=0 st=2 o=0 sh=0 d=16 2: p=1 st=2 o=0 sh=0 d=16 3: p=3 st=2 o=0 sh=0 d=16 gbrapf32: [GENERIC] fcsp=rgb ctype=float - Legacy desc: [ba][a][rgb][le] - planes=4, chroma=0:0 align=1:1 bits=32 cbits=32 - {4/32/[0:0] 4/32/[0:0] 4/32/[0:0] 4/32/[0:0] } + Basic desc: [ba][a][rgb][le] + planes=4, chroma=0:0 align=1:1 + {32/[0:0] 32/[0:0] 32/[0:0] 32/[0:0] } Regular: planes=4 compbytes=4 bitpad=0 chroma=1x1 ctype=float 0: {2} 1: {3} @@ -420,18 +420,18 @@ gbrapf32: [GENERIC] fcsp=rgb ctype=float 2: p=1 st=4 o=0 sh=0 d=32 3: p=3 st=4 o=0 sh=0 d=32 gbrapf32be: [GENERIC] fcsp=rgb ctype=float - Legacy desc: [ba][a][rgb][be] - planes=4, chroma=0:0 align=1:1 bits=32 cbits=32 - {4/32/[0:0] 4/32/[0:0] 4/32/[0:0] 4/32/[0:0] } + Basic desc: [ba][a][rgb][be] + planes=4, chroma=0:0 align=1:1 + {32/[0:0] 32/[0:0] 32/[0:0] 32/[0:0] } AVD: name=gbrapf32be chroma=0:0 flags=0x2b1 [be][planar][rgb][alpha][float] 0: p=2 st=4 o=0 sh=0 d=32 1: p=0 st=4 o=0 sh=0 d=32 2: p=1 st=4 o=0 sh=0 d=32 3: p=3 st=4 o=0 sh=0 d=32 gbrp: [GENERIC] fcsp=rgb ctype=uint - Legacy desc: [ba][rgb][le][be] - planes=3, chroma=0:0 align=1:1 bits=8 cbits=8 - {1/8/[0:0] 1/8/[0:0] 1/8/[0:0] 0/0/[0:0] } + Basic desc: [ba][rgb][le][be] + planes=3, chroma=0:0 align=1:1 + {8/[0:0] 8/[0:0] 8/[0:0] } Regular: planes=3 compbytes=1 bitpad=0 chroma=1x1 ctype=uint 0: {2} 1: {3} @@ -441,17 +441,17 @@ gbrp: [GENERIC] fcsp=rgb ctype=uint 1: p=0 st=1 o=0 sh=0 d=8 2: p=1 st=1 o=0 sh=0 d=8 gbrp1: fcsp=rgb ctype=uint - Legacy desc: [ba][rgb][le] - planes=3, chroma=0:0 align=1:1 bits=1 cbits=1 - {1/8/[0:0] 1/8/[0:0] 1/8/[0:0] 0/0/[0:0] } + Basic desc: [ba][rgb][le] + planes=3, chroma=0:0 align=1:1 + {8/[0:0] 8/[0:0] 8/[0:0] } Regular: planes=3 compbytes=1 bitpad=-7 chroma=1x1 ctype=uint 0: {2} 1: {3} 2: {1} gbrp10: [GENERIC] fcsp=rgb ctype=uint - Legacy desc: [ba][rgb][le] - planes=3, chroma=0:0 align=1:1 bits=10 cbits=10 - {2/16/[0:0] 2/16/[0:0] 2/16/[0:0] 0/0/[0:0] } + Basic desc: [ba][rgb][le] + planes=3, chroma=0:0 align=1:1 + {16/[0:0] 16/[0:0] 16/[0:0] } Regular: planes=3 compbytes=2 bitpad=-6 chroma=1x1 ctype=uint 0: {2} 1: {3} @@ -461,17 +461,17 @@ gbrp10: [GENERIC] fcsp=rgb ctype=uint 1: p=0 st=2 o=0 sh=0 d=10 2: p=1 st=2 o=0 sh=0 d=10 gbrp10be: [GENERIC] fcsp=rgb ctype=uint - Legacy desc: [ba][rgb][be] - planes=3, chroma=0:0 align=1:1 bits=10 cbits=10 - {2/16/[0:0] 2/16/[0:0] 2/16/[0:0] 0/0/[0:0] } + Basic desc: [ba][rgb][be] + planes=3, chroma=0:0 align=1:1 + {16/[0:0] 16/[0:0] 16/[0:0] } AVD: name=gbrp10be chroma=0:0 flags=0x31 [be][planar][rgb] 0: p=2 st=2 o=0 sh=0 d=10 1: p=0 st=2 o=0 sh=0 d=10 2: p=1 st=2 o=0 sh=0 d=10 gbrp12: [GENERIC] fcsp=rgb ctype=uint - Legacy desc: [ba][rgb][le] - planes=3, chroma=0:0 align=1:1 bits=12 cbits=12 - {2/16/[0:0] 2/16/[0:0] 2/16/[0:0] 0/0/[0:0] } + Basic desc: [ba][rgb][le] + planes=3, chroma=0:0 align=1:1 + {16/[0:0] 16/[0:0] 16/[0:0] } Regular: planes=3 compbytes=2 bitpad=-4 chroma=1x1 ctype=uint 0: {2} 1: {3} @@ -481,17 +481,17 @@ gbrp12: [GENERIC] fcsp=rgb ctype=uint 1: p=0 st=2 o=0 sh=0 d=12 2: p=1 st=2 o=0 sh=0 d=12 gbrp12be: [GENERIC] fcsp=rgb ctype=uint - Legacy desc: [ba][rgb][be] - planes=3, chroma=0:0 align=1:1 bits=12 cbits=12 - {2/16/[0:0] 2/16/[0:0] 2/16/[0:0] 0/0/[0:0] } + Basic desc: [ba][rgb][be] + planes=3, chroma=0:0 align=1:1 + {16/[0:0] 16/[0:0] 16/[0:0] } AVD: name=gbrp12be chroma=0:0 flags=0x31 [be][planar][rgb] 0: p=2 st=2 o=0 sh=0 d=12 1: p=0 st=2 o=0 sh=0 d=12 2: p=1 st=2 o=0 sh=0 d=12 gbrp14: [GENERIC] fcsp=rgb ctype=uint - Legacy desc: [ba][rgb][le] - planes=3, chroma=0:0 align=1:1 bits=14 cbits=14 - {2/16/[0:0] 2/16/[0:0] 2/16/[0:0] 0/0/[0:0] } + Basic desc: [ba][rgb][le] + planes=3, chroma=0:0 align=1:1 + {16/[0:0] 16/[0:0] 16/[0:0] } Regular: planes=3 compbytes=2 bitpad=-2 chroma=1x1 ctype=uint 0: {2} 1: {3} @@ -501,17 +501,17 @@ gbrp14: [GENERIC] fcsp=rgb ctype=uint 1: p=0 st=2 o=0 sh=0 d=14 2: p=1 st=2 o=0 sh=0 d=14 gbrp14be: [GENERIC] fcsp=rgb ctype=uint - Legacy desc: [ba][rgb][be] - planes=3, chroma=0:0 align=1:1 bits=14 cbits=14 - {2/16/[0:0] 2/16/[0:0] 2/16/[0:0] 0/0/[0:0] } + Basic desc: [ba][rgb][be] + planes=3, chroma=0:0 align=1:1 + {16/[0:0] 16/[0:0] 16/[0:0] } AVD: name=gbrp14be chroma=0:0 flags=0x31 [be][planar][rgb] 0: p=2 st=2 o=0 sh=0 d=14 1: p=0 st=2 o=0 sh=0 d=14 2: p=1 st=2 o=0 sh=0 d=14 gbrp16: [GENERIC] fcsp=rgb ctype=uint - Legacy desc: [ba][rgb][le] - planes=3, chroma=0:0 align=1:1 bits=16 cbits=16 - {2/16/[0:0] 2/16/[0:0] 2/16/[0:0] 0/0/[0:0] } + Basic desc: [ba][rgb][le] + planes=3, chroma=0:0 align=1:1 + {16/[0:0] 16/[0:0] 16/[0:0] } Regular: planes=3 compbytes=2 bitpad=0 chroma=1x1 ctype=uint 0: {2} 1: {3} @@ -521,57 +521,57 @@ gbrp16: [GENERIC] fcsp=rgb ctype=uint 1: p=0 st=2 o=0 sh=0 d=16 2: p=1 st=2 o=0 sh=0 d=16 gbrp16be: [GENERIC] fcsp=rgb ctype=uint - Legacy desc: [ba][rgb][be] - planes=3, chroma=0:0 align=1:1 bits=16 cbits=16 - {2/16/[0:0] 2/16/[0:0] 2/16/[0:0] 0/0/[0:0] } + Basic desc: [ba][rgb][be] + planes=3, chroma=0:0 align=1:1 + {16/[0:0] 16/[0:0] 16/[0:0] } AVD: name=gbrp16be chroma=0:0 flags=0x31 [be][planar][rgb] 0: p=2 st=2 o=0 sh=0 d=16 1: p=0 st=2 o=0 sh=0 d=16 2: p=1 st=2 o=0 sh=0 d=16 gbrp2: fcsp=rgb ctype=uint - Legacy desc: [ba][rgb][le] - planes=3, chroma=0:0 align=1:1 bits=2 cbits=2 - {1/8/[0:0] 1/8/[0:0] 1/8/[0:0] 0/0/[0:0] } + Basic desc: [ba][rgb][le] + planes=3, chroma=0:0 align=1:1 + {8/[0:0] 8/[0:0] 8/[0:0] } Regular: planes=3 compbytes=1 bitpad=-6 chroma=1x1 ctype=uint 0: {2} 1: {3} 2: {1} gbrp3: fcsp=rgb ctype=uint - Legacy desc: [ba][rgb][le] - planes=3, chroma=0:0 align=1:1 bits=3 cbits=3 - {1/8/[0:0] 1/8/[0:0] 1/8/[0:0] 0/0/[0:0] } + Basic desc: [ba][rgb][le] + planes=3, chroma=0:0 align=1:1 + {8/[0:0] 8/[0:0] 8/[0:0] } Regular: planes=3 compbytes=1 bitpad=-5 chroma=1x1 ctype=uint 0: {2} 1: {3} 2: {1} gbrp4: fcsp=rgb ctype=uint - Legacy desc: [ba][rgb][le] - planes=3, chroma=0:0 align=1:1 bits=4 cbits=4 - {1/8/[0:0] 1/8/[0:0] 1/8/[0:0] 0/0/[0:0] } + Basic desc: [ba][rgb][le] + planes=3, chroma=0:0 align=1:1 + {8/[0:0] 8/[0:0] 8/[0:0] } Regular: planes=3 compbytes=1 bitpad=-4 chroma=1x1 ctype=uint 0: {2} 1: {3} 2: {1} gbrp5: fcsp=rgb ctype=uint - Legacy desc: [ba][rgb][le] - planes=3, chroma=0:0 align=1:1 bits=5 cbits=5 - {1/8/[0:0] 1/8/[0:0] 1/8/[0:0] 0/0/[0:0] } + Basic desc: [ba][rgb][le] + planes=3, chroma=0:0 align=1:1 + {8/[0:0] 8/[0:0] 8/[0:0] } Regular: planes=3 compbytes=1 bitpad=-3 chroma=1x1 ctype=uint 0: {2} 1: {3} 2: {1} gbrp6: fcsp=rgb ctype=uint - Legacy desc: [ba][rgb][le] - planes=3, chroma=0:0 align=1:1 bits=6 cbits=6 - {1/8/[0:0] 1/8/[0:0] 1/8/[0:0] 0/0/[0:0] } + Basic desc: [ba][rgb][le] + planes=3, chroma=0:0 align=1:1 + {8/[0:0] 8/[0:0] 8/[0:0] } Regular: planes=3 compbytes=1 bitpad=-2 chroma=1x1 ctype=uint 0: {2} 1: {3} 2: {1} gbrp9: [GENERIC] fcsp=rgb ctype=uint - Legacy desc: [ba][rgb][le] - planes=3, chroma=0:0 align=1:1 bits=9 cbits=9 - {2/16/[0:0] 2/16/[0:0] 2/16/[0:0] 0/0/[0:0] } + Basic desc: [ba][rgb][le] + planes=3, chroma=0:0 align=1:1 + {16/[0:0] 16/[0:0] 16/[0:0] } Regular: planes=3 compbytes=2 bitpad=-7 chroma=1x1 ctype=uint 0: {2} 1: {3} @@ -581,17 +581,17 @@ gbrp9: [GENERIC] fcsp=rgb ctype=uint 1: p=0 st=2 o=0 sh=0 d=9 2: p=1 st=2 o=0 sh=0 d=9 gbrp9be: [GENERIC] fcsp=rgb ctype=uint - Legacy desc: [ba][rgb][be] - planes=3, chroma=0:0 align=1:1 bits=9 cbits=9 - {2/16/[0:0] 2/16/[0:0] 2/16/[0:0] 0/0/[0:0] } + Basic desc: [ba][rgb][be] + planes=3, chroma=0:0 align=1:1 + {16/[0:0] 16/[0:0] 16/[0:0] } AVD: name=gbrp9be chroma=0:0 flags=0x31 [be][planar][rgb] 0: p=2 st=2 o=0 sh=0 d=9 1: p=0 st=2 o=0 sh=0 d=9 2: p=1 st=2 o=0 sh=0 d=9 gbrpf32: [GENERIC] fcsp=rgb ctype=float - Legacy desc: [ba][rgb][le] - planes=3, chroma=0:0 align=1:1 bits=32 cbits=32 - {4/32/[0:0] 4/32/[0:0] 4/32/[0:0] 0/0/[0:0] } + Basic desc: [ba][rgb][le] + planes=3, chroma=0:0 align=1:1 + {32/[0:0] 32/[0:0] 32/[0:0] } Regular: planes=3 compbytes=4 bitpad=0 chroma=1x1 ctype=float 0: {2} 1: {3} @@ -601,138 +601,138 @@ gbrpf32: [GENERIC] fcsp=rgb ctype=float 1: p=0 st=4 o=0 sh=0 d=32 2: p=1 st=4 o=0 sh=0 d=32 gbrpf32be: [GENERIC] fcsp=rgb ctype=float - Legacy desc: [ba][rgb][be] - planes=3, chroma=0:0 align=1:1 bits=32 cbits=32 - {4/32/[0:0] 4/32/[0:0] 4/32/[0:0] 0/0/[0:0] } + Basic desc: [ba][rgb][be] + planes=3, chroma=0:0 align=1:1 + {32/[0:0] 32/[0:0] 32/[0:0] } AVD: name=gbrpf32be chroma=0:0 flags=0x231 [be][planar][rgb][float] 0: p=2 st=4 o=0 sh=0 d=32 1: p=0 st=4 o=0 sh=0 d=32 2: p=1 st=4 o=0 sh=0 d=32 gray: ctype=uint - Legacy desc: [ba][yuvp][yuv][le][be] - planes=1, chroma=0:0 align=1:1 bits=8 cbits=8 - {1/8/[0:0] 0/0/[0:0] 0/0/[0:0] 0/0/[0:0] } + Basic desc: [ba][yuvp][yuv][le][be] + planes=1, chroma=0:0 align=1:1 + {8/[0:0] } Regular: planes=1 compbytes=1 bitpad=0 chroma=1x1 ctype=uint 0: {1} AVD: name=gray chroma=0:0 flags=0x40 0: p=0 st=1 o=0 sh=0 d=8 gray10: [GENERIC] ctype=uint - Legacy desc: [ba][yuvp][yuv][le] - planes=1, chroma=0:0 align=1:1 bits=10 cbits=10 - {2/16/[0:0] 0/0/[0:0] 0/0/[0:0] 0/0/[0:0] } + Basic desc: [ba][yuvp][yuv][le] + planes=1, chroma=0:0 align=1:1 + {16/[0:0] } Regular: planes=1 compbytes=2 bitpad=-6 chroma=1x1 ctype=uint 0: {1} AVD: name=gray10le chroma=0:0 flags=0x0 0: p=0 st=2 o=0 sh=0 d=10 gray10be: [GENERIC] ctype=uint - Legacy desc: [ba][yuvp][yuv][be] - planes=1, chroma=0:0 align=1:1 bits=10 cbits=10 - {2/16/[0:0] 0/0/[0:0] 0/0/[0:0] 0/0/[0:0] } + Basic desc: [ba][yuvp][yuv][be] + planes=1, chroma=0:0 align=1:1 + {16/[0:0] } AVD: name=gray10be chroma=0:0 flags=0x1 [be] 0: p=0 st=2 o=0 sh=0 d=10 gray12: [GENERIC] ctype=uint - Legacy desc: [ba][yuvp][yuv][le] - planes=1, chroma=0:0 align=1:1 bits=12 cbits=12 - {2/16/[0:0] 0/0/[0:0] 0/0/[0:0] 0/0/[0:0] } + Basic desc: [ba][yuvp][yuv][le] + planes=1, chroma=0:0 align=1:1 + {16/[0:0] } Regular: planes=1 compbytes=2 bitpad=-4 chroma=1x1 ctype=uint 0: {1} AVD: name=gray12le chroma=0:0 flags=0x0 0: p=0 st=2 o=0 sh=0 d=12 gray12be: [GENERIC] ctype=uint - Legacy desc: [ba][yuvp][yuv][be] - planes=1, chroma=0:0 align=1:1 bits=12 cbits=12 - {2/16/[0:0] 0/0/[0:0] 0/0/[0:0] 0/0/[0:0] } + Basic desc: [ba][yuvp][yuv][be] + planes=1, chroma=0:0 align=1:1 + {16/[0:0] } AVD: name=gray12be chroma=0:0 flags=0x1 [be] 0: p=0 st=2 o=0 sh=0 d=12 gray14: [GENERIC] ctype=uint - Legacy desc: [ba][yuvp][yuv][le] - planes=1, chroma=0:0 align=1:1 bits=14 cbits=14 - {2/16/[0:0] 0/0/[0:0] 0/0/[0:0] 0/0/[0:0] } + Basic desc: [ba][yuvp][yuv][le] + planes=1, chroma=0:0 align=1:1 + {16/[0:0] } Regular: planes=1 compbytes=2 bitpad=-2 chroma=1x1 ctype=uint 0: {1} AVD: name=gray14le chroma=0:0 flags=0x0 0: p=0 st=2 o=0 sh=0 d=14 gray14be: [GENERIC] ctype=uint - Legacy desc: [ba][yuvp][yuv][be] - planes=1, chroma=0:0 align=1:1 bits=14 cbits=14 - {2/16/[0:0] 0/0/[0:0] 0/0/[0:0] 0/0/[0:0] } + Basic desc: [ba][yuvp][yuv][be] + planes=1, chroma=0:0 align=1:1 + {16/[0:0] } AVD: name=gray14be chroma=0:0 flags=0x1 [be] 0: p=0 st=2 o=0 sh=0 d=14 gray16: ctype=uint - Legacy desc: [ba][yuvp][yuv][le] - planes=1, chroma=0:0 align=1:1 bits=16 cbits=16 - {2/16/[0:0] 0/0/[0:0] 0/0/[0:0] 0/0/[0:0] } + Basic desc: [ba][yuvp][yuv][le] + planes=1, chroma=0:0 align=1:1 + {16/[0:0] } Regular: planes=1 compbytes=2 bitpad=0 chroma=1x1 ctype=uint 0: {1} AVD: name=gray16le chroma=0:0 flags=0x0 0: p=0 st=2 o=0 sh=0 d=16 gray16be: [GENERIC] ctype=uint - Legacy desc: [ba][yuvp][yuv][be] - planes=1, chroma=0:0 align=1:1 bits=16 cbits=16 - {2/16/[0:0] 0/0/[0:0] 0/0/[0:0] 0/0/[0:0] } + Basic desc: [ba][yuvp][yuv][be] + planes=1, chroma=0:0 align=1:1 + {16/[0:0] } AVD: name=gray16be chroma=0:0 flags=0x1 [be] 0: p=0 st=2 o=0 sh=0 d=16 gray9: [GENERIC] ctype=uint - Legacy desc: [ba][yuvp][yuv][le] - planes=1, chroma=0:0 align=1:1 bits=9 cbits=9 - {2/16/[0:0] 0/0/[0:0] 0/0/[0:0] 0/0/[0:0] } + Basic desc: [ba][yuvp][yuv][le] + planes=1, chroma=0:0 align=1:1 + {16/[0:0] } Regular: planes=1 compbytes=2 bitpad=-7 chroma=1x1 ctype=uint 0: {1} AVD: name=gray9le chroma=0:0 flags=0x0 0: p=0 st=2 o=0 sh=0 d=9 gray9be: [GENERIC] ctype=uint - Legacy desc: [ba][yuvp][yuv][be] - planes=1, chroma=0:0 align=1:1 bits=9 cbits=9 - {2/16/[0:0] 0/0/[0:0] 0/0/[0:0] 0/0/[0:0] } + Basic desc: [ba][yuvp][yuv][be] + planes=1, chroma=0:0 align=1:1 + {16/[0:0] } AVD: name=gray9be chroma=0:0 flags=0x1 [be] 0: p=0 st=2 o=0 sh=0 d=9 grayaf32: ctype=float - Legacy desc: [ba][a][yuvp][yuv][le] - planes=2, chroma=0:0 align=1:1 bits=32 cbits=32 - {4/32/[0:0] 4/32/[0:0] 0/0/[0:0] 0/0/[0:0] } + Basic desc: [ba][a][yuvp][yuv][le] + planes=2, chroma=0:0 align=1:1 + {32/[0:0] 32/[0:0] } Regular: planes=2 compbytes=4 bitpad=0 chroma=1x1 ctype=float 0: {1} 1: {4} grayf32: [GENERIC] ctype=float - Legacy desc: [ba][yuv][le] - planes=1, chroma=0:0 align=1:1 bits=32 cbits=32 - {4/32/[0:0] 0/0/[0:0] 0/0/[0:0] 0/0/[0:0] } + Basic desc: [ba][yuv][le] + planes=1, chroma=0:0 align=1:1 + {32/[0:0] } Regular: planes=1 compbytes=4 bitpad=0 chroma=1x1 ctype=float 0: {1} AVD: name=grayf32le chroma=0:0 flags=0x200 [float] 0: p=0 st=4 o=0 sh=0 d=32 grayf32be: [GENERIC] ctype=float - Legacy desc: [ba][yuv][be] - planes=1, chroma=0:0 align=1:1 bits=32 cbits=32 - {4/32/[0:0] 0/0/[0:0] 0/0/[0:0] 0/0/[0:0] } + Basic desc: [ba][yuv][be] + planes=1, chroma=0:0 align=1:1 + {32/[0:0] } AVD: name=grayf32be chroma=0:0 flags=0x201 [be][float] 0: p=0 st=4 o=0 sh=0 d=32 mediacodec: ctype=unknown - Legacy desc: [le][be][hw] - planes=0, chroma=0:0 align=1:1 bits=0 cbits=0 - {0/0/[0:0] 0/0/[0:0] 0/0/[0:0] 0/0/[0:0] } + Basic desc: [le][be][hw] + planes=0, chroma=0:0 align=1:1 + {} AVD: name=mediacodec chroma=0:0 flags=0x8 [hw] mmal: ctype=unknown - Legacy desc: [le][be][hw] - planes=0, chroma=0:0 align=1:1 bits=0 cbits=0 - {0/0/[0:0] 0/0/[0:0] 0/0/[0:0] 0/0/[0:0] } + Basic desc: [le][be][hw] + planes=0, chroma=0:0 align=1:1 + {} AVD: name=mmal chroma=0:0 flags=0x8 [hw] monob: [GENERIC] fcsp=rgb ctype=uint - Legacy desc: [rgb][le][be] - planes=1, chroma=0:0 align=8:1 bits=1 cbits=1 - {0/1/[0:0] 0/0/[0:0] 0/0/[0:0] 0/0/[0:0] } + Basic desc: [rgb][le][be] + planes=1, chroma=0:0 align=8:1 + {1/[0:0] } AVD: name=monob chroma=0:0 flags=0x4 [bs] 0: p=0 st=1 o=0 sh=7 d=1 monow: [GENERIC] fcsp=rgb ctype=uint - Legacy desc: [rgb][le][be] - planes=1, chroma=0:0 align=8:1 bits=1 cbits=1 - {0/1/[0:0] 0/0/[0:0] 0/0/[0:0] 0/0/[0:0] } + Basic desc: [rgb][le][be] + planes=1, chroma=0:0 align=8:1 + {1/[0:0] } AVD: name=monow chroma=0:0 flags=0x4 [bs] 0: p=0 st=1 o=0 sh=0 d=1 nv12: ctype=uint - Legacy desc: [ba][nv][yuv][le][be] - planes=2, chroma=1:1 align=2:2 bits=8 cbits=8 - {1/8/[0:0] 2/16/[1:1] 0/0/[0:0] 0/0/[0:0] } + Basic desc: [ba][nv][yuv][le][be] + planes=2, chroma=1:1 align=2:2 + {8/[0:0] 16/[1:1] } Regular: planes=2 compbytes=1 bitpad=0 chroma=2x2 ctype=uint 0: {1} 1: {2, 3} @@ -741,9 +741,9 @@ nv12: ctype=uint 1: p=1 st=2 o=0 sh=0 d=8 2: p=1 st=2 o=1 sh=0 d=8 nv16: [GENERIC] ctype=uint - Legacy desc: [ba][nv][yuv][le][be] - planes=2, chroma=1:0 align=2:1 bits=8 cbits=8 - {1/8/[0:0] 2/16/[1:0] 0/0/[0:0] 0/0/[0:0] } + Basic desc: [ba][nv][yuv][le][be] + planes=2, chroma=1:0 align=2:1 + {8/[0:0] 16/[1:0] } Regular: planes=2 compbytes=1 bitpad=0 chroma=2x1 ctype=uint 0: {1} 1: {2, 3} @@ -752,9 +752,9 @@ nv16: [GENERIC] ctype=uint 1: p=1 st=2 o=0 sh=0 d=8 2: p=1 st=2 o=1 sh=0 d=8 nv20: [GENERIC] ctype=uint - Legacy desc: [ba][nv][yuv][le] - planes=2, chroma=1:0 align=2:1 bits=10 cbits=10 - {2/16/[0:0] 4/32/[1:0] 0/0/[0:0] 0/0/[0:0] } + Basic desc: [ba][nv][yuv][le] + planes=2, chroma=1:0 align=2:1 + {16/[0:0] 32/[1:0] } Regular: planes=2 compbytes=2 bitpad=-6 chroma=2x1 ctype=uint 0: {1} 1: {2, 3} @@ -763,17 +763,17 @@ nv20: [GENERIC] ctype=uint 1: p=1 st=4 o=0 sh=0 d=10 2: p=1 st=4 o=2 sh=0 d=10 nv20be: [GENERIC] ctype=uint - Legacy desc: [ba][nv][yuv][be] - planes=2, chroma=1:0 align=2:1 bits=10 cbits=10 - {2/16/[0:0] 4/32/[1:0] 0/0/[0:0] 0/0/[0:0] } + Basic desc: [ba][nv][yuv][be] + planes=2, chroma=1:0 align=2:1 + {16/[0:0] 32/[1:0] } AVD: name=nv20be chroma=1:0 flags=0x11 [be][planar] 0: p=0 st=2 o=0 sh=0 d=10 1: p=1 st=4 o=0 sh=0 d=10 2: p=1 st=4 o=2 sh=0 d=10 nv21: [GENERIC] ctype=uint - Legacy desc: [ba][nv][yuv][le][be] - planes=2, chroma=1:1 align=2:2 bits=8 cbits=8 - {1/8/[0:0] 2/16/[1:1] 0/0/[0:0] 0/0/[0:0] } + Basic desc: [ba][nv][yuv][le][be] + planes=2, chroma=1:1 align=2:2 + {8/[0:0] 16/[1:1] } Regular: planes=2 compbytes=1 bitpad=0 chroma=2x2 ctype=uint 0: {1} 1: {3, 2} @@ -782,9 +782,9 @@ nv21: [GENERIC] ctype=uint 1: p=1 st=2 o=1 sh=0 d=8 2: p=1 st=2 o=0 sh=0 d=8 nv24: [GENERIC] ctype=uint - Legacy desc: [ba][nv][yuv][le][be] - planes=2, chroma=0:0 align=1:1 bits=8 cbits=8 - {1/8/[0:0] 2/16/[0:0] 0/0/[0:0] 0/0/[0:0] } + Basic desc: [ba][nv][yuv][le][be] + planes=2, chroma=0:0 align=1:1 + {8/[0:0] 16/[0:0] } Regular: planes=2 compbytes=1 bitpad=0 chroma=1x1 ctype=uint 0: {1} 1: {2, 3} @@ -793,9 +793,9 @@ nv24: [GENERIC] ctype=uint 1: p=1 st=2 o=0 sh=0 d=8 2: p=1 st=2 o=1 sh=0 d=8 nv42: [GENERIC] ctype=uint - Legacy desc: [ba][nv][yuv][le][be] - planes=2, chroma=0:0 align=1:1 bits=8 cbits=8 - {1/8/[0:0] 2/16/[0:0] 0/0/[0:0] 0/0/[0:0] } + Basic desc: [ba][nv][yuv][le][be] + planes=2, chroma=0:0 align=1:1 + {8/[0:0] 16/[0:0] } Regular: planes=2 compbytes=1 bitpad=0 chroma=1x1 ctype=uint 0: {1} 1: {3, 2} @@ -804,14 +804,14 @@ nv42: [GENERIC] ctype=uint 1: p=1 st=2 o=1 sh=0 d=8 2: p=1 st=2 o=0 sh=0 d=8 opencl: [GENERIC] ctype=unknown - Legacy desc: [le][be][hw] - planes=0, chroma=0:0 align=1:1 bits=0 cbits=0 - {0/0/[0:0] 0/0/[0:0] 0/0/[0:0] 0/0/[0:0] } + Basic desc: [le][be][hw] + planes=0, chroma=0:0 align=1:1 + {} AVD: name=opencl chroma=0:0 flags=0x8 [hw] p010: ctype=uint - Legacy desc: [ba][nv][yuv][le] - planes=2, chroma=1:1 align=2:2 bits=10 cbits=16 - {2/16/[0:0] 4/32/[1:1] 0/0/[0:0] 0/0/[0:0] } + Basic desc: [ba][nv][yuv][le] + planes=2, chroma=1:1 align=2:2 + {16/[0:0] 32/[1:1] } Regular: planes=2 compbytes=2 bitpad=6 chroma=2x2 ctype=uint 0: {1} 1: {2, 3} @@ -820,17 +820,17 @@ p010: ctype=uint 1: p=1 st=4 o=0 sh=6 d=10 2: p=1 st=4 o=2 sh=6 d=10 p010be: [GENERIC] ctype=uint - Legacy desc: [ba][nv][yuv][be] - planes=2, chroma=1:1 align=2:2 bits=10 cbits=16 - {2/16/[0:0] 4/32/[1:1] 0/0/[0:0] 0/0/[0:0] } + Basic desc: [ba][nv][yuv][be] + planes=2, chroma=1:1 align=2:2 + {16/[0:0] 32/[1:1] } AVD: name=p010be chroma=1:1 flags=0x11 [be][planar] 0: p=0 st=2 o=0 sh=6 d=10 1: p=1 st=4 o=0 sh=6 d=10 2: p=1 st=4 o=2 sh=6 d=10 p016: [GENERIC] ctype=uint - Legacy desc: [ba][nv][yuv][le] - planes=2, chroma=1:1 align=2:2 bits=16 cbits=16 - {2/16/[0:0] 4/32/[1:1] 0/0/[0:0] 0/0/[0:0] } + Basic desc: [ba][nv][yuv][le] + planes=2, chroma=1:1 align=2:2 + {16/[0:0] 32/[1:1] } Regular: planes=2 compbytes=2 bitpad=0 chroma=2x2 ctype=uint 0: {1} 1: {2, 3} @@ -839,28 +839,28 @@ p016: [GENERIC] ctype=uint 1: p=1 st=4 o=0 sh=0 d=16 2: p=1 st=4 o=2 sh=0 d=16 p016be: [GENERIC] ctype=uint - Legacy desc: [ba][nv][yuv][be] - planes=2, chroma=1:1 align=2:2 bits=16 cbits=16 - {2/16/[0:0] 4/32/[1:1] 0/0/[0:0] 0/0/[0:0] } + Basic desc: [ba][nv][yuv][be] + planes=2, chroma=1:1 align=2:2 + {16/[0:0] 32/[1:1] } AVD: name=p016be chroma=1:1 flags=0x11 [be][planar] 0: p=0 st=2 o=0 sh=0 d=16 1: p=1 st=4 o=0 sh=0 d=16 2: p=1 st=4 o=2 sh=0 d=16 pal8: fcsp=rgb ctype=uint - Legacy desc: [ba][a][rgb][le][be][pal] - planes=1, chroma=0:0 align=1:1 bits=8 cbits=8 - {1/8/[0:0] 0/0/[0:0] 0/0/[0:0] 0/0/[0:0] } + Basic desc: [ba][a][rgb][le][be][pal] + planes=1, chroma=0:0 align=1:1 + {8/[0:0] } AVD: name=pal8 chroma=0:0 flags=0x82 [pal][alpha] 0: p=0 st=1 o=0 sh=0 d=8 qsv: [GENERIC] ctype=unknown - Legacy desc: [le][be][hw] - planes=0, chroma=0:0 align=1:1 bits=0 cbits=0 - {0/0/[0:0] 0/0/[0:0] 0/0/[0:0] 0/0/[0:0] } + Basic desc: [le][be][hw] + planes=0, chroma=0:0 align=1:1 + {} AVD: name=qsv chroma=0:0 flags=0x8 [hw] rgb0: fcsp=rgb ctype=uint - Legacy desc: [ba][rgb][le][be] - planes=1, chroma=0:0 align=1:1 bits=24 cbits=8 - {4/32/[0:0] 0/0/[0:0] 0/0/[0:0] 0/0/[0:0] } + Basic desc: [ba][rgb][le][be] + planes=1, chroma=0:0 align=1:1 + {32/[0:0] } Regular: planes=1 compbytes=1 bitpad=0 chroma=1x1 ctype=uint 0: {1, 2, 3, 0} AVD: name=rgb0 chroma=0:0 flags=0x20 [rgb] @@ -868,9 +868,9 @@ rgb0: fcsp=rgb ctype=uint 1: p=0 st=4 o=1 sh=0 d=8 2: p=0 st=4 o=2 sh=0 d=8 rgb24: fcsp=rgb ctype=uint - Legacy desc: [ba][rgb][le][be] - planes=1, chroma=0:0 align=1:1 bits=24 cbits=8 - {3/24/[0:0] 0/0/[0:0] 0/0/[0:0] 0/0/[0:0] } + Basic desc: [ba][rgb][le][be] + planes=1, chroma=0:0 align=1:1 + {24/[0:0] } Regular: planes=1 compbytes=1 bitpad=0 chroma=1x1 ctype=uint 0: {1, 2, 3} AVD: name=rgb24 chroma=0:0 flags=0x20 [rgb] @@ -878,37 +878,37 @@ rgb24: fcsp=rgb ctype=uint 1: p=0 st=3 o=1 sh=0 d=8 2: p=0 st=3 o=2 sh=0 d=8 rgb30: fcsp=rgb ctype=uint - Legacy desc: [ba][rgb][le] - planes=1, chroma=0:0 align=1:1 bits=30 cbits=10 - {4/32/[0:0] 0/0/[0:0] 0/0/[0:0] 0/0/[0:0] } + Basic desc: [ba][rgb][le] + planes=1, chroma=0:0 align=1:1 + {32/[0:0] } rgb4: [GENERIC] fcsp=rgb ctype=uint - Legacy desc: [rgb][le][be] - planes=1, chroma=0:0 align=2:1 bits=4 cbits=0 - {0/4/[0:0] 0/0/[0:0] 0/0/[0:0] 0/0/[0:0] } + Basic desc: [rgb][le][be] + planes=1, chroma=0:0 align=2:1 + {4/[0:0] } AVD: name=rgb4 chroma=0:0 flags=0x24 [bs][rgb] 0: p=0 st=4 o=0 sh=0 d=1 1: p=0 st=4 o=1 sh=0 d=2 2: p=0 st=4 o=3 sh=0 d=1 rgb444: [GENERIC] fcsp=rgb ctype=uint - Legacy desc: [ba][rgb][le] - planes=1, chroma=0:0 align=1:1 bits=12 cbits=4 - {2/16/[0:0] 0/0/[0:0] 0/0/[0:0] 0/0/[0:0] } + Basic desc: [ba][rgb][le] + planes=1, chroma=0:0 align=1:1 + {16/[0:0] } AVD: name=rgb444le chroma=0:0 flags=0x20 [rgb] 0: p=0 st=2 o=1 sh=0 d=4 1: p=0 st=2 o=0 sh=4 d=4 2: p=0 st=2 o=0 sh=0 d=4 rgb444be: [GENERIC] fcsp=rgb ctype=uint - Legacy desc: [ba][rgb][be] - planes=1, chroma=0:0 align=1:1 bits=12 cbits=4 - {2/16/[0:0] 0/0/[0:0] 0/0/[0:0] 0/0/[0:0] } + Basic desc: [ba][rgb][be] + planes=1, chroma=0:0 align=1:1 + {16/[0:0] } AVD: name=rgb444be chroma=0:0 flags=0x21 [be][rgb] 0: p=0 st=2 o=-1 sh=0 d=4 1: p=0 st=2 o=0 sh=4 d=4 2: p=0 st=2 o=0 sh=0 d=4 rgb48: [GENERIC] fcsp=rgb ctype=uint - Legacy desc: [ba][rgb][le] - planes=1, chroma=0:0 align=1:1 bits=48 cbits=16 - {6/48/[0:0] 0/0/[0:0] 0/0/[0:0] 0/0/[0:0] } + Basic desc: [ba][rgb][le] + planes=1, chroma=0:0 align=1:1 + {48/[0:0] } Regular: planes=1 compbytes=2 bitpad=0 chroma=1x1 ctype=uint 0: {1, 2, 3} AVD: name=rgb48le chroma=0:0 flags=0x20 [rgb] @@ -916,65 +916,65 @@ rgb48: [GENERIC] fcsp=rgb ctype=uint 1: p=0 st=6 o=2 sh=0 d=16 2: p=0 st=6 o=4 sh=0 d=16 rgb48be: [GENERIC] fcsp=rgb ctype=uint - Legacy desc: [ba][rgb][be] - planes=1, chroma=0:0 align=1:1 bits=48 cbits=16 - {6/48/[0:0] 0/0/[0:0] 0/0/[0:0] 0/0/[0:0] } + Basic desc: [ba][rgb][be] + planes=1, chroma=0:0 align=1:1 + {48/[0:0] } AVD: name=rgb48be chroma=0:0 flags=0x21 [be][rgb] 0: p=0 st=6 o=0 sh=0 d=16 1: p=0 st=6 o=2 sh=0 d=16 2: p=0 st=6 o=4 sh=0 d=16 rgb4_byte: [GENERIC] fcsp=rgb ctype=uint - Legacy desc: [ba][rgb][le][be] - planes=1, chroma=0:0 align=1:1 bits=4 cbits=0 - {1/8/[0:0] 0/0/[0:0] 0/0/[0:0] 0/0/[0:0] } + Basic desc: [ba][rgb][le][be] + planes=1, chroma=0:0 align=1:1 + {8/[0:0] } AVD: name=rgb4_byte chroma=0:0 flags=0x60 [rgb] 0: p=0 st=1 o=0 sh=3 d=1 1: p=0 st=1 o=0 sh=1 d=2 2: p=0 st=1 o=0 sh=0 d=1 rgb555: [GENERIC] fcsp=rgb ctype=uint - Legacy desc: [ba][rgb][le] - planes=1, chroma=0:0 align=1:1 bits=15 cbits=5 - {2/16/[0:0] 0/0/[0:0] 0/0/[0:0] 0/0/[0:0] } + Basic desc: [ba][rgb][le] + planes=1, chroma=0:0 align=1:1 + {16/[0:0] } AVD: name=rgb555le chroma=0:0 flags=0x20 [rgb] 0: p=0 st=2 o=1 sh=2 d=5 1: p=0 st=2 o=0 sh=5 d=5 2: p=0 st=2 o=0 sh=0 d=5 rgb555be: [GENERIC] fcsp=rgb ctype=uint - Legacy desc: [ba][rgb][be] - planes=1, chroma=0:0 align=1:1 bits=15 cbits=5 - {2/16/[0:0] 0/0/[0:0] 0/0/[0:0] 0/0/[0:0] } + Basic desc: [ba][rgb][be] + planes=1, chroma=0:0 align=1:1 + {16/[0:0] } AVD: name=rgb555be chroma=0:0 flags=0x21 [be][rgb] 0: p=0 st=2 o=-1 sh=2 d=5 1: p=0 st=2 o=0 sh=5 d=5 2: p=0 st=2 o=0 sh=0 d=5 rgb565: fcsp=rgb ctype=uint - Legacy desc: [ba][rgb][le] - planes=1, chroma=0:0 align=1:1 bits=16 cbits=0 - {2/16/[0:0] 0/0/[0:0] 0/0/[0:0] 0/0/[0:0] } + Basic desc: [ba][rgb][le] + planes=1, chroma=0:0 align=1:1 + {16/[0:0] } AVD: name=rgb565le chroma=0:0 flags=0x20 [rgb] 0: p=0 st=2 o=1 sh=3 d=5 1: p=0 st=2 o=0 sh=5 d=6 2: p=0 st=2 o=0 sh=0 d=5 rgb565be: [GENERIC] fcsp=rgb ctype=uint - Legacy desc: [ba][rgb][be] - planes=1, chroma=0:0 align=1:1 bits=16 cbits=0 - {2/16/[0:0] 0/0/[0:0] 0/0/[0:0] 0/0/[0:0] } + Basic desc: [ba][rgb][be] + planes=1, chroma=0:0 align=1:1 + {16/[0:0] } AVD: name=rgb565be chroma=0:0 flags=0x21 [be][rgb] 0: p=0 st=2 o=-1 sh=3 d=5 1: p=0 st=2 o=0 sh=5 d=6 2: p=0 st=2 o=0 sh=0 d=5 rgb8: [GENERIC] fcsp=rgb ctype=uint - Legacy desc: [ba][rgb][le][be] - planes=1, chroma=0:0 align=1:1 bits=8 cbits=0 - {1/8/[0:0] 0/0/[0:0] 0/0/[0:0] 0/0/[0:0] } + Basic desc: [ba][rgb][le][be] + planes=1, chroma=0:0 align=1:1 + {8/[0:0] } AVD: name=rgb8 chroma=0:0 flags=0x60 [rgb] 0: p=0 st=1 o=0 sh=6 d=2 1: p=0 st=1 o=0 sh=3 d=3 2: p=0 st=1 o=0 sh=0 d=3 rgba: fcsp=rgb ctype=uint - Legacy desc: [ba][a][rgb][le][be] - planes=1, chroma=0:0 align=1:1 bits=32 cbits=8 - {4/32/[0:0] 0/0/[0:0] 0/0/[0:0] 0/0/[0:0] } + Basic desc: [ba][a][rgb][le][be] + planes=1, chroma=0:0 align=1:1 + {32/[0:0] } Regular: planes=1 compbytes=1 bitpad=0 chroma=1x1 ctype=uint 0: {1, 2, 3, 4} AVD: name=rgba chroma=0:0 flags=0xa0 [rgb][alpha] @@ -983,9 +983,9 @@ rgba: fcsp=rgb ctype=uint 2: p=0 st=4 o=2 sh=0 d=8 3: p=0 st=4 o=3 sh=0 d=8 rgba64: fcsp=rgb ctype=uint - Legacy desc: [ba][a][rgb][le] - planes=1, chroma=0:0 align=1:1 bits=64 cbits=16 - {8/64/[0:0] 0/0/[0:0] 0/0/[0:0] 0/0/[0:0] } + Basic desc: [ba][a][rgb][le] + planes=1, chroma=0:0 align=1:1 + {64/[0:0] } Regular: planes=1 compbytes=2 bitpad=0 chroma=1x1 ctype=uint 0: {1, 2, 3, 4} AVD: name=rgba64le chroma=0:0 flags=0xa0 [rgb][alpha] @@ -994,18 +994,18 @@ rgba64: fcsp=rgb ctype=uint 2: p=0 st=8 o=4 sh=0 d=16 3: p=0 st=8 o=6 sh=0 d=16 rgba64be: [GENERIC] fcsp=rgb ctype=uint - Legacy desc: [ba][a][rgb][be] - planes=1, chroma=0:0 align=1:1 bits=64 cbits=16 - {8/64/[0:0] 0/0/[0:0] 0/0/[0:0] 0/0/[0:0] } + Basic desc: [ba][a][rgb][be] + planes=1, chroma=0:0 align=1:1 + {64/[0:0] } AVD: name=rgba64be chroma=0:0 flags=0xa1 [be][rgb][alpha] 0: p=0 st=8 o=0 sh=0 d=16 1: p=0 st=8 o=2 sh=0 d=16 2: p=0 st=8 o=4 sh=0 d=16 3: p=0 st=8 o=6 sh=0 d=16 uyvy422: ctype=uint - Legacy desc: [ba][yuv][le][be] - planes=1, chroma=1:0 align=2:1 bits=24 cbits=8 - {2/16/[0:0] 0/0/[0:0] 0/0/[0:0] 0/0/[0:0] } + Basic desc: [ba][yuv][le][be] + planes=1, chroma=1:0 align=2:1 + {16/[0:0] } AVD: name=uyvy422 chroma=1:0 flags=0x0 0: p=0 st=2 o=1 sh=0 d=8 1: p=0 st=4 o=0 sh=0 d=8 @@ -1018,48 +1018,48 @@ uyyvyy411: [GENERIC] ctype=uint 1: p=0 st=6 o=0 sh=0 d=8 2: p=0 st=6 o=3 sh=0 d=8 vaapi: ctype=unknown - Legacy desc: [le][be][hw] - planes=0, chroma=1:1 align=2:2 bits=0 cbits=0 - {0/0/[0:0] 0/0/[0:0] 0/0/[0:0] 0/0/[0:0] } + Basic desc: [le][be][hw] + planes=0, chroma=1:1 align=2:2 + {} AVD: name=vaapi_vld chroma=1:1 flags=0x8 [hw] vaapi_idct: [GENERIC] ctype=unknown - Legacy desc: [le][be][hw] - planes=0, chroma=1:1 align=2:2 bits=0 cbits=0 - {0/0/[0:0] 0/0/[0:0] 0/0/[0:0] 0/0/[0:0] } + Basic desc: [le][be][hw] + planes=0, chroma=1:1 align=2:2 + {} AVD: name=vaapi_idct chroma=1:1 flags=0x8 [hw] vaapi_moco: [GENERIC] ctype=unknown - Legacy desc: [le][be][hw] - planes=0, chroma=1:1 align=2:2 bits=0 cbits=0 - {0/0/[0:0] 0/0/[0:0] 0/0/[0:0] 0/0/[0:0] } + Basic desc: [le][be][hw] + planes=0, chroma=1:1 align=2:2 + {} AVD: name=vaapi_moco chroma=1:1 flags=0x8 [hw] vdpau: ctype=unknown - Legacy desc: [le][be][hw] - planes=0, chroma=1:1 align=2:2 bits=0 cbits=0 - {0/0/[0:0] 0/0/[0:0] 0/0/[0:0] 0/0/[0:0] } + Basic desc: [le][be][hw] + planes=0, chroma=1:1 align=2:2 + {} AVD: name=vdpau chroma=1:1 flags=0x8 [hw] vdpau_output: ctype=unknown - Legacy desc: [rgb][le][be][hw] - planes=0, chroma=0:0 align=0:0 bits=0 cbits=0 - {0/0/[0:0] 0/0/[0:0] 0/0/[0:0] 0/0/[0:0] } + Basic desc: [rgb][le][be][hw] + planes=0, chroma=0:0 align=0:0 + {} videotoolbox: ctype=unknown - Legacy desc: [le][be][hw] - planes=0, chroma=0:0 align=1:1 bits=0 cbits=0 - {0/0/[0:0] 0/0/[0:0] 0/0/[0:0] 0/0/[0:0] } + Basic desc: [le][be][hw] + planes=0, chroma=0:0 align=1:1 + {} AVD: name=videotoolbox_vld chroma=0:0 flags=0x8 [hw] vulkan: [GENERIC] ctype=unknown - Legacy desc: [le][be][hw] - planes=0, chroma=0:0 align=1:1 bits=0 cbits=0 - {0/0/[0:0] 0/0/[0:0] 0/0/[0:0] 0/0/[0:0] } + Basic desc: [le][be][hw] + planes=0, chroma=0:0 align=1:1 + {} AVD: name=vulkan chroma=0:0 flags=0x8 [hw] xvmc: [GENERIC] ctype=unknown - Legacy desc: [le][be][hw] - planes=0, chroma=0:0 align=1:1 bits=0 cbits=0 - {0/0/[0:0] 0/0/[0:0] 0/0/[0:0] 0/0/[0:0] } + Basic desc: [le][be][hw] + planes=0, chroma=0:0 align=1:1 + {} AVD: name=xvmc chroma=0:0 flags=0x8 [hw] xyz12: [GENERIC] fcsp=xyz ctype=uint - Legacy desc: [ba][le] - planes=1, chroma=0:0 align=1:1 bits=36 cbits=12 - {6/48/[0:0] 0/0/[0:0] 0/0/[0:0] 0/0/[0:0] } + Basic desc: [ba][le] + planes=1, chroma=0:0 align=1:1 + {48/[0:0] } Regular: planes=1 compbytes=2 bitpad=4 chroma=1x1 ctype=uint 0: {1, 2, 3} AVD: name=xyz12le chroma=0:0 flags=0x0 @@ -1067,78 +1067,78 @@ xyz12: [GENERIC] fcsp=xyz ctype=uint 1: p=0 st=6 o=2 sh=4 d=12 2: p=0 st=6 o=4 sh=4 d=12 xyz12be: [GENERIC] fcsp=xyz ctype=uint - Legacy desc: [ba][be] - planes=1, chroma=0:0 align=1:1 bits=36 cbits=12 - {6/48/[0:0] 0/0/[0:0] 0/0/[0:0] 0/0/[0:0] } + Basic desc: [ba][be] + planes=1, chroma=0:0 align=1:1 + {48/[0:0] } AVD: name=xyz12be chroma=0:0 flags=0x1 [be] 0: p=0 st=6 o=0 sh=4 d=12 1: p=0 st=6 o=2 sh=4 d=12 2: p=0 st=6 o=4 sh=4 d=12 y1: fcsp=rgb ctype=uint - Legacy desc: [ba][rgb][le] - planes=1, chroma=0:0 align=1:1 bits=1 cbits=1 - {1/8/[0:0] 0/0/[0:0] 0/0/[0:0] 0/0/[0:0] } + Basic desc: [ba][rgb][le] + planes=1, chroma=0:0 align=1:1 + {8/[0:0] } Regular: planes=1 compbytes=1 bitpad=-7 chroma=1x1 ctype=uint 0: {1} y210: [GENERIC] ctype=uint - Legacy desc: [ba][yuv][le] - planes=1, chroma=1:0 align=2:1 bits=30 cbits=10 - {4/32/[0:0] 0/0/[0:0] 0/0/[0:0] 0/0/[0:0] } + Basic desc: [ba][yuv][le] + planes=1, chroma=1:0 align=2:1 + {32/[0:0] } AVD: name=y210le chroma=1:0 flags=0x0 0: p=0 st=4 o=0 sh=6 d=10 1: p=0 st=8 o=2 sh=6 d=10 2: p=0 st=8 o=6 sh=6 d=10 y210be: [GENERIC] ctype=uint - Legacy desc: [ba][yuv][be] - planes=1, chroma=1:0 align=2:1 bits=30 cbits=10 - {4/32/[0:0] 0/0/[0:0] 0/0/[0:0] 0/0/[0:0] } + Basic desc: [ba][yuv][be] + planes=1, chroma=1:0 align=2:1 + {32/[0:0] } AVD: name=y210be chroma=1:0 flags=0x1 [be] 0: p=0 st=4 o=0 sh=6 d=10 1: p=0 st=8 o=2 sh=6 d=10 2: p=0 st=8 o=6 sh=6 d=10 ya16: [GENERIC] ctype=uint - Legacy desc: [ba][a][yuv][le] - planes=1, chroma=0:0 align=1:1 bits=32 cbits=16 - {4/32/[0:0] 0/0/[0:0] 0/0/[0:0] 0/0/[0:0] } + Basic desc: [ba][a][yuv][le] + planes=1, chroma=0:0 align=1:1 + {32/[0:0] } Regular: planes=1 compbytes=2 bitpad=0 chroma=1x1 ctype=uint 0: {1, 4} AVD: name=ya16le chroma=0:0 flags=0x80 [alpha] 0: p=0 st=4 o=0 sh=0 d=16 1: p=0 st=4 o=2 sh=0 d=16 ya16be: [GENERIC] ctype=uint - Legacy desc: [ba][a][yuv][be] - planes=1, chroma=0:0 align=1:1 bits=32 cbits=16 - {4/32/[0:0] 0/0/[0:0] 0/0/[0:0] 0/0/[0:0] } + Basic desc: [ba][a][yuv][be] + planes=1, chroma=0:0 align=1:1 + {32/[0:0] } AVD: name=ya16be chroma=0:0 flags=0x81 [be][alpha] 0: p=0 st=4 o=0 sh=0 d=16 1: p=0 st=4 o=2 sh=0 d=16 ya8: [GENERIC] ctype=uint - Legacy desc: [ba][a][yuv][le][be] - planes=1, chroma=0:0 align=1:1 bits=16 cbits=8 - {2/16/[0:0] 0/0/[0:0] 0/0/[0:0] 0/0/[0:0] } + Basic desc: [ba][a][yuv][le][be] + planes=1, chroma=0:0 align=1:1 + {16/[0:0] } Regular: planes=1 compbytes=1 bitpad=0 chroma=1x1 ctype=uint 0: {1, 4} AVD: name=ya8 chroma=0:0 flags=0x80 [alpha] 0: p=0 st=2 o=0 sh=0 d=8 1: p=0 st=2 o=1 sh=0 d=8 yap16: ctype=uint - Legacy desc: [ba][a][yuvp][yuv][le] - planes=2, chroma=0:0 align=1:1 bits=16 cbits=16 - {2/16/[0:0] 2/16/[0:0] 0/0/[0:0] 0/0/[0:0] } + Basic desc: [ba][a][yuvp][yuv][le] + planes=2, chroma=0:0 align=1:1 + {16/[0:0] 16/[0:0] } Regular: planes=2 compbytes=2 bitpad=0 chroma=1x1 ctype=uint 0: {1} 1: {4} yap8: ctype=uint - Legacy desc: [ba][a][yuvp][yuv][le] - planes=2, chroma=0:0 align=1:1 bits=8 cbits=8 - {1/8/[0:0] 1/8/[0:0] 0/0/[0:0] 0/0/[0:0] } + Basic desc: [ba][a][yuvp][yuv][le] + planes=2, chroma=0:0 align=1:1 + {8/[0:0] 8/[0:0] } Regular: planes=2 compbytes=1 bitpad=0 chroma=1x1 ctype=uint 0: {1} 1: {4} yuv410p: [GENERIC] ctype=uint - Legacy desc: [ba][yuvp][yuv][le][be] - planes=3, chroma=2:2 align=4:4 bits=8 cbits=8 - {1/8/[0:0] 1/8/[2:2] 1/8/[2:2] 0/0/[0:0] } + Basic desc: [ba][yuvp][yuv][le][be] + planes=3, chroma=2:2 align=4:4 + {8/[0:0] 8/[2:2] 8/[2:2] } Regular: planes=3 compbytes=1 bitpad=0 chroma=4x4 ctype=uint 0: {1} 1: {2} @@ -1148,17 +1148,17 @@ yuv410p: [GENERIC] ctype=uint 1: p=1 st=1 o=0 sh=0 d=8 2: p=2 st=1 o=0 sh=0 d=8 yuv410pf: ctype=float - Legacy desc: [ba][yuvp][yuv][le] - planes=3, chroma=2:2 align=4:4 bits=32 cbits=32 - {4/32/[0:0] 4/32/[2:2] 4/32/[2:2] 0/0/[0:0] } + Basic desc: [ba][yuvp][yuv][le] + planes=3, chroma=2:2 align=4:4 + {32/[0:0] 32/[2:2] 32/[2:2] } Regular: planes=3 compbytes=4 bitpad=0 chroma=4x4 ctype=float 0: {1} 1: {2} 2: {3} yuv411p: [GENERIC] ctype=uint - Legacy desc: [ba][yuvp][yuv][le][be] - planes=3, chroma=2:0 align=4:1 bits=8 cbits=8 - {1/8/[0:0] 1/8/[2:0] 1/8/[2:0] 0/0/[0:0] } + Basic desc: [ba][yuvp][yuv][le][be] + planes=3, chroma=2:0 align=4:1 + {8/[0:0] 8/[2:0] 8/[2:0] } Regular: planes=3 compbytes=1 bitpad=0 chroma=4x1 ctype=uint 0: {1} 1: {2} @@ -1168,17 +1168,17 @@ yuv411p: [GENERIC] ctype=uint 1: p=1 st=1 o=0 sh=0 d=8 2: p=2 st=1 o=0 sh=0 d=8 yuv411pf: ctype=float - Legacy desc: [ba][yuvp][yuv][le] - planes=3, chroma=2:0 align=4:1 bits=32 cbits=32 - {4/32/[0:0] 4/32/[2:0] 4/32/[2:0] 0/0/[0:0] } + Basic desc: [ba][yuvp][yuv][le] + planes=3, chroma=2:0 align=4:1 + {32/[0:0] 32/[2:0] 32/[2:0] } Regular: planes=3 compbytes=4 bitpad=0 chroma=4x1 ctype=float 0: {1} 1: {2} 2: {3} yuv420p: ctype=uint - Legacy desc: [ba][yuvp][yuv][le][be] - planes=3, chroma=1:1 align=2:2 bits=8 cbits=8 - {1/8/[0:0] 1/8/[1:1] 1/8/[1:1] 0/0/[0:0] } + Basic desc: [ba][yuvp][yuv][le][be] + planes=3, chroma=1:1 align=2:2 + {8/[0:0] 8/[1:1] 8/[1:1] } Regular: planes=3 compbytes=1 bitpad=0 chroma=2x2 ctype=uint 0: {1} 1: {2} @@ -1189,9 +1189,9 @@ yuv420p: ctype=uint 2: p=2 st=1 o=0 sh=0 d=8 Ambiguous alias: yuvj420p yuv420p10: [GENERIC] ctype=uint - Legacy desc: [ba][yuvp][yuv][le] - planes=3, chroma=1:1 align=2:2 bits=10 cbits=10 - {2/16/[0:0] 2/16/[1:1] 2/16/[1:1] 0/0/[0:0] } + Basic desc: [ba][yuvp][yuv][le] + planes=3, chroma=1:1 align=2:2 + {16/[0:0] 16/[1:1] 16/[1:1] } Regular: planes=3 compbytes=2 bitpad=-6 chroma=2x2 ctype=uint 0: {1} 1: {2} @@ -1201,17 +1201,17 @@ yuv420p10: [GENERIC] ctype=uint 1: p=1 st=2 o=0 sh=0 d=10 2: p=2 st=2 o=0 sh=0 d=10 yuv420p10be: [GENERIC] ctype=uint - Legacy desc: [ba][yuvp][yuv][be] - planes=3, chroma=1:1 align=2:2 bits=10 cbits=10 - {2/16/[0:0] 2/16/[1:1] 2/16/[1:1] 0/0/[0:0] } + Basic desc: [ba][yuvp][yuv][be] + planes=3, chroma=1:1 align=2:2 + {16/[0:0] 16/[1:1] 16/[1:1] } AVD: name=yuv420p10be chroma=1:1 flags=0x11 [be][planar] 0: p=0 st=2 o=0 sh=0 d=10 1: p=1 st=2 o=0 sh=0 d=10 2: p=2 st=2 o=0 sh=0 d=10 yuv420p12: [GENERIC] ctype=uint - Legacy desc: [ba][yuvp][yuv][le] - planes=3, chroma=1:1 align=2:2 bits=12 cbits=12 - {2/16/[0:0] 2/16/[1:1] 2/16/[1:1] 0/0/[0:0] } + Basic desc: [ba][yuvp][yuv][le] + planes=3, chroma=1:1 align=2:2 + {16/[0:0] 16/[1:1] 16/[1:1] } Regular: planes=3 compbytes=2 bitpad=-4 chroma=2x2 ctype=uint 0: {1} 1: {2} @@ -1221,17 +1221,17 @@ yuv420p12: [GENERIC] ctype=uint 1: p=1 st=2 o=0 sh=0 d=12 2: p=2 st=2 o=0 sh=0 d=12 yuv420p12be: [GENERIC] ctype=uint - Legacy desc: [ba][yuvp][yuv][be] - planes=3, chroma=1:1 align=2:2 bits=12 cbits=12 - {2/16/[0:0] 2/16/[1:1] 2/16/[1:1] 0/0/[0:0] } + Basic desc: [ba][yuvp][yuv][be] + planes=3, chroma=1:1 align=2:2 + {16/[0:0] 16/[1:1] 16/[1:1] } AVD: name=yuv420p12be chroma=1:1 flags=0x11 [be][planar] 0: p=0 st=2 o=0 sh=0 d=12 1: p=1 st=2 o=0 sh=0 d=12 2: p=2 st=2 o=0 sh=0 d=12 yuv420p14: [GENERIC] ctype=uint - Legacy desc: [ba][yuvp][yuv][le] - planes=3, chroma=1:1 align=2:2 bits=14 cbits=14 - {2/16/[0:0] 2/16/[1:1] 2/16/[1:1] 0/0/[0:0] } + Basic desc: [ba][yuvp][yuv][le] + planes=3, chroma=1:1 align=2:2 + {16/[0:0] 16/[1:1] 16/[1:1] } Regular: planes=3 compbytes=2 bitpad=-2 chroma=2x2 ctype=uint 0: {1} 1: {2} @@ -1241,17 +1241,17 @@ yuv420p14: [GENERIC] ctype=uint 1: p=1 st=2 o=0 sh=0 d=14 2: p=2 st=2 o=0 sh=0 d=14 yuv420p14be: [GENERIC] ctype=uint - Legacy desc: [ba][yuvp][yuv][be] - planes=3, chroma=1:1 align=2:2 bits=14 cbits=14 - {2/16/[0:0] 2/16/[1:1] 2/16/[1:1] 0/0/[0:0] } + Basic desc: [ba][yuvp][yuv][be] + planes=3, chroma=1:1 align=2:2 + {16/[0:0] 16/[1:1] 16/[1:1] } AVD: name=yuv420p14be chroma=1:1 flags=0x11 [be][planar] 0: p=0 st=2 o=0 sh=0 d=14 1: p=1 st=2 o=0 sh=0 d=14 2: p=2 st=2 o=0 sh=0 d=14 yuv420p16: [GENERIC] ctype=uint - Legacy desc: [ba][yuvp][yuv][le] - planes=3, chroma=1:1 align=2:2 bits=16 cbits=16 - {2/16/[0:0] 2/16/[1:1] 2/16/[1:1] 0/0/[0:0] } + Basic desc: [ba][yuvp][yuv][le] + planes=3, chroma=1:1 align=2:2 + {16/[0:0] 16/[1:1] 16/[1:1] } Regular: planes=3 compbytes=2 bitpad=0 chroma=2x2 ctype=uint 0: {1} 1: {2} @@ -1261,17 +1261,17 @@ yuv420p16: [GENERIC] ctype=uint 1: p=1 st=2 o=0 sh=0 d=16 2: p=2 st=2 o=0 sh=0 d=16 yuv420p16be: [GENERIC] ctype=uint - Legacy desc: [ba][yuvp][yuv][be] - planes=3, chroma=1:1 align=2:2 bits=16 cbits=16 - {2/16/[0:0] 2/16/[1:1] 2/16/[1:1] 0/0/[0:0] } + Basic desc: [ba][yuvp][yuv][be] + planes=3, chroma=1:1 align=2:2 + {16/[0:0] 16/[1:1] 16/[1:1] } AVD: name=yuv420p16be chroma=1:1 flags=0x11 [be][planar] 0: p=0 st=2 o=0 sh=0 d=16 1: p=1 st=2 o=0 sh=0 d=16 2: p=2 st=2 o=0 sh=0 d=16 yuv420p9: [GENERIC] ctype=uint - Legacy desc: [ba][yuvp][yuv][le] - planes=3, chroma=1:1 align=2:2 bits=9 cbits=9 - {2/16/[0:0] 2/16/[1:1] 2/16/[1:1] 0/0/[0:0] } + Basic desc: [ba][yuvp][yuv][le] + planes=3, chroma=1:1 align=2:2 + {16/[0:0] 16/[1:1] 16/[1:1] } Regular: planes=3 compbytes=2 bitpad=-7 chroma=2x2 ctype=uint 0: {1} 1: {2} @@ -1281,25 +1281,25 @@ yuv420p9: [GENERIC] ctype=uint 1: p=1 st=2 o=0 sh=0 d=9 2: p=2 st=2 o=0 sh=0 d=9 yuv420p9be: [GENERIC] ctype=uint - Legacy desc: [ba][yuvp][yuv][be] - planes=3, chroma=1:1 align=2:2 bits=9 cbits=9 - {2/16/[0:0] 2/16/[1:1] 2/16/[1:1] 0/0/[0:0] } + Basic desc: [ba][yuvp][yuv][be] + planes=3, chroma=1:1 align=2:2 + {16/[0:0] 16/[1:1] 16/[1:1] } AVD: name=yuv420p9be chroma=1:1 flags=0x11 [be][planar] 0: p=0 st=2 o=0 sh=0 d=9 1: p=1 st=2 o=0 sh=0 d=9 2: p=2 st=2 o=0 sh=0 d=9 yuv420pf: ctype=float - Legacy desc: [ba][yuvp][yuv][le] - planes=3, chroma=1:1 align=2:2 bits=32 cbits=32 - {4/32/[0:0] 4/32/[1:1] 4/32/[1:1] 0/0/[0:0] } + Basic desc: [ba][yuvp][yuv][le] + planes=3, chroma=1:1 align=2:2 + {32/[0:0] 32/[1:1] 32/[1:1] } Regular: planes=3 compbytes=4 bitpad=0 chroma=2x2 ctype=float 0: {1} 1: {2} 2: {3} yuv422p: [GENERIC] ctype=uint - Legacy desc: [ba][yuvp][yuv][le][be] - planes=3, chroma=1:0 align=2:1 bits=8 cbits=8 - {1/8/[0:0] 1/8/[1:0] 1/8/[1:0] 0/0/[0:0] } + Basic desc: [ba][yuvp][yuv][le][be] + planes=3, chroma=1:0 align=2:1 + {8/[0:0] 8/[1:0] 8/[1:0] } Regular: planes=3 compbytes=1 bitpad=0 chroma=2x1 ctype=uint 0: {1} 1: {2} @@ -1309,9 +1309,9 @@ yuv422p: [GENERIC] ctype=uint 1: p=1 st=1 o=0 sh=0 d=8 2: p=2 st=1 o=0 sh=0 d=8 yuv422p10: [GENERIC] ctype=uint - Legacy desc: [ba][yuvp][yuv][le] - planes=3, chroma=1:0 align=2:1 bits=10 cbits=10 - {2/16/[0:0] 2/16/[1:0] 2/16/[1:0] 0/0/[0:0] } + Basic desc: [ba][yuvp][yuv][le] + planes=3, chroma=1:0 align=2:1 + {16/[0:0] 16/[1:0] 16/[1:0] } Regular: planes=3 compbytes=2 bitpad=-6 chroma=2x1 ctype=uint 0: {1} 1: {2} @@ -1321,17 +1321,17 @@ yuv422p10: [GENERIC] ctype=uint 1: p=1 st=2 o=0 sh=0 d=10 2: p=2 st=2 o=0 sh=0 d=10 yuv422p10be: [GENERIC] ctype=uint - Legacy desc: [ba][yuvp][yuv][be] - planes=3, chroma=1:0 align=2:1 bits=10 cbits=10 - {2/16/[0:0] 2/16/[1:0] 2/16/[1:0] 0/0/[0:0] } + Basic desc: [ba][yuvp][yuv][be] + planes=3, chroma=1:0 align=2:1 + {16/[0:0] 16/[1:0] 16/[1:0] } AVD: name=yuv422p10be chroma=1:0 flags=0x11 [be][planar] 0: p=0 st=2 o=0 sh=0 d=10 1: p=1 st=2 o=0 sh=0 d=10 2: p=2 st=2 o=0 sh=0 d=10 yuv422p12: [GENERIC] ctype=uint - Legacy desc: [ba][yuvp][yuv][le] - planes=3, chroma=1:0 align=2:1 bits=12 cbits=12 - {2/16/[0:0] 2/16/[1:0] 2/16/[1:0] 0/0/[0:0] } + Basic desc: [ba][yuvp][yuv][le] + planes=3, chroma=1:0 align=2:1 + {16/[0:0] 16/[1:0] 16/[1:0] } Regular: planes=3 compbytes=2 bitpad=-4 chroma=2x1 ctype=uint 0: {1} 1: {2} @@ -1341,17 +1341,17 @@ yuv422p12: [GENERIC] ctype=uint 1: p=1 st=2 o=0 sh=0 d=12 2: p=2 st=2 o=0 sh=0 d=12 yuv422p12be: [GENERIC] ctype=uint - Legacy desc: [ba][yuvp][yuv][be] - planes=3, chroma=1:0 align=2:1 bits=12 cbits=12 - {2/16/[0:0] 2/16/[1:0] 2/16/[1:0] 0/0/[0:0] } + Basic desc: [ba][yuvp][yuv][be] + planes=3, chroma=1:0 align=2:1 + {16/[0:0] 16/[1:0] 16/[1:0] } AVD: name=yuv422p12be chroma=1:0 flags=0x11 [be][planar] 0: p=0 st=2 o=0 sh=0 d=12 1: p=1 st=2 o=0 sh=0 d=12 2: p=2 st=2 o=0 sh=0 d=12 yuv422p14: [GENERIC] ctype=uint - Legacy desc: [ba][yuvp][yuv][le] - planes=3, chroma=1:0 align=2:1 bits=14 cbits=14 - {2/16/[0:0] 2/16/[1:0] 2/16/[1:0] 0/0/[0:0] } + Basic desc: [ba][yuvp][yuv][le] + planes=3, chroma=1:0 align=2:1 + {16/[0:0] 16/[1:0] 16/[1:0] } Regular: planes=3 compbytes=2 bitpad=-2 chroma=2x1 ctype=uint 0: {1} 1: {2} @@ -1361,17 +1361,17 @@ yuv422p14: [GENERIC] ctype=uint 1: p=1 st=2 o=0 sh=0 d=14 2: p=2 st=2 o=0 sh=0 d=14 yuv422p14be: [GENERIC] ctype=uint - Legacy desc: [ba][yuvp][yuv][be] - planes=3, chroma=1:0 align=2:1 bits=14 cbits=14 - {2/16/[0:0] 2/16/[1:0] 2/16/[1:0] 0/0/[0:0] } + Basic desc: [ba][yuvp][yuv][be] + planes=3, chroma=1:0 align=2:1 + {16/[0:0] 16/[1:0] 16/[1:0] } AVD: name=yuv422p14be chroma=1:0 flags=0x11 [be][planar] 0: p=0 st=2 o=0 sh=0 d=14 1: p=1 st=2 o=0 sh=0 d=14 2: p=2 st=2 o=0 sh=0 d=14 yuv422p16: [GENERIC] ctype=uint - Legacy desc: [ba][yuvp][yuv][le] - planes=3, chroma=1:0 align=2:1 bits=16 cbits=16 - {2/16/[0:0] 2/16/[1:0] 2/16/[1:0] 0/0/[0:0] } + Basic desc: [ba][yuvp][yuv][le] + planes=3, chroma=1:0 align=2:1 + {16/[0:0] 16/[1:0] 16/[1:0] } Regular: planes=3 compbytes=2 bitpad=0 chroma=2x1 ctype=uint 0: {1} 1: {2} @@ -1381,17 +1381,17 @@ yuv422p16: [GENERIC] ctype=uint 1: p=1 st=2 o=0 sh=0 d=16 2: p=2 st=2 o=0 sh=0 d=16 yuv422p16be: [GENERIC] ctype=uint - Legacy desc: [ba][yuvp][yuv][be] - planes=3, chroma=1:0 align=2:1 bits=16 cbits=16 - {2/16/[0:0] 2/16/[1:0] 2/16/[1:0] 0/0/[0:0] } + Basic desc: [ba][yuvp][yuv][be] + planes=3, chroma=1:0 align=2:1 + {16/[0:0] 16/[1:0] 16/[1:0] } AVD: name=yuv422p16be chroma=1:0 flags=0x11 [be][planar] 0: p=0 st=2 o=0 sh=0 d=16 1: p=1 st=2 o=0 sh=0 d=16 2: p=2 st=2 o=0 sh=0 d=16 yuv422p9: [GENERIC] ctype=uint - Legacy desc: [ba][yuvp][yuv][le] - planes=3, chroma=1:0 align=2:1 bits=9 cbits=9 - {2/16/[0:0] 2/16/[1:0] 2/16/[1:0] 0/0/[0:0] } + Basic desc: [ba][yuvp][yuv][le] + planes=3, chroma=1:0 align=2:1 + {16/[0:0] 16/[1:0] 16/[1:0] } Regular: planes=3 compbytes=2 bitpad=-7 chroma=2x1 ctype=uint 0: {1} 1: {2} @@ -1401,25 +1401,25 @@ yuv422p9: [GENERIC] ctype=uint 1: p=1 st=2 o=0 sh=0 d=9 2: p=2 st=2 o=0 sh=0 d=9 yuv422p9be: [GENERIC] ctype=uint - Legacy desc: [ba][yuvp][yuv][be] - planes=3, chroma=1:0 align=2:1 bits=9 cbits=9 - {2/16/[0:0] 2/16/[1:0] 2/16/[1:0] 0/0/[0:0] } + Basic desc: [ba][yuvp][yuv][be] + planes=3, chroma=1:0 align=2:1 + {16/[0:0] 16/[1:0] 16/[1:0] } AVD: name=yuv422p9be chroma=1:0 flags=0x11 [be][planar] 0: p=0 st=2 o=0 sh=0 d=9 1: p=1 st=2 o=0 sh=0 d=9 2: p=2 st=2 o=0 sh=0 d=9 yuv422pf: ctype=float - Legacy desc: [ba][yuvp][yuv][le] - planes=3, chroma=1:0 align=2:1 bits=32 cbits=32 - {4/32/[0:0] 4/32/[1:0] 4/32/[1:0] 0/0/[0:0] } + Basic desc: [ba][yuvp][yuv][le] + planes=3, chroma=1:0 align=2:1 + {32/[0:0] 32/[1:0] 32/[1:0] } Regular: planes=3 compbytes=4 bitpad=0 chroma=2x1 ctype=float 0: {1} 1: {2} 2: {3} yuv440p: [GENERIC] ctype=uint - Legacy desc: [ba][yuvp][yuv][le][be] - planes=3, chroma=0:1 align=1:2 bits=8 cbits=8 - {1/8/[0:0] 1/8/[0:1] 1/8/[0:1] 0/0/[0:0] } + Basic desc: [ba][yuvp][yuv][le][be] + planes=3, chroma=0:1 align=1:2 + {8/[0:0] 8/[0:1] 8/[0:1] } Regular: planes=3 compbytes=1 bitpad=0 chroma=1x2 ctype=uint 0: {1} 1: {2} @@ -1429,9 +1429,9 @@ yuv440p: [GENERIC] ctype=uint 1: p=1 st=1 o=0 sh=0 d=8 2: p=2 st=1 o=0 sh=0 d=8 yuv440p10: [GENERIC] ctype=uint - Legacy desc: [ba][yuvp][yuv][le] - planes=3, chroma=0:1 align=1:2 bits=10 cbits=10 - {2/16/[0:0] 2/16/[0:1] 2/16/[0:1] 0/0/[0:0] } + Basic desc: [ba][yuvp][yuv][le] + planes=3, chroma=0:1 align=1:2 + {16/[0:0] 16/[0:1] 16/[0:1] } Regular: planes=3 compbytes=2 bitpad=-6 chroma=1x2 ctype=uint 0: {1} 1: {2} @@ -1441,17 +1441,17 @@ yuv440p10: [GENERIC] ctype=uint 1: p=1 st=2 o=0 sh=0 d=10 2: p=2 st=2 o=0 sh=0 d=10 yuv440p10be: [GENERIC] ctype=uint - Legacy desc: [ba][yuvp][yuv][be] - planes=3, chroma=0:1 align=1:2 bits=10 cbits=10 - {2/16/[0:0] 2/16/[0:1] 2/16/[0:1] 0/0/[0:0] } + Basic desc: [ba][yuvp][yuv][be] + planes=3, chroma=0:1 align=1:2 + {16/[0:0] 16/[0:1] 16/[0:1] } AVD: name=yuv440p10be chroma=0:1 flags=0x11 [be][planar] 0: p=0 st=2 o=0 sh=0 d=10 1: p=1 st=2 o=0 sh=0 d=10 2: p=2 st=2 o=0 sh=0 d=10 yuv440p12: [GENERIC] ctype=uint - Legacy desc: [ba][yuvp][yuv][le] - planes=3, chroma=0:1 align=1:2 bits=12 cbits=12 - {2/16/[0:0] 2/16/[0:1] 2/16/[0:1] 0/0/[0:0] } + Basic desc: [ba][yuvp][yuv][le] + planes=3, chroma=0:1 align=1:2 + {16/[0:0] 16/[0:1] 16/[0:1] } Regular: planes=3 compbytes=2 bitpad=-4 chroma=1x2 ctype=uint 0: {1} 1: {2} @@ -1461,25 +1461,25 @@ yuv440p12: [GENERIC] ctype=uint 1: p=1 st=2 o=0 sh=0 d=12 2: p=2 st=2 o=0 sh=0 d=12 yuv440p12be: [GENERIC] ctype=uint - Legacy desc: [ba][yuvp][yuv][be] - planes=3, chroma=0:1 align=1:2 bits=12 cbits=12 - {2/16/[0:0] 2/16/[0:1] 2/16/[0:1] 0/0/[0:0] } + Basic desc: [ba][yuvp][yuv][be] + planes=3, chroma=0:1 align=1:2 + {16/[0:0] 16/[0:1] 16/[0:1] } AVD: name=yuv440p12be chroma=0:1 flags=0x11 [be][planar] 0: p=0 st=2 o=0 sh=0 d=12 1: p=1 st=2 o=0 sh=0 d=12 2: p=2 st=2 o=0 sh=0 d=12 yuv440pf: ctype=float - Legacy desc: [ba][yuvp][yuv][le] - planes=3, chroma=0:1 align=1:2 bits=32 cbits=32 - {4/32/[0:0] 4/32/[0:1] 4/32/[0:1] 0/0/[0:0] } + Basic desc: [ba][yuvp][yuv][le] + planes=3, chroma=0:1 align=1:2 + {32/[0:0] 32/[0:1] 32/[0:1] } Regular: planes=3 compbytes=4 bitpad=0 chroma=1x2 ctype=float 0: {1} 1: {2} 2: {3} yuv444p: ctype=uint - Legacy desc: [ba][yuvp][yuv][le][be] - planes=3, chroma=0:0 align=1:1 bits=8 cbits=8 - {1/8/[0:0] 1/8/[0:0] 1/8/[0:0] 0/0/[0:0] } + Basic desc: [ba][yuvp][yuv][le][be] + planes=3, chroma=0:0 align=1:1 + {8/[0:0] 8/[0:0] 8/[0:0] } Regular: planes=3 compbytes=1 bitpad=0 chroma=1x1 ctype=uint 0: {1} 1: {2} @@ -1490,9 +1490,9 @@ yuv444p: ctype=uint 2: p=2 st=1 o=0 sh=0 d=8 Ambiguous alias: yuvj444p yuv444p10: [GENERIC] ctype=uint - Legacy desc: [ba][yuvp][yuv][le] - planes=3, chroma=0:0 align=1:1 bits=10 cbits=10 - {2/16/[0:0] 2/16/[0:0] 2/16/[0:0] 0/0/[0:0] } + Basic desc: [ba][yuvp][yuv][le] + planes=3, chroma=0:0 align=1:1 + {16/[0:0] 16/[0:0] 16/[0:0] } Regular: planes=3 compbytes=2 bitpad=-6 chroma=1x1 ctype=uint 0: {1} 1: {2} @@ -1502,17 +1502,17 @@ yuv444p10: [GENERIC] ctype=uint 1: p=1 st=2 o=0 sh=0 d=10 2: p=2 st=2 o=0 sh=0 d=10 yuv444p10be: [GENERIC] ctype=uint - Legacy desc: [ba][yuvp][yuv][be] - planes=3, chroma=0:0 align=1:1 bits=10 cbits=10 - {2/16/[0:0] 2/16/[0:0] 2/16/[0:0] 0/0/[0:0] } + Basic desc: [ba][yuvp][yuv][be] + planes=3, chroma=0:0 align=1:1 + {16/[0:0] 16/[0:0] 16/[0:0] } AVD: name=yuv444p10be chroma=0:0 flags=0x11 [be][planar] 0: p=0 st=2 o=0 sh=0 d=10 1: p=1 st=2 o=0 sh=0 d=10 2: p=2 st=2 o=0 sh=0 d=10 yuv444p12: [GENERIC] ctype=uint - Legacy desc: [ba][yuvp][yuv][le] - planes=3, chroma=0:0 align=1:1 bits=12 cbits=12 - {2/16/[0:0] 2/16/[0:0] 2/16/[0:0] 0/0/[0:0] } + Basic desc: [ba][yuvp][yuv][le] + planes=3, chroma=0:0 align=1:1 + {16/[0:0] 16/[0:0] 16/[0:0] } Regular: planes=3 compbytes=2 bitpad=-4 chroma=1x1 ctype=uint 0: {1} 1: {2} @@ -1522,17 +1522,17 @@ yuv444p12: [GENERIC] ctype=uint 1: p=1 st=2 o=0 sh=0 d=12 2: p=2 st=2 o=0 sh=0 d=12 yuv444p12be: [GENERIC] ctype=uint - Legacy desc: [ba][yuvp][yuv][be] - planes=3, chroma=0:0 align=1:1 bits=12 cbits=12 - {2/16/[0:0] 2/16/[0:0] 2/16/[0:0] 0/0/[0:0] } + Basic desc: [ba][yuvp][yuv][be] + planes=3, chroma=0:0 align=1:1 + {16/[0:0] 16/[0:0] 16/[0:0] } AVD: name=yuv444p12be chroma=0:0 flags=0x11 [be][planar] 0: p=0 st=2 o=0 sh=0 d=12 1: p=1 st=2 o=0 sh=0 d=12 2: p=2 st=2 o=0 sh=0 d=12 yuv444p14: [GENERIC] ctype=uint - Legacy desc: [ba][yuvp][yuv][le] - planes=3, chroma=0:0 align=1:1 bits=14 cbits=14 - {2/16/[0:0] 2/16/[0:0] 2/16/[0:0] 0/0/[0:0] } + Basic desc: [ba][yuvp][yuv][le] + planes=3, chroma=0:0 align=1:1 + {16/[0:0] 16/[0:0] 16/[0:0] } Regular: planes=3 compbytes=2 bitpad=-2 chroma=1x1 ctype=uint 0: {1} 1: {2} @@ -1542,17 +1542,17 @@ yuv444p14: [GENERIC] ctype=uint 1: p=1 st=2 o=0 sh=0 d=14 2: p=2 st=2 o=0 sh=0 d=14 yuv444p14be: [GENERIC] ctype=uint - Legacy desc: [ba][yuvp][yuv][be] - planes=3, chroma=0:0 align=1:1 bits=14 cbits=14 - {2/16/[0:0] 2/16/[0:0] 2/16/[0:0] 0/0/[0:0] } + Basic desc: [ba][yuvp][yuv][be] + planes=3, chroma=0:0 align=1:1 + {16/[0:0] 16/[0:0] 16/[0:0] } AVD: name=yuv444p14be chroma=0:0 flags=0x11 [be][planar] 0: p=0 st=2 o=0 sh=0 d=14 1: p=1 st=2 o=0 sh=0 d=14 2: p=2 st=2 o=0 sh=0 d=14 yuv444p16: [GENERIC] ctype=uint - Legacy desc: [ba][yuvp][yuv][le] - planes=3, chroma=0:0 align=1:1 bits=16 cbits=16 - {2/16/[0:0] 2/16/[0:0] 2/16/[0:0] 0/0/[0:0] } + Basic desc: [ba][yuvp][yuv][le] + planes=3, chroma=0:0 align=1:1 + {16/[0:0] 16/[0:0] 16/[0:0] } Regular: planes=3 compbytes=2 bitpad=0 chroma=1x1 ctype=uint 0: {1} 1: {2} @@ -1562,17 +1562,17 @@ yuv444p16: [GENERIC] ctype=uint 1: p=1 st=2 o=0 sh=0 d=16 2: p=2 st=2 o=0 sh=0 d=16 yuv444p16be: [GENERIC] ctype=uint - Legacy desc: [ba][yuvp][yuv][be] - planes=3, chroma=0:0 align=1:1 bits=16 cbits=16 - {2/16/[0:0] 2/16/[0:0] 2/16/[0:0] 0/0/[0:0] } + Basic desc: [ba][yuvp][yuv][be] + planes=3, chroma=0:0 align=1:1 + {16/[0:0] 16/[0:0] 16/[0:0] } AVD: name=yuv444p16be chroma=0:0 flags=0x11 [be][planar] 0: p=0 st=2 o=0 sh=0 d=16 1: p=1 st=2 o=0 sh=0 d=16 2: p=2 st=2 o=0 sh=0 d=16 yuv444p9: [GENERIC] ctype=uint - Legacy desc: [ba][yuvp][yuv][le] - planes=3, chroma=0:0 align=1:1 bits=9 cbits=9 - {2/16/[0:0] 2/16/[0:0] 2/16/[0:0] 0/0/[0:0] } + Basic desc: [ba][yuvp][yuv][le] + planes=3, chroma=0:0 align=1:1 + {16/[0:0] 16/[0:0] 16/[0:0] } Regular: planes=3 compbytes=2 bitpad=-7 chroma=1x1 ctype=uint 0: {1} 1: {2} @@ -1582,43 +1582,43 @@ yuv444p9: [GENERIC] ctype=uint 1: p=1 st=2 o=0 sh=0 d=9 2: p=2 st=2 o=0 sh=0 d=9 yuv444p9be: [GENERIC] ctype=uint - Legacy desc: [ba][yuvp][yuv][be] - planes=3, chroma=0:0 align=1:1 bits=9 cbits=9 - {2/16/[0:0] 2/16/[0:0] 2/16/[0:0] 0/0/[0:0] } + Basic desc: [ba][yuvp][yuv][be] + planes=3, chroma=0:0 align=1:1 + {16/[0:0] 16/[0:0] 16/[0:0] } AVD: name=yuv444p9be chroma=0:0 flags=0x11 [be][planar] 0: p=0 st=2 o=0 sh=0 d=9 1: p=1 st=2 o=0 sh=0 d=9 2: p=2 st=2 o=0 sh=0 d=9 yuv444pf: ctype=float - Legacy desc: [ba][yuvp][yuv][le] - planes=3, chroma=0:0 align=1:1 bits=32 cbits=32 - {4/32/[0:0] 4/32/[0:0] 4/32/[0:0] 0/0/[0:0] } + Basic desc: [ba][yuvp][yuv][le] + planes=3, chroma=0:0 align=1:1 + {32/[0:0] 32/[0:0] 32/[0:0] } Regular: planes=3 compbytes=4 bitpad=0 chroma=1x1 ctype=float 0: {1} 1: {2} 2: {3} yuva410pf: ctype=float - Legacy desc: [ba][a][yuvp][yuv][le] - planes=4, chroma=2:2 align=4:4 bits=32 cbits=32 - {4/32/[0:0] 4/32/[2:2] 4/32/[2:2] 4/32/[0:0] } + Basic desc: [ba][a][yuvp][yuv][le] + planes=4, chroma=2:2 align=4:4 + {32/[0:0] 32/[2:2] 32/[2:2] 32/[0:0] } Regular: planes=4 compbytes=4 bitpad=0 chroma=4x4 ctype=float 0: {1} 1: {2} 2: {3} 3: {4} yuva411pf: ctype=float - Legacy desc: [ba][a][yuvp][yuv][le] - planes=4, chroma=2:0 align=4:1 bits=32 cbits=32 - {4/32/[0:0] 4/32/[2:0] 4/32/[2:0] 4/32/[0:0] } + Basic desc: [ba][a][yuvp][yuv][le] + planes=4, chroma=2:0 align=4:1 + {32/[0:0] 32/[2:0] 32/[2:0] 32/[0:0] } Regular: planes=4 compbytes=4 bitpad=0 chroma=4x1 ctype=float 0: {1} 1: {2} 2: {3} 3: {4} yuva420p: [GENERIC] ctype=uint - Legacy desc: [ba][a][yuvp][yuv][le][be] - planes=4, chroma=1:1 align=2:2 bits=8 cbits=8 - {1/8/[0:0] 1/8/[1:1] 1/8/[1:1] 1/8/[0:0] } + Basic desc: [ba][a][yuvp][yuv][le][be] + planes=4, chroma=1:1 align=2:2 + {8/[0:0] 8/[1:1] 8/[1:1] 8/[0:0] } Regular: planes=4 compbytes=1 bitpad=0 chroma=2x2 ctype=uint 0: {1} 1: {2} @@ -1630,9 +1630,9 @@ yuva420p: [GENERIC] ctype=uint 2: p=2 st=1 o=0 sh=0 d=8 3: p=3 st=1 o=0 sh=0 d=8 yuva420p10: [GENERIC] ctype=uint - Legacy desc: [ba][a][yuvp][yuv][le] - planes=4, chroma=1:1 align=2:2 bits=10 cbits=10 - {2/16/[0:0] 2/16/[1:1] 2/16/[1:1] 2/16/[0:0] } + Basic desc: [ba][a][yuvp][yuv][le] + planes=4, chroma=1:1 align=2:2 + {16/[0:0] 16/[1:1] 16/[1:1] 16/[0:0] } Regular: planes=4 compbytes=2 bitpad=-6 chroma=2x2 ctype=uint 0: {1} 1: {2} @@ -1644,18 +1644,18 @@ yuva420p10: [GENERIC] ctype=uint 2: p=2 st=2 o=0 sh=0 d=10 3: p=3 st=2 o=0 sh=0 d=10 yuva420p10be: [GENERIC] ctype=uint - Legacy desc: [ba][a][yuvp][yuv][be] - planes=4, chroma=1:1 align=2:2 bits=10 cbits=10 - {2/16/[0:0] 2/16/[1:1] 2/16/[1:1] 2/16/[0:0] } + Basic desc: [ba][a][yuvp][yuv][be] + planes=4, chroma=1:1 align=2:2 + {16/[0:0] 16/[1:1] 16/[1:1] 16/[0:0] } AVD: name=yuva420p10be chroma=1:1 flags=0x91 [be][planar][alpha] 0: p=0 st=2 o=0 sh=0 d=10 1: p=1 st=2 o=0 sh=0 d=10 2: p=2 st=2 o=0 sh=0 d=10 3: p=3 st=2 o=0 sh=0 d=10 yuva420p16: [GENERIC] ctype=uint - Legacy desc: [ba][a][yuvp][yuv][le] - planes=4, chroma=1:1 align=2:2 bits=16 cbits=16 - {2/16/[0:0] 2/16/[1:1] 2/16/[1:1] 2/16/[0:0] } + Basic desc: [ba][a][yuvp][yuv][le] + planes=4, chroma=1:1 align=2:2 + {16/[0:0] 16/[1:1] 16/[1:1] 16/[0:0] } Regular: planes=4 compbytes=2 bitpad=0 chroma=2x2 ctype=uint 0: {1} 1: {2} @@ -1667,18 +1667,18 @@ yuva420p16: [GENERIC] ctype=uint 2: p=2 st=2 o=0 sh=0 d=16 3: p=3 st=2 o=0 sh=0 d=16 yuva420p16be: [GENERIC] ctype=uint - Legacy desc: [ba][a][yuvp][yuv][be] - planes=4, chroma=1:1 align=2:2 bits=16 cbits=16 - {2/16/[0:0] 2/16/[1:1] 2/16/[1:1] 2/16/[0:0] } + Basic desc: [ba][a][yuvp][yuv][be] + planes=4, chroma=1:1 align=2:2 + {16/[0:0] 16/[1:1] 16/[1:1] 16/[0:0] } AVD: name=yuva420p16be chroma=1:1 flags=0x91 [be][planar][alpha] 0: p=0 st=2 o=0 sh=0 d=16 1: p=1 st=2 o=0 sh=0 d=16 2: p=2 st=2 o=0 sh=0 d=16 3: p=3 st=2 o=0 sh=0 d=16 yuva420p9: [GENERIC] ctype=uint - Legacy desc: [ba][a][yuvp][yuv][le] - planes=4, chroma=1:1 align=2:2 bits=9 cbits=9 - {2/16/[0:0] 2/16/[1:1] 2/16/[1:1] 2/16/[0:0] } + Basic desc: [ba][a][yuvp][yuv][le] + planes=4, chroma=1:1 align=2:2 + {16/[0:0] 16/[1:1] 16/[1:1] 16/[0:0] } Regular: planes=4 compbytes=2 bitpad=-7 chroma=2x2 ctype=uint 0: {1} 1: {2} @@ -1690,27 +1690,27 @@ yuva420p9: [GENERIC] ctype=uint 2: p=2 st=2 o=0 sh=0 d=9 3: p=3 st=2 o=0 sh=0 d=9 yuva420p9be: [GENERIC] ctype=uint - Legacy desc: [ba][a][yuvp][yuv][be] - planes=4, chroma=1:1 align=2:2 bits=9 cbits=9 - {2/16/[0:0] 2/16/[1:1] 2/16/[1:1] 2/16/[0:0] } + Basic desc: [ba][a][yuvp][yuv][be] + planes=4, chroma=1:1 align=2:2 + {16/[0:0] 16/[1:1] 16/[1:1] 16/[0:0] } AVD: name=yuva420p9be chroma=1:1 flags=0x91 [be][planar][alpha] 0: p=0 st=2 o=0 sh=0 d=9 1: p=1 st=2 o=0 sh=0 d=9 2: p=2 st=2 o=0 sh=0 d=9 3: p=3 st=2 o=0 sh=0 d=9 yuva420pf: ctype=float - Legacy desc: [ba][a][yuvp][yuv][le] - planes=4, chroma=1:1 align=2:2 bits=32 cbits=32 - {4/32/[0:0] 4/32/[1:1] 4/32/[1:1] 4/32/[0:0] } + Basic desc: [ba][a][yuvp][yuv][le] + planes=4, chroma=1:1 align=2:2 + {32/[0:0] 32/[1:1] 32/[1:1] 32/[0:0] } Regular: planes=4 compbytes=4 bitpad=0 chroma=2x2 ctype=float 0: {1} 1: {2} 2: {3} 3: {4} yuva422p: [GENERIC] ctype=uint - Legacy desc: [ba][a][yuvp][yuv][le][be] - planes=4, chroma=1:0 align=2:1 bits=8 cbits=8 - {1/8/[0:0] 1/8/[1:0] 1/8/[1:0] 1/8/[0:0] } + Basic desc: [ba][a][yuvp][yuv][le][be] + planes=4, chroma=1:0 align=2:1 + {8/[0:0] 8/[1:0] 8/[1:0] 8/[0:0] } Regular: planes=4 compbytes=1 bitpad=0 chroma=2x1 ctype=uint 0: {1} 1: {2} @@ -1722,9 +1722,9 @@ yuva422p: [GENERIC] ctype=uint 2: p=2 st=1 o=0 sh=0 d=8 3: p=3 st=1 o=0 sh=0 d=8 yuva422p10: [GENERIC] ctype=uint - Legacy desc: [ba][a][yuvp][yuv][le] - planes=4, chroma=1:0 align=2:1 bits=10 cbits=10 - {2/16/[0:0] 2/16/[1:0] 2/16/[1:0] 2/16/[0:0] } + Basic desc: [ba][a][yuvp][yuv][le] + planes=4, chroma=1:0 align=2:1 + {16/[0:0] 16/[1:0] 16/[1:0] 16/[0:0] } Regular: planes=4 compbytes=2 bitpad=-6 chroma=2x1 ctype=uint 0: {1} 1: {2} @@ -1736,18 +1736,18 @@ yuva422p10: [GENERIC] ctype=uint 2: p=2 st=2 o=0 sh=0 d=10 3: p=3 st=2 o=0 sh=0 d=10 yuva422p10be: [GENERIC] ctype=uint - Legacy desc: [ba][a][yuvp][yuv][be] - planes=4, chroma=1:0 align=2:1 bits=10 cbits=10 - {2/16/[0:0] 2/16/[1:0] 2/16/[1:0] 2/16/[0:0] } + Basic desc: [ba][a][yuvp][yuv][be] + planes=4, chroma=1:0 align=2:1 + {16/[0:0] 16/[1:0] 16/[1:0] 16/[0:0] } AVD: name=yuva422p10be chroma=1:0 flags=0x91 [be][planar][alpha] 0: p=0 st=2 o=0 sh=0 d=10 1: p=1 st=2 o=0 sh=0 d=10 2: p=2 st=2 o=0 sh=0 d=10 3: p=3 st=2 o=0 sh=0 d=10 yuva422p12: [GENERIC] ctype=uint - Legacy desc: [ba][a][yuvp][yuv][le] - planes=4, chroma=1:0 align=2:1 bits=12 cbits=12 - {2/16/[0:0] 2/16/[1:0] 2/16/[1:0] 2/16/[0:0] } + Basic desc: [ba][a][yuvp][yuv][le] + planes=4, chroma=1:0 align=2:1 + {16/[0:0] 16/[1:0] 16/[1:0] 16/[0:0] } Regular: planes=4 compbytes=2 bitpad=-4 chroma=2x1 ctype=uint 0: {1} 1: {2} @@ -1759,18 +1759,18 @@ yuva422p12: [GENERIC] ctype=uint 2: p=2 st=2 o=0 sh=0 d=12 3: p=3 st=2 o=0 sh=0 d=12 yuva422p12be: [GENERIC] ctype=uint - Legacy desc: [ba][a][yuvp][yuv][be] - planes=4, chroma=1:0 align=2:1 bits=12 cbits=12 - {2/16/[0:0] 2/16/[1:0] 2/16/[1:0] 2/16/[0:0] } + Basic desc: [ba][a][yuvp][yuv][be] + planes=4, chroma=1:0 align=2:1 + {16/[0:0] 16/[1:0] 16/[1:0] 16/[0:0] } AVD: name=yuva422p12be chroma=1:0 flags=0x91 [be][planar][alpha] 0: p=0 st=2 o=0 sh=0 d=12 1: p=1 st=2 o=0 sh=0 d=12 2: p=2 st=2 o=0 sh=0 d=12 3: p=3 st=2 o=0 sh=0 d=12 yuva422p16: [GENERIC] ctype=uint - Legacy desc: [ba][a][yuvp][yuv][le] - planes=4, chroma=1:0 align=2:1 bits=16 cbits=16 - {2/16/[0:0] 2/16/[1:0] 2/16/[1:0] 2/16/[0:0] } + Basic desc: [ba][a][yuvp][yuv][le] + planes=4, chroma=1:0 align=2:1 + {16/[0:0] 16/[1:0] 16/[1:0] 16/[0:0] } Regular: planes=4 compbytes=2 bitpad=0 chroma=2x1 ctype=uint 0: {1} 1: {2} @@ -1782,18 +1782,18 @@ yuva422p16: [GENERIC] ctype=uint 2: p=2 st=2 o=0 sh=0 d=16 3: p=3 st=2 o=0 sh=0 d=16 yuva422p16be: [GENERIC] ctype=uint - Legacy desc: [ba][a][yuvp][yuv][be] - planes=4, chroma=1:0 align=2:1 bits=16 cbits=16 - {2/16/[0:0] 2/16/[1:0] 2/16/[1:0] 2/16/[0:0] } + Basic desc: [ba][a][yuvp][yuv][be] + planes=4, chroma=1:0 align=2:1 + {16/[0:0] 16/[1:0] 16/[1:0] 16/[0:0] } AVD: name=yuva422p16be chroma=1:0 flags=0x91 [be][planar][alpha] 0: p=0 st=2 o=0 sh=0 d=16 1: p=1 st=2 o=0 sh=0 d=16 2: p=2 st=2 o=0 sh=0 d=16 3: p=3 st=2 o=0 sh=0 d=16 yuva422p9: [GENERIC] ctype=uint - Legacy desc: [ba][a][yuvp][yuv][le] - planes=4, chroma=1:0 align=2:1 bits=9 cbits=9 - {2/16/[0:0] 2/16/[1:0] 2/16/[1:0] 2/16/[0:0] } + Basic desc: [ba][a][yuvp][yuv][le] + planes=4, chroma=1:0 align=2:1 + {16/[0:0] 16/[1:0] 16/[1:0] 16/[0:0] } Regular: planes=4 compbytes=2 bitpad=-7 chroma=2x1 ctype=uint 0: {1} 1: {2} @@ -1805,36 +1805,36 @@ yuva422p9: [GENERIC] ctype=uint 2: p=2 st=2 o=0 sh=0 d=9 3: p=3 st=2 o=0 sh=0 d=9 yuva422p9be: [GENERIC] ctype=uint - Legacy desc: [ba][a][yuvp][yuv][be] - planes=4, chroma=1:0 align=2:1 bits=9 cbits=9 - {2/16/[0:0] 2/16/[1:0] 2/16/[1:0] 2/16/[0:0] } + Basic desc: [ba][a][yuvp][yuv][be] + planes=4, chroma=1:0 align=2:1 + {16/[0:0] 16/[1:0] 16/[1:0] 16/[0:0] } AVD: name=yuva422p9be chroma=1:0 flags=0x91 [be][planar][alpha] 0: p=0 st=2 o=0 sh=0 d=9 1: p=1 st=2 o=0 sh=0 d=9 2: p=2 st=2 o=0 sh=0 d=9 3: p=3 st=2 o=0 sh=0 d=9 yuva422pf: ctype=float - Legacy desc: [ba][a][yuvp][yuv][le] - planes=4, chroma=1:0 align=2:1 bits=32 cbits=32 - {4/32/[0:0] 4/32/[1:0] 4/32/[1:0] 4/32/[0:0] } + Basic desc: [ba][a][yuvp][yuv][le] + planes=4, chroma=1:0 align=2:1 + {32/[0:0] 32/[1:0] 32/[1:0] 32/[0:0] } Regular: planes=4 compbytes=4 bitpad=0 chroma=2x1 ctype=float 0: {1} 1: {2} 2: {3} 3: {4} yuva440pf: ctype=float - Legacy desc: [ba][a][yuvp][yuv][le] - planes=4, chroma=0:1 align=1:2 bits=32 cbits=32 - {4/32/[0:0] 4/32/[0:1] 4/32/[0:1] 4/32/[0:0] } + Basic desc: [ba][a][yuvp][yuv][le] + planes=4, chroma=0:1 align=1:2 + {32/[0:0] 32/[0:1] 32/[0:1] 32/[0:0] } Regular: planes=4 compbytes=4 bitpad=0 chroma=1x2 ctype=float 0: {1} 1: {2} 2: {3} 3: {4} yuva444p: [GENERIC] ctype=uint - Legacy desc: [ba][a][yuvp][yuv][le][be] - planes=4, chroma=0:0 align=1:1 bits=8 cbits=8 - {1/8/[0:0] 1/8/[0:0] 1/8/[0:0] 1/8/[0:0] } + Basic desc: [ba][a][yuvp][yuv][le][be] + planes=4, chroma=0:0 align=1:1 + {8/[0:0] 8/[0:0] 8/[0:0] 8/[0:0] } Regular: planes=4 compbytes=1 bitpad=0 chroma=1x1 ctype=uint 0: {1} 1: {2} @@ -1846,9 +1846,9 @@ yuva444p: [GENERIC] ctype=uint 2: p=2 st=1 o=0 sh=0 d=8 3: p=3 st=1 o=0 sh=0 d=8 yuva444p10: [GENERIC] ctype=uint - Legacy desc: [ba][a][yuvp][yuv][le] - planes=4, chroma=0:0 align=1:1 bits=10 cbits=10 - {2/16/[0:0] 2/16/[0:0] 2/16/[0:0] 2/16/[0:0] } + Basic desc: [ba][a][yuvp][yuv][le] + planes=4, chroma=0:0 align=1:1 + {16/[0:0] 16/[0:0] 16/[0:0] 16/[0:0] } Regular: planes=4 compbytes=2 bitpad=-6 chroma=1x1 ctype=uint 0: {1} 1: {2} @@ -1860,18 +1860,18 @@ yuva444p10: [GENERIC] ctype=uint 2: p=2 st=2 o=0 sh=0 d=10 3: p=3 st=2 o=0 sh=0 d=10 yuva444p10be: [GENERIC] ctype=uint - Legacy desc: [ba][a][yuvp][yuv][be] - planes=4, chroma=0:0 align=1:1 bits=10 cbits=10 - {2/16/[0:0] 2/16/[0:0] 2/16/[0:0] 2/16/[0:0] } + Basic desc: [ba][a][yuvp][yuv][be] + planes=4, chroma=0:0 align=1:1 + {16/[0:0] 16/[0:0] 16/[0:0] 16/[0:0] } AVD: name=yuva444p10be chroma=0:0 flags=0x91 [be][planar][alpha] 0: p=0 st=2 o=0 sh=0 d=10 1: p=1 st=2 o=0 sh=0 d=10 2: p=2 st=2 o=0 sh=0 d=10 3: p=3 st=2 o=0 sh=0 d=10 yuva444p12: [GENERIC] ctype=uint - Legacy desc: [ba][a][yuvp][yuv][le] - planes=4, chroma=0:0 align=1:1 bits=12 cbits=12 - {2/16/[0:0] 2/16/[0:0] 2/16/[0:0] 2/16/[0:0] } + Basic desc: [ba][a][yuvp][yuv][le] + planes=4, chroma=0:0 align=1:1 + {16/[0:0] 16/[0:0] 16/[0:0] 16/[0:0] } Regular: planes=4 compbytes=2 bitpad=-4 chroma=1x1 ctype=uint 0: {1} 1: {2} @@ -1883,18 +1883,18 @@ yuva444p12: [GENERIC] ctype=uint 2: p=2 st=2 o=0 sh=0 d=12 3: p=3 st=2 o=0 sh=0 d=12 yuva444p12be: [GENERIC] ctype=uint - Legacy desc: [ba][a][yuvp][yuv][be] - planes=4, chroma=0:0 align=1:1 bits=12 cbits=12 - {2/16/[0:0] 2/16/[0:0] 2/16/[0:0] 2/16/[0:0] } + Basic desc: [ba][a][yuvp][yuv][be] + planes=4, chroma=0:0 align=1:1 + {16/[0:0] 16/[0:0] 16/[0:0] 16/[0:0] } AVD: name=yuva444p12be chroma=0:0 flags=0x91 [be][planar][alpha] 0: p=0 st=2 o=0 sh=0 d=12 1: p=1 st=2 o=0 sh=0 d=12 2: p=2 st=2 o=0 sh=0 d=12 3: p=3 st=2 o=0 sh=0 d=12 yuva444p16: [GENERIC] ctype=uint - Legacy desc: [ba][a][yuvp][yuv][le] - planes=4, chroma=0:0 align=1:1 bits=16 cbits=16 - {2/16/[0:0] 2/16/[0:0] 2/16/[0:0] 2/16/[0:0] } + Basic desc: [ba][a][yuvp][yuv][le] + planes=4, chroma=0:0 align=1:1 + {16/[0:0] 16/[0:0] 16/[0:0] 16/[0:0] } Regular: planes=4 compbytes=2 bitpad=0 chroma=1x1 ctype=uint 0: {1} 1: {2} @@ -1906,18 +1906,18 @@ yuva444p16: [GENERIC] ctype=uint 2: p=2 st=2 o=0 sh=0 d=16 3: p=3 st=2 o=0 sh=0 d=16 yuva444p16be: [GENERIC] ctype=uint - Legacy desc: [ba][a][yuvp][yuv][be] - planes=4, chroma=0:0 align=1:1 bits=16 cbits=16 - {2/16/[0:0] 2/16/[0:0] 2/16/[0:0] 2/16/[0:0] } + Basic desc: [ba][a][yuvp][yuv][be] + planes=4, chroma=0:0 align=1:1 + {16/[0:0] 16/[0:0] 16/[0:0] 16/[0:0] } AVD: name=yuva444p16be chroma=0:0 flags=0x91 [be][planar][alpha] 0: p=0 st=2 o=0 sh=0 d=16 1: p=1 st=2 o=0 sh=0 d=16 2: p=2 st=2 o=0 sh=0 d=16 3: p=3 st=2 o=0 sh=0 d=16 yuva444p9: [GENERIC] ctype=uint - Legacy desc: [ba][a][yuvp][yuv][le] - planes=4, chroma=0:0 align=1:1 bits=9 cbits=9 - {2/16/[0:0] 2/16/[0:0] 2/16/[0:0] 2/16/[0:0] } + Basic desc: [ba][a][yuvp][yuv][le] + planes=4, chroma=0:0 align=1:1 + {16/[0:0] 16/[0:0] 16/[0:0] 16/[0:0] } Regular: planes=4 compbytes=2 bitpad=-7 chroma=1x1 ctype=uint 0: {1} 1: {2} @@ -1929,27 +1929,27 @@ yuva444p9: [GENERIC] ctype=uint 2: p=2 st=2 o=0 sh=0 d=9 3: p=3 st=2 o=0 sh=0 d=9 yuva444p9be: [GENERIC] ctype=uint - Legacy desc: [ba][a][yuvp][yuv][be] - planes=4, chroma=0:0 align=1:1 bits=9 cbits=9 - {2/16/[0:0] 2/16/[0:0] 2/16/[0:0] 2/16/[0:0] } + Basic desc: [ba][a][yuvp][yuv][be] + planes=4, chroma=0:0 align=1:1 + {16/[0:0] 16/[0:0] 16/[0:0] 16/[0:0] } AVD: name=yuva444p9be chroma=0:0 flags=0x91 [be][planar][alpha] 0: p=0 st=2 o=0 sh=0 d=9 1: p=1 st=2 o=0 sh=0 d=9 2: p=2 st=2 o=0 sh=0 d=9 3: p=3 st=2 o=0 sh=0 d=9 yuva444pf: ctype=float - Legacy desc: [ba][a][yuvp][yuv][le] - planes=4, chroma=0:0 align=1:1 bits=32 cbits=32 - {4/32/[0:0] 4/32/[0:0] 4/32/[0:0] 4/32/[0:0] } + Basic desc: [ba][a][yuvp][yuv][le] + planes=4, chroma=0:0 align=1:1 + {32/[0:0] 32/[0:0] 32/[0:0] 32/[0:0] } Regular: planes=4 compbytes=4 bitpad=0 chroma=1x1 ctype=float 0: {1} 1: {2} 2: {3} 3: {4} yuvj411p: [GENERIC] ctype=uint - Legacy desc: [ba][yuvp][yuv][le][be] - planes=3, chroma=2:0 align=4:1 bits=8 cbits=8 - {1/8/[0:0] 1/8/[2:0] 1/8/[2:0] 0/0/[0:0] } + Basic desc: [ba][yuvp][yuv][le][be] + planes=3, chroma=2:0 align=4:1 + {8/[0:0] 8/[2:0] 8/[2:0] } Regular: planes=3 compbytes=1 bitpad=0 chroma=4x1 ctype=uint 0: {1} 1: {2} @@ -1959,9 +1959,9 @@ yuvj411p: [GENERIC] ctype=uint 1: p=1 st=1 o=0 sh=0 d=8 2: p=2 st=1 o=0 sh=0 d=8 yuvj422p: [GENERIC] ctype=uint - Legacy desc: [ba][yuvp][yuv][le][be] - planes=3, chroma=1:0 align=2:1 bits=8 cbits=8 - {1/8/[0:0] 1/8/[1:0] 1/8/[1:0] 0/0/[0:0] } + Basic desc: [ba][yuvp][yuv][le][be] + planes=3, chroma=1:0 align=2:1 + {8/[0:0] 8/[1:0] 8/[1:0] } Regular: planes=3 compbytes=1 bitpad=0 chroma=2x1 ctype=uint 0: {1} 1: {2} @@ -1971,9 +1971,9 @@ yuvj422p: [GENERIC] ctype=uint 1: p=1 st=1 o=0 sh=0 d=8 2: p=2 st=1 o=0 sh=0 d=8 yuvj440p: [GENERIC] ctype=uint - Legacy desc: [ba][yuvp][yuv][le][be] - planes=3, chroma=0:1 align=1:2 bits=8 cbits=8 - {1/8/[0:0] 1/8/[0:1] 1/8/[0:1] 0/0/[0:0] } + Basic desc: [ba][yuvp][yuv][le][be] + planes=3, chroma=0:1 align=1:2 + {8/[0:0] 8/[0:1] 8/[0:1] } Regular: planes=3 compbytes=1 bitpad=0 chroma=1x2 ctype=uint 0: {1} 1: {2} @@ -1983,17 +1983,17 @@ yuvj440p: [GENERIC] ctype=uint 1: p=1 st=1 o=0 sh=0 d=8 2: p=2 st=1 o=0 sh=0 d=8 yuyv422: [GENERIC] ctype=uint - Legacy desc: [ba][yuv][le][be] - planes=1, chroma=1:0 align=2:1 bits=24 cbits=8 - {2/16/[0:0] 0/0/[0:0] 0/0/[0:0] 0/0/[0:0] } + Basic desc: [ba][yuv][le][be] + planes=1, chroma=1:0 align=2:1 + {16/[0:0] } AVD: name=yuyv422 chroma=1:0 flags=0x0 0: p=0 st=2 o=0 sh=0 d=8 1: p=0 st=4 o=1 sh=0 d=8 2: p=0 st=4 o=3 sh=0 d=8 yvyu422: [GENERIC] ctype=uint - Legacy desc: [ba][yuv][le][be] - planes=1, chroma=1:0 align=2:1 bits=24 cbits=8 - {2/16/[0:0] 0/0/[0:0] 0/0/[0:0] 0/0/[0:0] } + Basic desc: [ba][yuv][le][be] + planes=1, chroma=1:0 align=2:1 + {16/[0:0] } AVD: name=yvyu422 chroma=1:0 flags=0x0 0: p=0 st=2 o=0 sh=0 d=8 1: p=0 st=4 o=3 sh=0 d=8 diff --git a/test/repack.c b/test/repack.c index 4506233be1..00ff0cdc8b 100644 --- a/test/repack.c +++ b/test/repack.c @@ -283,8 +283,7 @@ static int try_repack(struct test_ctx *ctx, FILE *f, int imgfmt, int flags, for (int p = 0; p < srci->num_planes; p++) { uint8_t *ptr = mp_image_pixel_ptr(srci, p, sx, sy); for (int y = 0; y < e->h >> srci->fmt.ys[p]; y++) { - int w = e->w >> srci->fmt.xs[p]; - int wb = (w * srci->fmt.bpp[p] + 7) / 8; + int wb = mp_image_plane_bytes(srci, p, 0, e->w); const void *cptr = (uint8_t *)srcd[p] + wb * y; memcpy(ptr + srci->stride[p] * y, cptr, wb); } @@ -295,8 +294,7 @@ static int try_repack(struct test_ctx *ctx, FILE *f, int imgfmt, int flags, for (int p = 0; p < dsti->num_planes; p++) { uint8_t *ptr = mp_image_pixel_ptr(dsti, p, dx, dy); for (int y = 0; y < e->h >> dsti->fmt.ys[p]; y++) { - int w = e->w >> dsti->fmt.xs[p]; - int wb = (w * dsti->fmt.bpp[p] + 7) / 8; + int wb = mp_image_plane_bytes(dsti, p, 0, e->w); const void *cptr = (uint8_t *)dstd[p] + wb * y; assert_memcmp(ptr + dsti->stride[p] * y, cptr, wb); } diff --git a/test/scale_test.c b/test/scale_test.c index 912ecbcc22..ccd83c7658 100644 --- a/test/scale_test.c +++ b/test/scale_test.c @@ -77,13 +77,13 @@ static void assert_imgs_equal(struct scale_test *stest, FILE *f, assert(ref->h == new->h); assert(ref->fmt.flags & MP_IMGFLAG_BYTE_ALIGNED); - assert(ref->fmt.bytes[0]); + assert(ref->fmt.bpp[0]); for (int p = 0; p < ref->num_planes; p++) { for (int y = 0; y < ref->h; y++) { void *line_r = ref->planes[p] + ref->stride[p] * (ptrdiff_t)y; void *line_o = new->planes[p] + new->stride[p] * (ptrdiff_t)y; - size_t size = ref->fmt.bytes[p] * (size_t)new->w; + size_t size = mp_image_plane_bytes(ref, p, 0, new->w); bool ok = memcmp(line_r, line_o, size) == 0; if (!ok) { @@ -123,14 +123,18 @@ void repack_test_run(struct scale_test *stest) for (int a = 0; a < num_imgfmts; a++) { int mpfmt = imgfmts[a]; struct mp_imgfmt_desc fmtdesc = mp_imgfmt_get_desc(mpfmt); - if (!fmtdesc.id || !(fmtdesc.flags & MP_IMGFLAG_RGB) || - !fmtdesc.component_bits || (fmtdesc.component_bits % 8) || - fmtdesc.num_planes > 1) + struct mp_regular_imgfmt rdesc; + if (!mp_get_regular_imgfmt(&rdesc, mpfmt)) { + int ofmt = mp_find_other_endian(mpfmt); + if (!mp_get_regular_imgfmt(&rdesc, ofmt)) + continue; + } + if (rdesc.num_planes > 1 || rdesc.forced_csp != MP_CSP_RGB) continue; struct mp_image *test_img = NULL; bool alpha = fmtdesc.flags & MP_IMGFLAG_ALPHA; - bool hidepth = fmtdesc.component_bits > 8; + bool hidepth = rdesc.component_size > 1; if (alpha) { test_img = hidepth ? stest->img_repack_rgba16 : stest->img_repack_rgba8; } else { diff --git a/video/image_writer.c b/video/image_writer.c index 8c3cf98d19..fb297f9c0f 100644 --- a/video/image_writer.c +++ b/video/image_writer.c @@ -259,9 +259,17 @@ static int get_encoder_format(struct AVCodec *codec, int srcfmt, bool highdepth) int fmt = pixfmt2imgfmt(pix_fmts[n]); if (!fmt) continue; - // Ignore formats larger than 8 bit per pixel. - if (!highdepth && IMGFMT_RGB_DEPTH(fmt) > 32) - continue; + if (!highdepth) { + // Ignore formats larger than 8 bit per pixel. (Or which are unknown.) + struct mp_regular_imgfmt rdesc; + if (!mp_get_regular_imgfmt(&rdesc, fmt)) { + int ofmt = mp_find_other_endian(fmt); + if (!mp_get_regular_imgfmt(&rdesc, ofmt)) + continue; + } + if (rdesc.component_size > 1) + continue; + } current = current ? mp_imgfmt_select_best(current, fmt, srcfmt) : fmt; } return current; diff --git a/video/img_format.c b/video/img_format.c index 90cce39126..8a2cabbf01 100644 --- a/video/img_format.c +++ b/video/img_format.c @@ -75,10 +75,7 @@ static const struct mp_imgfmt_entry mp_imgfmt_list[] = { .num_planes = 1, .align_x = 1, .align_y = 1, - .bytes = {4}, .bpp = {32}, - .plane_bits = 30, - .component_bits = 10, }, .forced_csp = MP_CSP_RGB, .ctype = MP_COMPONENT_TYPE_UINT, @@ -213,14 +210,11 @@ static struct mp_imgfmt_desc to_legacy_desc(int fmt, struct mp_regular_imgfmt re .num_planes = reg.num_planes, .chroma_xs = reg.chroma_xs, .chroma_ys = reg.chroma_ys, - .component_bits = reg.component_size * 8 - abs(reg.component_pad), }; desc.align_x = 1 << reg.chroma_xs; desc.align_y = 1 << reg.chroma_ys; - desc.plane_bits = desc.component_bits; for (int p = 0; p < reg.num_planes; p++) { - desc.bytes[p] = reg.component_size; - desc.bpp[p] = desc.bytes[p] * 8; + desc.bpp[p] = reg.component_size * 8; desc.xs[p] = p == 1 || p == 2 ? desc.chroma_xs : 0; desc.ys[p] = p == 1 || p == 2 ? desc.chroma_ys : 0; for (int c = 0; c < reg.planes[p].num_components; c++) { @@ -258,6 +252,7 @@ struct mp_imgfmt_desc mp_imgfmt_get_desc(int mpfmt) int el_size = (pd->flags & AV_PIX_FMT_FLAG_BITSTREAM) ? 1 : 8; bool need_endian = false; // single component is spread over >1 bytes int shift = -1; // shift for all components, or -1 if not uniform + int comp_bits = 0; for (int c = 0; c < pd->nb_components; c++) { AVComponentDescriptor d = pd->comp[c]; // multiple components per plane -> Y is definitive, ignore chroma @@ -266,9 +261,9 @@ struct mp_imgfmt_desc mp_imgfmt_get_desc(int mpfmt) planedepth[d.plane] += d.depth; need_endian |= (d.depth + d.shift) > 8; if (c == 0) - desc.component_bits = d.depth; - if (d.depth != desc.component_bits) - desc.component_bits = 0; + comp_bits = d.depth; + if (d.depth != comp_bits) + comp_bits = 0; if (c == 0) shift = d.shift; if (shift != d.shift) @@ -280,8 +275,6 @@ struct mp_imgfmt_desc mp_imgfmt_get_desc(int mpfmt) desc.num_planes++; } - desc.plane_bits = planedepth[0]; - // Check whether any components overlap other components (per plane). // We're cheating/simplifying here: we assume that this happens if a shift // is set - which is wrong in general (could be needed for padding, instead @@ -292,7 +285,7 @@ struct mp_imgfmt_desc mp_imgfmt_get_desc(int mpfmt) for (int c = 0; c < pd->nb_components; c++) { AVComponentDescriptor d = pd->comp[c]; component_byte_overlap |= d.shift > 0 && planedepth[d.plane] > 8 && - desc.component_bits < 8; + comp_bits < 8; } // If every component sits in its own byte, or all components are within @@ -327,8 +320,6 @@ struct mp_imgfmt_desc mp_imgfmt_get_desc(int mpfmt) !(pd->flags & AV_PIX_FMT_FLAG_BITSTREAM)) { desc.flags |= MP_IMGFLAG_BYTE_ALIGNED; - for (int p = 0; p < desc.num_planes; p++) - desc.bytes[p] = desc.bpp[p] / 8; } if (pd->flags & AV_PIX_FMT_FLAG_PAL) @@ -360,8 +351,6 @@ struct mp_imgfmt_desc mp_imgfmt_get_desc(int mpfmt) desc.flags |= MP_IMGFLAG_YUV_NV; } - if (desc.flags & (MP_IMGFLAG_YUV_P | MP_IMGFLAG_RGB_P | MP_IMGFLAG_YUV_NV)) - desc.component_bits += shift; } for (int p = 0; p < desc.num_planes; p++) { @@ -375,11 +364,6 @@ struct mp_imgfmt_desc mp_imgfmt_get_desc(int mpfmt) if ((desc.bpp[0] % 8) != 0) desc.align_x = 8 / desc.bpp[0]; // expect power of 2 - if (desc.flags & MP_IMGFLAG_HWACCEL) { - desc.component_bits = 0; - desc.plane_bits = 0; - } - return desc; } @@ -623,21 +607,6 @@ int mp_find_regular_imgfmt(struct mp_regular_imgfmt *src) return 0; } -// Find a format that has the given flags set with the following configuration. -int mp_imgfmt_find(int xs, int ys, int planes, int component_bits, int flags) -{ - for (int n = IMGFMT_START + 1; n < IMGFMT_END; n++) { - struct mp_imgfmt_desc desc = mp_imgfmt_get_desc(n); - if (desc.id && ((desc.flags & flags) == flags)) { - if (desc.num_planes == planes && desc.chroma_xs == xs && - desc.chroma_ys == ys && desc.plane_bits == component_bits && - (desc.flags & MP_IMGFLAG_NE)) - return desc.id; - } - } - return 0; -} - // Compare the dst image formats, and return the one which can carry more data // (e.g. higher depth, more color components, lower chroma subsampling, etc.), // with respect to what is required to keep most of the src format. diff --git a/video/img_format.h b/video/img_format.h index f3d9750585..ea46dbec70 100644 --- a/video/img_format.h +++ b/video/img_format.h @@ -72,11 +72,12 @@ struct mp_imgfmt_desc { int8_t align_x, align_y; // pixel count to get byte alignment and to get // to a pixel pos where luma & chroma aligns // always power of 2 - int8_t bytes[MP_MAX_PLANES]; // bytes per pixel (MP_IMGFLAG_BYTE_ALIGNED) - int8_t bpp[MP_MAX_PLANES]; // bits per pixel - int8_t plane_bits; // number of bits in use for plane 0 - int8_t component_bits; // number of bits per component (0 if uneven) + int8_t bpp[MP_MAX_PLANES]; // bits per pixel (may be "average"; the real + // byte value is determined by align_x*bpp/8 + // for align_x pixels) // chroma shifts per plane (provided for convenience with planar formats) + // Packed YUV always uses xs[0]=ys[0]=0, because plane 0 contains luma in + // addition to chroma, and thus is not sub-sampled (uses align_x=2 instead). int8_t xs[MP_MAX_PLANES]; int8_t ys[MP_MAX_PLANES]; }; @@ -253,13 +254,6 @@ enum mp_imgfmt { IMGFMT_END, }; -static inline bool IMGFMT_IS_RGB(int fmt) -{ - struct mp_imgfmt_desc desc = mp_imgfmt_get_desc(fmt); - return (desc.flags & MP_IMGFLAG_RGB) && desc.num_planes == 1; -} - -#define IMGFMT_RGB_DEPTH(fmt) (mp_imgfmt_get_desc(fmt).plane_bits) #define IMGFMT_IS_HWACCEL(fmt) (!!(mp_imgfmt_get_desc(fmt).flags & MP_IMGFLAG_HWACCEL)) int mp_imgfmt_from_name(bstr name); @@ -270,8 +264,6 @@ char **mp_imgfmt_name_list(void); #define vo_format_name mp_imgfmt_to_name -int mp_imgfmt_find(int xs, int ys, int planes, int component_bits, int flags); - int mp_imgfmt_select_best(int dst1, int dst2, int src); int mp_imgfmt_select_best_list(int *dst, int num_dst, int src); diff --git a/video/mp_image.c b/video/mp_image.c index cc581013da..e5c6d957f7 100644 --- a/video/mp_image.c +++ b/video/mp_image.c @@ -47,6 +47,10 @@ static int mp_image_layout(int imgfmt, int w, int h, int stride_align, int out_plane_size[MP_MAX_PLANES]) { struct mp_imgfmt_desc desc = mp_imgfmt_get_desc(imgfmt); + + w = MP_ALIGN_UP(w, desc.align_x); + h = MP_ALIGN_UP(h, desc.align_y); + struct mp_image_params params = {.imgfmt = imgfmt, .w = w, .h = h}; if (!mp_image_params_valid(¶ms) || desc.flags & MP_IMGFLAG_HWACCEL) @@ -61,9 +65,6 @@ static int mp_image_layout(int imgfmt, int w, int h, int stride_align, int alloc_h = MP_ALIGN_UP(h, 32) >> desc.ys[n]; int line_bytes = (alloc_w * desc.bpp[n] + 7) / 8; out_stride[n] = MP_ALIGN_UP(line_bytes, stride_align); - // also align to a multiple of desc.bytes[n] - while (desc.bytes[n] && out_stride[n] % desc.bytes[n]) - out_stride[n] += stride_align; out_plane_size[n] = out_stride[n] * alloc_h; } if (desc.flags & MP_IMGFLAG_PAL) @@ -214,13 +215,15 @@ int mp_chroma_div_up(int size, int shift) // Return the storage width in pixels of the given plane. int mp_image_plane_w(struct mp_image *mpi, int plane) { - return mp_chroma_div_up(mpi->w, mpi->fmt.xs[plane]); + return mp_chroma_div_up(MP_ALIGN_UP(mpi->w, mpi->fmt.align_x), + mpi->fmt.xs[plane]); } // Return the storage height in pixels of the given plane. int mp_image_plane_h(struct mp_image *mpi, int plane) { - return mp_chroma_div_up(mpi->h, mpi->fmt.ys[plane]); + return mp_chroma_div_up(MP_ALIGN_UP(mpi->h, mpi->fmt.align_y), + mpi->fmt.ys[plane]); } // Caller has to make sure this doesn't exceed the allocated plane data/strides. @@ -572,7 +575,10 @@ void mp_image_clear(struct mp_image *img, int x0, int y0, int x1, int y1) } else if (area.fmt.flags & MP_IMGFLAG_YUV_NV) { plane_clear[1] = 0x8080; } else if (area.fmt.flags & MP_IMGFLAG_YUV_P) { - uint16_t chroma_clear = (1 << area.fmt.plane_bits) / 2; + struct mp_regular_imgfmt desc = {0}; + mp_get_regular_imgfmt(&desc, img->imgfmt); + int depth = desc.component_size * 8 + MPMIN(0, desc.component_pad); + uint16_t chroma_clear = (1 << depth) / 2; if (!(area.fmt.flags & MP_IMGFLAG_NE)) chroma_clear = av_bswap16(chroma_clear); if (area.num_planes > 2) @@ -582,7 +588,7 @@ void mp_image_clear(struct mp_image *img, int x0, int y0, int x1, int y1) for (int p = 0; p < area.num_planes; p++) { int bpp = area.fmt.bpp[p]; - int bytes = (mp_image_plane_w(&area, p) * bpp + 7) / 8; + int bytes = mp_image_plane_bytes(&area, p, 0, area.w); if (bpp <= 8 || bpp > 16) { memset_pic(area.planes[p], plane_clear[p], bytes, mp_image_plane_h(&area, p), area.stride[p]); @@ -1045,22 +1051,39 @@ void memset16_pic(void *dst, int fill, int unitsPerLine, int height, int stride) } } -// Pixel at the given luma position on the given plane, possibly rounded down. +// Pixel at the given luma position on the given plane. x/y always refer to +// non-subsampled coordinates (even if plane is chroma). +// The coordinates must be aligned to mp_imgfmt_desc.align_x/y (these are byte +// and chroma boundaries). +// You cannot access e.g. individual luma pixels on the luma plane with yuv420p. void *mp_image_pixel_ptr(struct mp_image *img, int plane, int x, int y) { - return img->planes[plane] + - img->stride[plane] * (ptrdiff_t)(y >> img->fmt.ys[plane]) + - (size_t)(x >> img->fmt.xs[plane]) * img->fmt.bpp[plane] / 8; + assert(MP_IS_ALIGNED(x, img->fmt.align_x)); + assert(MP_IS_ALIGNED(y, img->fmt.align_y)); + return mp_image_pixel_ptr_ny(img, plane, x, y); } -// Number of bytes for w pixels, using luma pixels, possibly rounded up. -// x0 is the start pixel; matters if the start pixel is rounded down. -// (E.g. 8 bpp, x0=7, w=7 => pixels 0..15 => 2 bytes) +// Like mp_image_pixel_ptr(), but do not require alignment on Y coordinates if +// the plane does not require it. Use with care. +// Useful for addressing luma rows. +void *mp_image_pixel_ptr_ny(struct mp_image *img, int plane, int x, int y) +{ + assert(MP_IS_ALIGNED(x, img->fmt.align_x)); + assert(MP_IS_ALIGNED(y, 1 << img->fmt.ys[plane])); + return img->planes[plane] + + img->stride[plane] * (ptrdiff_t)(y >> img->fmt.ys[plane]) + + (x >> img->fmt.xs[plane]) * (size_t)img->fmt.bpp[plane] / 8; +} + +// Return size of pixels [x0, x0+w-1] in bytes. The coordinates refer to non- +// subsampled pixels (basically plane 0), and the size is rounded to chroma +// and byte alignment boundaries for the entire image, even if plane!=0. +// x0!=0 is useful for rounding (e.g. 8 bpp, x0=7, w=7 => 0..15 => 2 bytes). size_t mp_image_plane_bytes(struct mp_image *img, int plane, int x0, int w) { - int bpp = img->fmt.bpp[plane]; + int x1 = MP_ALIGN_UP(x0 + w, img->fmt.align_x); + x0 = MP_ALIGN_DOWN(x0, img->fmt.align_x); + size_t bpp = img->fmt.bpp[plane]; int xs = img->fmt.xs[plane]; - size_t b_x0 = (x0 >> xs) * bpp / 8; - size_t b_x1 = (((x0 + w + (1 << xs) - 1) >> xs) * bpp + 7) / 8; - return b_x1 - b_x0; + return (x1 >> xs) * bpp / 8 - (x0 >> xs) * bpp / 8; } diff --git a/video/mp_image.h b/video/mp_image.h index f111d35129..5b7eada496 100644 --- a/video/mp_image.h +++ b/video/mp_image.h @@ -186,6 +186,7 @@ void memset_pic(void *dst, int fill, int bytesPerLine, int height, int stride); void memset16_pic(void *dst, int fill, int unitsPerLine, int height, int stride); void *mp_image_pixel_ptr(struct mp_image *img, int plane, int x, int y); +void *mp_image_pixel_ptr_ny(struct mp_image *img, int plane, int x, int y); size_t mp_image_plane_bytes(struct mp_image *img, int plane, int x0, int w); #endif /* MPLAYER_MP_IMAGE_H */ diff --git a/video/repack.c b/video/repack.c index db9bc31ac7..f5d8739fc4 100644 --- a/video/repack.c +++ b/video/repack.c @@ -132,8 +132,8 @@ static void copy_plane(struct mp_image *dst, int dst_x, int dst_y, assert(dst->fmt.bpp[p] == src->fmt.bpp[p]); for (int y = 0; y < h; y++) { - void *pd = mp_image_pixel_ptr(dst, p, dst_x, dst_y + y); - void *ps = mp_image_pixel_ptr(src, p, src_x, src_y + y); + void *pd = mp_image_pixel_ptr_ny(dst, p, dst_x, dst_y + y); + void *ps = mp_image_pixel_ptr_ny(src, p, src_x, src_y + y); memcpy(pd, ps, size); } } @@ -147,17 +147,17 @@ static void swap_endian(struct mp_image *dst, int dst_x, int dst_y, for (int p = 0; p < dst->fmt.num_planes; p++) { int xs = dst->fmt.xs[p]; - int bpp = dst->fmt.bytes[p]; + int bpp = dst->fmt.bpp[p] / 8; int words_per_pixel = bpp / endian_size; int num_words = ((w + (1 << xs) - 1) >> xs) * words_per_pixel; // Number of lines on this plane. int h = (1 << dst->fmt.chroma_ys) - (1 << dst->fmt.ys[p]) + 1; - assert(src->fmt.bytes[p] == bpp); + assert(src->fmt.bpp[p] == bpp * 8); for (int y = 0; y < h; y++) { - void *s = mp_image_pixel_ptr(src, p, src_x, src_y + y); - void *d = mp_image_pixel_ptr(dst, p, dst_x, dst_y + y); + void *s = mp_image_pixel_ptr_ny(src, p, src_x, src_y + y); + void *d = mp_image_pixel_ptr_ny(dst, p, dst_x, dst_y + y); switch (endian_size) { case 2: for (int x = 0; x < num_words; x++) @@ -851,8 +851,8 @@ static void repack_float(struct mp_repack *rp, for (int p = 0; p < b->num_planes; p++) { int h = (1 << b->fmt.chroma_ys) - (1 << b->fmt.ys[p]) + 1; for (int y = 0; y < h; y++) { - void *pa = mp_image_pixel_ptr(a, p, a_x, a_y + y); - void *pb = mp_image_pixel_ptr(b, p, b_x, b_y + y); + void *pa = mp_image_pixel_ptr_ny(a, p, a_x, a_y + y); + void *pb = mp_image_pixel_ptr_ny(b, p, b_x, b_y + y); packer(pa, pb, w >> b->fmt.xs[p], rp->f32_m[p], rp->f32_o[p], rp->f32_pmax[p]); diff --git a/video/sws_utils.c b/video/sws_utils.c index faa61670b1..800e4f34b3 100644 --- a/video/sws_utils.c +++ b/video/sws_utils.c @@ -400,7 +400,7 @@ struct mp_image *mp_img_swap_to_native(struct mp_image *img) } if (to == AV_PIX_FMT_NONE || !mp_image_make_writeable(img)) return img; - int elems = img->fmt.bytes[0] / 2 * img->w; + int elems = img->fmt.bpp[0] / 8 / 2 * img->w; for (int y = 0; y < img->h; y++) { uint16_t *p = (uint16_t *)(img->planes[0] + y * img->stride[0]); for (int i = 0; i < elems; i++)