diff options
author | Uoti Urpala <uau@mplayer2.org> | 2011-06-26 01:22:53 +0300 |
---|---|---|
committer | Uoti Urpala <uau@mplayer2.org> | 2011-06-26 06:27:50 +0300 |
commit | aba8a1838aa882dace748a7402caf3087dc1f25f (patch) | |
tree | acec9c61029e0aec6fdfb76763cc83db9968daee /libmpcodecs/img_format.h | |
parent | 949626ee4608792ae7a4b2fe0a97cb593a9c3132 (diff) | |
download | mpv-aba8a1838aa882dace748a7402caf3087dc1f25f.tar.bz2 mpv-aba8a1838aa882dace748a7402caf3087dc1f25f.tar.xz |
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 <arneb.mp@ccan.de>.
Diffstat (limited to 'libmpcodecs/img_format.h')
-rw-r--r-- | libmpcodecs/img_format.h | 24 |
1 files changed, 22 insertions, 2 deletions
diff --git a/libmpcodecs/img_format.h b/libmpcodecs/img_format.h index c95ed4df3c..52a5ffbe25 100644 --- a/libmpcodecs/img_format.h +++ b/libmpcodecs/img_format.h @@ -123,22 +123,42 @@ #define IMGFMT_444P16_LE 0x51343434 #define IMGFMT_444P16_BE 0x34343451 +#define IMGFMT_444P10_LE 0x52343434 +#define IMGFMT_444P10_BE 0x34343452 +#define IMGFMT_444P9_LE 0x53343434 +#define IMGFMT_444P9_BE 0x34343453 #define IMGFMT_422P16_LE 0x51323234 #define IMGFMT_422P16_BE 0x34323251 +#define IMGFMT_422P10_LE 0x52323234 +#define IMGFMT_422P10_BE 0x34323252 #define IMGFMT_420P16_LE 0x51303234 #define IMGFMT_420P16_BE 0x34323051 +#define IMGFMT_420P10_LE 0x52303234 +#define IMGFMT_420P10_BE 0x34323052 +#define IMGFMT_420P9_LE 0x53303234 +#define IMGFMT_420P9_BE 0x34323053 #if HAVE_BIGENDIAN #define IMGFMT_444P16 IMGFMT_444P16_BE +#define IMGFMT_444P10 IMGFMT_444P10_BE +#define IMGFMT_444P9 IMGFMT_444P9_BE #define IMGFMT_422P16 IMGFMT_422P16_BE +#define IMGFMT_422P10 IMGFMT_422P10_BE #define IMGFMT_420P16 IMGFMT_420P16_BE +#define IMGFMT_420P10 IMGFMT_420P10_BE +#define IMGFMT_420P9 IMGFMT_420P9_BE #else #define IMGFMT_444P16 IMGFMT_444P16_LE +#define IMGFMT_444P10 IMGFMT_444P10_LE +#define IMGFMT_444P9 IMGFMT_444P9_LE #define IMGFMT_422P16 IMGFMT_422P16_LE +#define IMGFMT_422P10 IMGFMT_422P10_LE #define IMGFMT_420P16 IMGFMT_420P16_LE +#define IMGFMT_420P10 IMGFMT_420P10_LE +#define IMGFMT_420P9 IMGFMT_420P9_LE #endif -#define IMGFMT_IS_YUVP16_LE(fmt) (((fmt ^ IMGFMT_420P16_LE) & 0xff0000ff) == 0) -#define IMGFMT_IS_YUVP16_BE(fmt) (((fmt ^ IMGFMT_420P16_BE) & 0xff0000ff) == 0) +#define IMGFMT_IS_YUVP16_LE(fmt) (((fmt - 0x51000034) & 0xfc0000ff) == 0) +#define IMGFMT_IS_YUVP16_BE(fmt) (((fmt - 0x34000051) & 0xff0000fc) == 0) #define IMGFMT_IS_YUVP16_NE(fmt) (((fmt ^ IMGFMT_420P16 ) & 0xff0000ff) == 0) #define IMGFMT_IS_YUVP16(fmt) (IMGFMT_IS_YUVP16_LE(fmt) || IMGFMT_IS_YUVP16_BE(fmt)) |