summaryrefslogtreecommitdiffstats
path: root/libmpcodecs/mp_image.c
diff options
context:
space:
mode:
authorcehoyos <cehoyos@b3059339-0415-0410-9bf9-f77b7e298cf2>2011-10-23 20:40:31 +0000
committerwm4 <wm4@mplayer2.org>2012-03-25 23:03:15 +0200
commitb223805547e7272cfa376ddf69e82806af48a602 (patch)
tree7eff7e78730bcf0ddcd157cb4afa187bd8bde1c7 /libmpcodecs/mp_image.c
parent7d0c4c3c312a14bc5674a9f38826d79ca8f3466f (diff)
downloadmpv-b223805547e7272cfa376ddf69e82806af48a602.tar.bz2
mpv-b223805547e7272cfa376ddf69e82806af48a602.tar.xz
libmpcodecs: support planar GBR24 decoding
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@34245 b3059339-0415-0410-9bf9-f77b7e298cf2 Note: ffmpeg first introduced PIX_FMT_GBR24P, which was used in this commit. Later, it was renamed to PIX_FMT_GBRP in ffmpeg and libav. This was updated in revision 34492 in mplayer, but the mplayer specific names (such as IMGFMT_GBR24) were left unchanged.
Diffstat (limited to 'libmpcodecs/mp_image.c')
-rw-r--r--libmpcodecs/mp_image.c7
1 files changed, 6 insertions, 1 deletions
diff --git a/libmpcodecs/mp_image.c b/libmpcodecs/mp_image.c
index 4683f41174..9c4e6d6bd7 100644
--- a/libmpcodecs/mp_image.c
+++ b/libmpcodecs/mp_image.c
@@ -121,8 +121,13 @@ void mp_image_setfmt(mp_image_t* mpi,unsigned int out_fmt){
mpi->flags|=MP_IMGFLAG_SWAPPED;
return;
}
- mpi->flags|=MP_IMGFLAG_YUV;
mpi->num_planes=3;
+ if (out_fmt == IMGFMT_GBR24P) {
+ mpi->bpp=24;
+ mpi->flags|=MP_IMGFLAG_PLANAR;
+ return;
+ }
+ mpi->flags|=MP_IMGFLAG_YUV;
if (mp_get_chroma_shift(out_fmt, NULL, NULL, NULL)) {
mpi->flags|=MP_IMGFLAG_PLANAR;
mpi->bpp = mp_get_chroma_shift(out_fmt, &mpi->chroma_x_shift, &mpi->chroma_y_shift, NULL);