draw_bmp: fix for yuy2 format

mp_get_chroma_shift() modifies its argument even if it fails, so we have
to restore that.

mp_image didn't set chroma shifts for yuy2.
This commit is contained in:
wm4 2012-10-21 17:08:54 +02:00
parent f80a32a8eb
commit 4b4e4b5690
2 changed files with 5 additions and 1 deletions

View File

@ -196,6 +196,9 @@ void mp_image_setfmt(mp_image_t* mpi,unsigned int out_fmt){
mpi->flags|=MP_IMGFLAG_SWAPPED;
case IMGFMT_YUY2:
mpi->chroma_x_shift = 1;
mpi->chroma_y_shift = 1;
mpi->chroma_width=(mpi->width>>1);
mpi->chroma_height=(mpi->height>>1);
mpi->bpp=16;
mpi->num_planes=1;
return;

View File

@ -511,7 +511,8 @@ void mp_draw_sub_bitmaps(struct mp_draw_sub_cache **cache, struct mp_image *dst,
bits = 16;
break;
}
}
} else
bits = 16;
}
#else
int format = IMGFMT_444P;