# HG changeset patch # User michael # Date 1220567482 0 # Node ID bb75465dc12ad53f8a9586e019dabbc402252494 # Parent 651ebfa4b7db9c3154893b80f1c4a70fe11aa1cb Fix SWS_FAST_BILINEAR and SWS_POINT with some unscaled rgb<->bgr converters. diff -r 651ebfa4b7db -r bb75465dc12a libswscale/swscale.c --- a/libswscale/swscale.c Thu Sep 04 21:59:15 2008 +0000 +++ b/libswscale/swscale.c Thu Sep 04 22:31:22 2008 +0000 @@ -2161,17 +2161,11 @@ && srcFormat != PIX_FMT_MONOBLACK && dstFormat != PIX_FMT_MONOBLACK && dstFormat != PIX_FMT_RGB32_1 && dstFormat != PIX_FMT_BGR32_1 - && !needsDither) + && (!needsDither || (c->flags&(SWS_FAST_BILINEAR|SWS_POINT)))) c->swScale= rgb2rgbWrapper; /* LQ converters if -sws 0 or -sws 4*/ if (c->flags&(SWS_FAST_BILINEAR|SWS_POINT)){ - /* rgb/bgr -> rgb/bgr (dither needed forms) */ - if ( (isBGR(srcFormat) || isRGB(srcFormat)) - && (isBGR(dstFormat) || isRGB(dstFormat)) - && needsDither) - c->swScale= rgb2rgbWrapper; - /* yv12_to_yuy2 */ if (srcFormat == PIX_FMT_YUV420P && (dstFormat == PIX_FMT_YUYV422 || dstFormat == PIX_FMT_UYVY422))