diff options
author | wm4 <wm4@nowhere> | 2013-07-18 13:49:28 +0200 |
---|---|---|
committer | wm4 <wm4@nowhere> | 2013-07-18 13:49:28 +0200 |
commit | fcdb681822891dbd0f78b6f3dcfc7786de65c695 (patch) | |
tree | e9089cf02841b59acbb6cef1a85d4761dae34997 /video | |
parent | b606a6ce1a94017ee6519d884661ef828878226a (diff) | |
download | mpv-fcdb681822891dbd0f78b6f3dcfc7786de65c695.tar.bz2 mpv-fcdb681822891dbd0f78b6f3dcfc7786de65c695.tar.xz |
img_format: add a mask for color class
Using the term "color class" to avoid confusion with the other
colorspace related concepts.
Also get rid of MP_IMGFLAG_FMT_MASK, since it was unused.
Diffstat (limited to 'video')
-rw-r--r-- | video/img_format.h | 4 | ||||
-rw-r--r-- | video/mp_image.c | 3 | ||||
-rw-r--r-- | video/mp_image.h | 2 |
3 files changed, 5 insertions, 4 deletions
diff --git a/video/img_format.h b/video/img_format.h index 0cc48d937f..3631872ff0 100644 --- a/video/img_format.h +++ b/video/img_format.h @@ -57,7 +57,9 @@ // set if in native (host) endian, or endian independent #define MP_IMGFLAG_NE MP_SELECT_LE_BE(MP_IMGFLAG_LE, MP_IMGFLAG_BE) -#define MP_IMGFLAG_FMT_MASK 0x3FFF +// Exactly one of these bits is set in mp_imgfmt_desc.flags +#define MP_IMGFLAG_COLOR_CLASS_MASK \ + (MP_IMGFLAG_YUV | MP_IMGFLAG_RGB | MP_IMGFLAG_XYZ) struct mp_imgfmt_desc { int id; // IMGFMT_* diff --git a/video/mp_image.c b/video/mp_image.c index 4b34944ec9..c22f3b4246 100644 --- a/video/mp_image.c +++ b/video/mp_image.c @@ -127,10 +127,9 @@ static void mp_image_alloc_planes(struct mp_image *mpi) void mp_image_setfmt(struct mp_image *mpi, unsigned int out_fmt) { - mpi->flags &= ~MP_IMGFLAG_FMT_MASK; struct mp_imgfmt_desc fmt = mp_imgfmt_get_desc(out_fmt); mpi->fmt = fmt; - mpi->flags |= fmt.flags; + mpi->flags = fmt.flags; mpi->imgfmt = fmt.id; mpi->chroma_x_shift = fmt.chroma_xs; mpi->chroma_y_shift = fmt.chroma_ys; diff --git a/video/mp_image.h b/video/mp_image.h index 141483eedd..85595c5705 100644 --- a/video/mp_image.h +++ b/video/mp_image.h @@ -63,7 +63,7 @@ struct mp_image_params { * image data. mp_image_make_writeable() will do that copy if required. */ typedef struct mp_image { - unsigned int flags; + unsigned int flags; // same as fmt.flags struct mp_imgfmt_desc fmt; // fields redundant to fmt, for convenience or compatibility |