test: add list of zimg/sws conversions

Generic statement about how this is not really appropriate, etc., and
only useful for temporary debugging things, and how I commit it anyway
despite violating my own principles (and how I'd reject this change if
it came from you).
This commit is contained in:
wm4 2020-04-13 15:57:05 +02:00
parent f6c81047fa
commit 56cac2be46
2 changed files with 217 additions and 0 deletions

198
test/ref/zimg_formats.txt Normal file
View File

@ -0,0 +1,198 @@
0bgr Zin Zout SWSin SWSout |
0rgb Zin Zout SWSin SWSout |
abgr Zin Zout SWSin SWSout |
argb Zin Zout SWSin SWSout |
ayuv64 Zin Zout SWSin SWSout |
ayuv64be Zin Zout |
bayer_bggr16 SWSin |
bayer_bggr16be SWSin |
bayer_bggr8 SWSin |
bayer_gbrg16 SWSin |
bayer_gbrg16be SWSin |
bayer_gbrg8 SWSin |
bayer_grbg16 SWSin |
bayer_grbg16be SWSin |
bayer_grbg8 SWSin |
bayer_rggb16 SWSin |
bayer_rggb16be SWSin |
bayer_rggb8 SWSin |
bgr0 Zin Zout SWSin SWSout |
bgr24 Zin Zout SWSin SWSout |
bgr4 SWSout |
bgr444 Zin Zout SWSin SWSout |
bgr444be Zin Zout SWSin SWSout |
bgr48 Zin Zout SWSin SWSout |
bgr48be Zin Zout SWSin SWSout |
bgr4_byte Zin Zout SWSin SWSout |
bgr555 Zin Zout SWSin SWSout |
bgr555be Zin Zout SWSin SWSout |
bgr565 Zin Zout SWSin SWSout |
bgr565be Zin Zout SWSin SWSout |
bgr8 Zin Zout SWSin SWSout |
bgra Zin Zout SWSin SWSout |
bgra64 Zin Zout SWSin SWSout |
bgra64be Zin Zout SWSin SWSout |
cuda |
d3d11 |
d3d11va_vld |
drm_prime |
dxva2_vld |
gbrap Zin Zout SWSin SWSout |
gbrap10 Zin Zout SWSin SWSout |
gbrap10be Zin Zout SWSin SWSout |
gbrap12 Zin Zout SWSin SWSout |
gbrap12be Zin Zout SWSin SWSout |
gbrap16 Zin Zout SWSin SWSout |
gbrap16be Zin Zout SWSin SWSout |
gbrapf32 Zin Zout |
gbrapf32be Zin Zout |
gbrp Zin Zout SWSin SWSout |
gbrp10 Zin Zout SWSin SWSout |
gbrp10be Zin Zout SWSin SWSout |
gbrp12 Zin Zout SWSin SWSout |
gbrp12be Zin Zout SWSin SWSout |
gbrp14 Zin Zout SWSin SWSout |
gbrp14be Zin Zout SWSin SWSout |
gbrp16 Zin Zout SWSin SWSout |
gbrp16be Zin Zout SWSin SWSout |
gbrp9 Zin Zout SWSin SWSout |
gbrp9be Zin Zout SWSin SWSout |
gbrpf32 Zin Zout |
gbrpf32be Zin Zout |
gray Zin Zout SWSin SWSout |
gray10 Zin Zout SWSin SWSout |
gray10be Zin Zout SWSin SWSout |
gray12 Zin Zout SWSin SWSout |
gray12be Zin Zout SWSin SWSout |
gray14 Zin Zout SWSin SWSout |
gray14be Zin Zout SWSin SWSout |
gray16 Zin Zout SWSin SWSout |
gray16be Zin Zout SWSin SWSout |
gray9 Zin Zout SWSin SWSout |
gray9be Zin Zout SWSin SWSout |
grayf32 Zin Zout SWSin SWSout |
grayf32be Zin Zout SWSin SWSout |
mediacodec |
mmal |
monob SWSin SWSout |
monow SWSin SWSout |
nv12 Zin Zout SWSin SWSout |
nv16 Zin Zout |
nv20 Zin Zout |
nv20be Zin Zout |
nv21 Zin Zout SWSin SWSout |
nv24 Zin Zout SWSin SWSout |
nv42 Zin Zout SWSin SWSout |
opencl |
p010 Zin Zout SWSin SWSout |
p010be Zin Zout SWSin SWSout |
p016 Zin Zout SWSin SWSout |
p016be Zin Zout SWSin SWSout |
pal8 Zin SWSin |
qsv |
rgb0 Zin Zout SWSin SWSout |
rgb24 Zin Zout SWSin SWSout |
rgb30 Zin Zout |
rgb4 SWSout |
rgb444 Zin Zout SWSin SWSout |
rgb444be Zin Zout SWSin SWSout |
rgb48 Zin Zout SWSin SWSout |
rgb48be Zin Zout SWSin SWSout |
rgb4_byte Zin Zout SWSin SWSout |
rgb555 Zin Zout SWSin SWSout |
rgb555be Zin Zout SWSin SWSout |
rgb565 Zin Zout SWSin SWSout |
rgb565be Zin Zout SWSin SWSout |
rgb8 Zin Zout SWSin SWSout |
rgba Zin Zout SWSin SWSout |
rgba64 Zin Zout SWSin SWSout |
rgba64be Zin Zout SWSin SWSout |
uyvy422 SWSin SWSout |
uyyvyy411 |
vaapi |
vaapi_idct |
vaapi_moco |
vdpau |
vdpau_output |
videotoolbox |
vulkan |
xvmc |
xyz12 Zin Zout SWSin SWSout |
xyz12be Zin Zout SWSin SWSout |
y210 SWSin |
y210be |
ya16 Zin Zout SWSin SWSout |
ya16be Zin Zout SWSin SWSout |
ya8 Zin Zout SWSin SWSout |
yap16 Zin Zout |
yap8 Zin Zout |
yuv410p Zin Zout SWSin SWSout |
yuv411p Zin Zout SWSin SWSout |
yuv420p Zin Zout SWSin SWSout |
yuv420p10 Zin Zout SWSin SWSout |
yuv420p10be Zin Zout SWSin SWSout |
yuv420p12 Zin Zout SWSin SWSout |
yuv420p12be Zin Zout SWSin SWSout |
yuv420p14 Zin Zout SWSin SWSout |
yuv420p14be Zin Zout SWSin SWSout |
yuv420p16 Zin Zout SWSin SWSout |
yuv420p16be Zin Zout SWSin SWSout |
yuv420p9 Zin Zout SWSin SWSout |
yuv420p9be Zin Zout SWSin SWSout |
yuv422p Zin Zout SWSin SWSout |
yuv422p10 Zin Zout SWSin SWSout |
yuv422p10be Zin Zout SWSin SWSout |
yuv422p12 Zin Zout SWSin SWSout |
yuv422p12be Zin Zout SWSin SWSout |
yuv422p14 Zin Zout SWSin SWSout |
yuv422p14be Zin Zout SWSin SWSout |
yuv422p16 Zin Zout SWSin SWSout |
yuv422p16be Zin Zout SWSin SWSout |
yuv422p9 Zin Zout SWSin SWSout |
yuv422p9be Zin Zout SWSin SWSout |
yuv440p Zin Zout SWSin SWSout |
yuv440p10 Zin Zout SWSin SWSout |
yuv440p10be Zin Zout SWSin SWSout |
yuv440p12 Zin Zout SWSin SWSout |
yuv440p12be Zin Zout SWSin SWSout |
yuv444p Zin Zout SWSin SWSout |
yuv444p10 Zin Zout SWSin SWSout |
yuv444p10be Zin Zout SWSin SWSout |
yuv444p12 Zin Zout SWSin SWSout |
yuv444p12be Zin Zout SWSin SWSout |
yuv444p14 Zin Zout SWSin SWSout |
yuv444p14be Zin Zout SWSin SWSout |
yuv444p16 Zin Zout SWSin SWSout |
yuv444p16be Zin Zout SWSin SWSout |
yuv444p9 Zin Zout SWSin SWSout |
yuv444p9be Zin Zout SWSin SWSout |
yuva420p Zin Zout SWSin SWSout |
yuva420p10 Zin Zout SWSin SWSout |
yuva420p10be Zin Zout SWSin SWSout |
yuva420p16 Zin Zout SWSin SWSout |
yuva420p16be Zin Zout SWSin SWSout |
yuva420p9 Zin Zout SWSin SWSout |
yuva420p9be Zin Zout SWSin SWSout |
yuva422p Zin Zout SWSin SWSout |
yuva422p10 Zin Zout SWSin SWSout |
yuva422p10be Zin Zout SWSin SWSout |
yuva422p12 Zin Zout SWSin SWSout |
yuva422p12be Zin Zout SWSin SWSout |
yuva422p16 Zin Zout SWSin SWSout |
yuva422p16be Zin Zout SWSin SWSout |
yuva422p9 Zin Zout SWSin SWSout |
yuva422p9be Zin Zout SWSin SWSout |
yuva444p Zin Zout SWSin SWSout |
yuva444p10 Zin Zout SWSin SWSout |
yuva444p10be Zin Zout SWSin SWSout |
yuva444p12 Zin Zout SWSin SWSout |
yuva444p12be Zin Zout SWSin SWSout |
yuva444p16 Zin Zout SWSin SWSout |
yuva444p16be Zin Zout SWSin SWSout |
yuva444p9 Zin Zout SWSin SWSout |
yuva444p9be Zin Zout SWSin SWSout |
yuvj411p Zin Zout SWSin SWSout |
yuvj422p Zin Zout SWSin SWSout |
yuvj440p Zin Zout SWSin SWSout |
yuyv422 SWSin SWSout |
yvyu422 SWSin SWSout |

View File

@ -1,4 +1,7 @@
#include <libswscale/swscale.h>
#include "scale_test.h" #include "scale_test.h"
#include "video/fmt-conversion.h"
#include "video/zimg.h" #include "video/zimg.h"
static bool scale(void *pctx, struct mp_image *dst, struct mp_image *src) static bool scale(void *pctx, struct mp_image *dst, struct mp_image *src)
@ -32,6 +35,22 @@ static void run(struct test_ctx *ctx)
talloc_free(stest); talloc_free(stest);
talloc_free(zimg); talloc_free(zimg);
FILE *f = test_open_out(ctx, "zimg_formats.txt");
init_imgfmts_list();
for (int n = 0; n < num_imgfmts; n++) {
int imgfmt = imgfmts[n];
fprintf(f, "%15s%7s%7s%7s%8s |\n", mp_imgfmt_to_name(imgfmt),
mp_zimg_supports_in_format(imgfmt) ? " Zin" : "",
mp_zimg_supports_out_format(imgfmt) ? " Zout" : "",
sws_isSupportedInput(imgfmt2pixfmt(imgfmt)) ? " SWSin" : "",
sws_isSupportedOutput(imgfmt2pixfmt(imgfmt)) ? " SWSout" : "");
}
fclose(f);
assert_text_files_equal(stest->ctx, "zimg_formats.txt", "zimg_formats.txt",
"This can fail if FFmpeg/libswscale adds or removes pixfmts.");
} }
const struct unittest test_repack_zimg = { const struct unittest test_repack_zimg = {