From 933805daa16cfbc74610a2221b537c4ddb15d33e Mon Sep 17 00:00:00 2001 From: wm4 Date: Sun, 21 Oct 2012 01:10:32 +0200 Subject: mp_image: add IMGFMT_BGR0/PIX_FMT_BGR0 Needed by ffv1. --- fmt-conversion.c | 2 ++ libmpcodecs/img_format.c | 1 + libmpcodecs/img_format.h | 2 ++ libmpcodecs/mp_image.c | 5 +++++ 4 files changed, 10 insertions(+) diff --git a/fmt-conversion.c b/fmt-conversion.c index 9e1154d318..9f14565317 100644 --- a/fmt-conversion.c +++ b/fmt-conversion.c @@ -101,6 +101,8 @@ static const struct { {IMGFMT_444P, PIX_FMT_YUVJ444P}, {IMGFMT_440P, PIX_FMT_YUVJ440P}, + {IMGFMT_BGR0, PIX_FMT_BGR0}, + {IMGFMT_VDPAU_MPEG1, PIX_FMT_VDPAU_MPEG1}, {IMGFMT_VDPAU_MPEG2, PIX_FMT_VDPAU_MPEG2}, {IMGFMT_VDPAU_H264, PIX_FMT_VDPAU_H264}, diff --git a/libmpcodecs/img_format.c b/libmpcodecs/img_format.c index 7f82f95db2..b7e4f3ebf7 100644 --- a/libmpcodecs/img_format.c +++ b/libmpcodecs/img_format.c @@ -191,6 +191,7 @@ struct mp_imgfmt_entry mp_imgfmt_list[] = { {"argb", IMGFMT_ARGB}, {"bgra", IMGFMT_BGRA}, {"abgr", IMGFMT_ABGR}, + {"bgr0", IMGFMT_BGR0}, {"gbrp", IMGFMT_GBRP}, {"mjpeg", IMGFMT_MJPEG}, {"mjpg", IMGFMT_MJPEG}, diff --git a/libmpcodecs/img_format.h b/libmpcodecs/img_format.h index 42e601a270..edd7040327 100644 --- a/libmpcodecs/img_format.h +++ b/libmpcodecs/img_format.h @@ -101,6 +101,8 @@ #define IMGFMT_RGB_DEPTH(fmt) ((fmt)&0x3F) #define IMGFMT_BGR_DEPTH(fmt) ((fmt)&0x3F) +// AV_PIX_FMT_BGR0 +#define IMGFMT_BGR0 0x1DC70000 /* Planar YUV Formats */ diff --git a/libmpcodecs/mp_image.c b/libmpcodecs/mp_image.c index 006b0bf4f3..241f2886bc 100644 --- a/libmpcodecs/mp_image.c +++ b/libmpcodecs/mp_image.c @@ -119,6 +119,11 @@ void mp_image_setfmt(mp_image_t* mpi,unsigned int out_fmt){ mpi->flags|=MP_IMGFLAG_SWAPPED; return; } + switch (out_fmt) { + case IMGFMT_BGR0: + mpi->bpp = 32; + return; + } mpi->num_planes=3; if (out_fmt == IMGFMT_GBRP) { mpi->bpp=24; -- cgit v1.2.3