diff options
Diffstat (limited to 'libmpcodecs/vd_raw.c')
-rw-r--r-- | libmpcodecs/vd_raw.c | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/libmpcodecs/vd_raw.c b/libmpcodecs/vd_raw.c index 0efd5994c4..28461d456b 100644 --- a/libmpcodecs/vd_raw.c +++ b/libmpcodecs/vd_raw.c @@ -32,6 +32,7 @@ static int init(sh_video_t *sh){ // set format fourcc for raw RGB: if(sh->format==0){ switch(sh->bih->biBitCount){ + case 8: sh->format=IMGFMT_BGR8; break; case 15: case 16: sh->format=IMGFMT_BGR15; break; case 24: sh->format=IMGFMT_BGR24; break; @@ -72,6 +73,10 @@ static mp_image_t* decode(sh_video_t *sh,void* data,int len,int flags){ } else { mpi->planes[0]=data; mpi->stride[0]=mpi->width*(mpi->bpp/8); + if(mpi->imgfmt==IMGFMT_RGB8 || mpi->imgfmt==IMGFMT_BGR8){ + // export palette: + mpi->planes[1]=((unsigned char*)&sh->bih)+40; + } } return mpi; |