summaryrefslogtreecommitdiffstats
path: root/libmpcodecs/vd_raw.c
diff options
context:
space:
mode:
Diffstat (limited to 'libmpcodecs/vd_raw.c')
-rw-r--r--libmpcodecs/vd_raw.c7
1 files changed, 7 insertions, 0 deletions
diff --git a/libmpcodecs/vd_raw.c b/libmpcodecs/vd_raw.c
index 1049c65e51..0efd5994c4 100644
--- a/libmpcodecs/vd_raw.c
+++ b/libmpcodecs/vd_raw.c
@@ -62,6 +62,13 @@ static mp_image_t* decode(sh_video_t *sh,void* data,int len,int flags){
// TODO !!!
mpi->planes[0]=data;
mpi->stride[0]=mpi->width;
+ if(mpi->bpp == 12 && mpi->flags&MP_IMGFLAG_YUV) {
+ // Support for some common Planar YUV formats
+ mpi->planes[2]=data+mpi->width*mpi->height;
+ mpi->stride[2]=mpi->width/2;
+ mpi->planes[1]=data+5*mpi->width*mpi->height/4;
+ mpi->stride[1]=mpi->width/2;
+ }
} else {
mpi->planes[0]=data;
mpi->stride[0]=mpi->width*(mpi->bpp/8);