summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorwm4 <wm4@nowhere>2012-10-21 01:10:32 +0200
committerwm4 <wm4@nowhere>2012-10-21 21:01:54 +0200
commit933805daa16cfbc74610a2221b537c4ddb15d33e (patch)
tree0de79c241a5102e65ef9ef671d29eb5335caa96d
parent8bbce10c776f59aff6f21b80f5feee7d1a6d7ea7 (diff)
downloadmpv-933805daa16cfbc74610a2221b537c4ddb15d33e.tar.bz2
mpv-933805daa16cfbc74610a2221b537c4ddb15d33e.tar.xz
mp_image: add IMGFMT_BGR0/PIX_FMT_BGR0
Needed by ffv1.
-rw-r--r--fmt-conversion.c2
-rw-r--r--libmpcodecs/img_format.c1
-rw-r--r--libmpcodecs/img_format.h2
-rw-r--r--libmpcodecs/mp_image.c5
4 files changed, 10 insertions, 0 deletions
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;