# HG changeset patch # User alex # Date 1026059136 0 # Node ID 15efad62838532aec59cc2c80811641acebee5e2 # Parent 349138a7b414a7af5294fb124eba136a4f7c3430 yuv handling simplified (using new mpi fields) diff -r 349138a7b414 -r 15efad628385 libmpcodecs/vd_raw.c --- a/libmpcodecs/vd_raw.c Sun Jul 07 16:17:45 2002 +0000 +++ b/libmpcodecs/vd_raw.c Sun Jul 07 16:25:36 2002 +0000 @@ -64,24 +64,18 @@ // TODO !!! mpi->planes[0]=data; mpi->stride[0]=mpi->width; - if(mpi->bpp == 12 && mpi->flags&MP_IMGFLAG_YUV) { + if(mpi->flags&MP_IMGFLAG_YUV) { // Support for some common Planar YUV formats /* YV12,I420,IYUV */ int cb=2, cr=1; if(mpi->flags&MP_IMGFLAG_SWAPPED) { cb=1; cr=2; } - mpi->planes[cb]=data+mpi->width*mpi->height; - mpi->stride[cb]=mpi->width/2; - mpi->planes[cr]=data+5*mpi->width*mpi->height/4; - mpi->stride[cr]=mpi->width/2; + mpi->planes[cb]=mpi->planes[0]+mpi->width*mpi->height; + mpi->stride[cb]=mpi->chroma_width; + mpi->planes[cr]=mpi->planes[cb]+mpi->chroma_width*mpi->chroma_height; + mpi->stride[cr]=mpi->chroma_width; } - else if (mpi->bpp==9 && mpi->flags&MP_IMGFLAG_YUV) { - /* YVU9 ! */ - mpi->stride[1]=mpi->stride[2]=mpi->width/4; - mpi->planes[2]=mpi->planes[0]+mpi->width*mpi->height; - mpi->planes[1]=mpi->planes[2]+(mpi->width>>2)*(mpi->height>>2); - } } else { mpi->planes[0]=data; mpi->stride[0]=mpi->width*(mpi->bpp/8); @@ -95,4 +89,3 @@ return mpi; } -