From 949626ee4608792ae7a4b2fe0a97cb593a9c3132 Mon Sep 17 00:00:00 2001 From: Uoti Urpala Date: Sun, 26 Jun 2011 01:04:53 +0300 Subject: fmt-conversion.c: print name of any unrecognized pixfmt Change the error message about unrecognized pixfmt values to include the symbolic name of the pixfmt (available from libavutil). --- fmt-conversion.c | 13 ++++++++++--- 1 file changed, 10 insertions(+), 3 deletions(-) (limited to 'fmt-conversion.c') diff --git a/fmt-conversion.c b/fmt-conversion.c index 9e881009e4..e17ba05eaf 100644 --- a/fmt-conversion.c +++ b/fmt-conversion.c @@ -18,6 +18,7 @@ #include "mp_msg.h" #include "libavutil/avutil.h" +#include #include "libmpcodecs/img_format.h" #include "fmt-conversion.h" @@ -114,12 +115,18 @@ enum PixelFormat imgfmt2pixfmt(int fmt) int pixfmt2imgfmt(enum PixelFormat pix_fmt) { int i; - int fmt; for (i = 0; conversion_map[i].pix_fmt != PIX_FMT_NONE; i++) if (conversion_map[i].pix_fmt == pix_fmt) break; - fmt = conversion_map[i].fmt; - if (!fmt) + int fmt = conversion_map[i].fmt; + if (!fmt) { +#if LIBAVUTIL_VERSION_INT >= AV_VERSION_INT(51, 2, 0) + const char *fmtname = av_get_pix_fmt_name(pix_fmt); + mp_msg(MSGT_GLOBAL, MSGL_ERR, "Unsupported PixelFormat %s (%d)\n", + fmtname ? fmtname : "INVALID", pix_fmt); +#else mp_msg(MSGT_GLOBAL, MSGL_ERR, "Unsupported PixelFormat %i\n", pix_fmt); +#endif + } return fmt; } -- cgit v1.2.3 From aba8a1838aa882dace748a7402caf3087dc1f25f Mon Sep 17 00:00:00 2001 From: Uoti Urpala Date: Sun, 26 Jun 2011 01:22:53 +0300 Subject: video/colorspaces: add new 9/10-bit formats from libavcodec Add new internal 9/10-bit IMGFMT values and mappings to the corresponding libav* PIX_FMT_* values. Partially based on a patch from Arne Bochem . --- fmt-conversion.c | 14 ++++++++++++++ 1 file changed, 14 insertions(+) (limited to 'fmt-conversion.c') diff --git a/fmt-conversion.c b/fmt-conversion.c index e17ba05eaf..2adc115a4e 100644 --- a/fmt-conversion.c +++ b/fmt-conversion.c @@ -75,6 +75,20 @@ static const struct { {IMGFMT_420P16_LE, PIX_FMT_YUV420P16LE}, {IMGFMT_420P16_BE, PIX_FMT_YUV420P16BE}, +#if LIBAVUTIL_VERSION_INT >= AV_VERSION_INT(51, 2, 0) + {IMGFMT_420P9_LE, PIX_FMT_YUV420P9LE}, + {IMGFMT_420P9_BE, PIX_FMT_YUV420P9BE}, + {IMGFMT_420P10_LE, PIX_FMT_YUV420P10LE}, + {IMGFMT_420P10_BE, PIX_FMT_YUV420P10BE}, + {IMGFMT_422P10_LE, PIX_FMT_YUV422P10LE}, + {IMGFMT_422P10_BE, PIX_FMT_YUV422P10BE}, +#endif +#if LIBAVUTIL_VERSION_INT >= AV_VERSION_INT(51, 7, 0) + {IMGFMT_444P9_BE , PIX_FMT_YUV444P9BE}, + {IMGFMT_444P9_LE , PIX_FMT_YUV444P9LE}, + {IMGFMT_444P10_BE, PIX_FMT_YUV444P10BE}, + {IMGFMT_444P10_LE, PIX_FMT_YUV444P10LE}, +#endif {IMGFMT_422P16_LE, PIX_FMT_YUV422P16LE}, {IMGFMT_422P16_BE, PIX_FMT_YUV422P16BE}, {IMGFMT_444P16_LE, PIX_FMT_YUV444P16LE}, -- cgit v1.2.3