# HG changeset patch # User sdrik # Date 1237878695 0 # Node ID fa95462d62ca29c48bdb3780194cd471384f68bd # Parent 8273eda1388cc8aa95fb0f1f50fbf7b0b966af87 Adds "YUYV422 to YUVA420P" and "UYVY422 to YUVA420P" unscaled convertion diff -r 8273eda1388c -r fa95462d62ca libswscale/swscale.c --- a/libswscale/swscale.c Tue Mar 24 07:10:19 2009 +0000 +++ b/libswscale/swscale.c Tue Mar 24 07:11:35 2009 +0000 @@ -1885,6 +1885,9 @@ yuyvtoyuv420(ydst, udst, vdst, src[0], c->srcW, srcSliceH, dstStride[0], dstStride[1], srcStride[0]); + if (dstParam[3]) + fillPlane(dstParam[3], dstStride[3], c->srcW, srcSliceH, srcSliceY, 255); + return srcSliceH; } @@ -1907,6 +1910,9 @@ uyvytoyuv420(ydst, udst, vdst, src[0], c->srcW, srcSliceH, dstStride[0], dstStride[1], srcStride[0]); + if (dstParam[3]) + fillPlane(dstParam[3], dstStride[3], c->srcW, srcSliceH, srcSliceY, 255); + return srcSliceH; } @@ -2582,9 +2588,9 @@ c->swScale= PlanarToUyvyWrapper; } } - if(srcFormat == PIX_FMT_YUYV422 && dstFormat == PIX_FMT_YUV420P) + if(srcFormat == PIX_FMT_YUYV422 && (dstFormat == PIX_FMT_YUV420P || dstFormat == PIX_FMT_YUVA420P)) c->swScale= YUYV2YUV420Wrapper; - if(srcFormat == PIX_FMT_UYVY422 && dstFormat == PIX_FMT_YUV420P) + if(srcFormat == PIX_FMT_UYVY422 && (dstFormat == PIX_FMT_YUV420P || dstFormat == PIX_FMT_YUVA420P)) c->swScale= UYVY2YUV420Wrapper; if(srcFormat == PIX_FMT_YUYV422 && dstFormat == PIX_FMT_YUV422P) c->swScale= YUYV2YUV422Wrapper;