From 2e127903246f5b41557cfe6df9e96d0394a53df2 Mon Sep 17 00:00:00 2001 From: mplayer-svn Date: Thu, 5 Jan 2012 20:32:10 +0000 Subject: libmpcodecs: add support for 422P9 For some reason only 9-bit 422 wasn't added before. git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@34524 b3059339-0415-0410-9bf9-f77b7e298cf2 Author: reimar --- codec-cfg.c | 1 + fmt-conversion.c | 2 ++ libmpcodecs/img_format.c | 2 ++ libmpcodecs/img_format.h | 4 ++++ libmpcodecs/mp_image.c | 2 ++ libmpcodecs/vf_scale.c | 2 ++ m_option.c | 2 ++ 7 files changed, 15 insertions(+) diff --git a/codec-cfg.c b/codec-cfg.c index 83d9f9e606..305cc8e788 100644 --- a/codec-cfg.c +++ b/codec-cfg.c @@ -166,6 +166,7 @@ static const struct { {"444P9", IMGFMT_444P9}, {"422P16", IMGFMT_422P16}, {"422P10", IMGFMT_422P10}, + {"422P9", IMGFMT_422P9}, {"420P16", IMGFMT_420P16}, {"420P10", IMGFMT_420P10}, {"420P9", IMGFMT_420P9}, diff --git a/fmt-conversion.c b/fmt-conversion.c index a35d99174f..a02df4ed7d 100644 --- a/fmt-conversion.c +++ b/fmt-conversion.c @@ -88,6 +88,8 @@ static const struct { {IMGFMT_444P10_LE, PIX_FMT_YUV444P10LE}, {IMGFMT_422P16_LE, PIX_FMT_YUV422P16LE}, {IMGFMT_422P16_BE, PIX_FMT_YUV422P16BE}, + {IMGFMT_422P9_LE, PIX_FMT_YUV422P9LE}, + {IMGFMT_422P9_BE, PIX_FMT_YUV422P9BE}, {IMGFMT_444P16_LE, PIX_FMT_YUV444P16LE}, {IMGFMT_444P16_BE, PIX_FMT_YUV444P16BE}, diff --git a/libmpcodecs/img_format.c b/libmpcodecs/img_format.c index 033c0a4e3e..0c99d3176d 100644 --- a/libmpcodecs/img_format.c +++ b/libmpcodecs/img_format.c @@ -69,6 +69,8 @@ const char *vo_format_name(int format) case IMGFMT_422P16_BE: return "Planar 422P 16-bit big-endian"; case IMGFMT_422P10_LE: return "Planar 422P 10-bit little-endian"; case IMGFMT_422P10_BE: return "Planar 422P 10-bit big-endian"; + case IMGFMT_422P9_LE: return "Planar 422P 9-bit little-endian"; + case IMGFMT_422P9_BE: return "Planar 422P 9-bit big-endian"; case IMGFMT_444P16_LE: return "Planar 444P 16-bit little-endian"; case IMGFMT_444P16_BE: return "Planar 444P 16-bit big-endian"; case IMGFMT_444P10_LE: return "Planar 444P 10-bit little-endian"; diff --git a/libmpcodecs/img_format.h b/libmpcodecs/img_format.h index c3bb2b9810..579f2fcf45 100644 --- a/libmpcodecs/img_format.h +++ b/libmpcodecs/img_format.h @@ -134,6 +134,8 @@ #define IMGFMT_422P16_BE 0x34323251 #define IMGFMT_422P10_LE 0x52323234 #define IMGFMT_422P10_BE 0x34323252 +#define IMGFMT_422P9_LE 0x53323234 +#define IMGFMT_422P9_BE 0x34323253 #define IMGFMT_420P16_LE 0x51303234 #define IMGFMT_420P16_BE 0x34323051 #define IMGFMT_420P10_LE 0x52303234 @@ -146,6 +148,7 @@ #define IMGFMT_444P9 IMGFMT_444P9_BE #define IMGFMT_422P16 IMGFMT_422P16_BE #define IMGFMT_422P10 IMGFMT_422P10_BE +#define IMGFMT_422P9 IMGFMT_422P9_BE #define IMGFMT_420P16 IMGFMT_420P16_BE #define IMGFMT_420P10 IMGFMT_420P10_BE #define IMGFMT_420P9 IMGFMT_420P9_BE @@ -156,6 +159,7 @@ #define IMGFMT_444P9 IMGFMT_444P9_LE #define IMGFMT_422P16 IMGFMT_422P16_LE #define IMGFMT_422P10 IMGFMT_422P10_LE +#define IMGFMT_422P9 IMGFMT_422P9_LE #define IMGFMT_420P16 IMGFMT_420P16_LE #define IMGFMT_420P10 IMGFMT_420P10_LE #define IMGFMT_420P9 IMGFMT_420P9_LE diff --git a/libmpcodecs/mp_image.c b/libmpcodecs/mp_image.c index b1cd9c81f8..006b0bf4f3 100644 --- a/libmpcodecs/mp_image.c +++ b/libmpcodecs/mp_image.c @@ -156,6 +156,8 @@ void mp_image_setfmt(mp_image_t* mpi,unsigned int out_fmt){ case IMGFMT_422P16_BE: case IMGFMT_422P10_LE: case IMGFMT_422P10_BE: + case IMGFMT_422P9_LE: + case IMGFMT_422P9_BE: case IMGFMT_420P16_LE: case IMGFMT_420P16_BE: case IMGFMT_420P10_LE: diff --git a/libmpcodecs/vf_scale.c b/libmpcodecs/vf_scale.c index d03852e053..19bfeec4d2 100644 --- a/libmpcodecs/vf_scale.c +++ b/libmpcodecs/vf_scale.c @@ -84,6 +84,8 @@ static const unsigned int outfmt_list[]={ IMGFMT_422P16_BE, IMGFMT_422P10_LE, IMGFMT_422P10_BE, + IMGFMT_422P9_LE, + IMGFMT_422P9_BE, IMGFMT_YV12, IMGFMT_I420, IMGFMT_420P16_LE, diff --git a/m_option.c b/m_option.c index 9df177467f..8ef4267a9f 100644 --- a/m_option.c +++ b/m_option.c @@ -937,6 +937,8 @@ static struct { {"422p16be", IMGFMT_422P16_BE}, {"422p10le", IMGFMT_422P10_LE}, {"422p10be", IMGFMT_422P10_BE}, + {"422p9le", IMGFMT_422P9_LE}, + {"422p9be", IMGFMT_422P9_BE}, {"420p16le", IMGFMT_420P16_LE}, {"420p16be", IMGFMT_420P16_BE}, {"420p10le", IMGFMT_420P10_LE}, -- cgit v1.2.3