From ac7efd336487e265511af3424664ecb0cc504d1f Mon Sep 17 00:00:00 2001 From: Michael Niedermayer Date: Wed, 11 Jan 2012 04:07:02 +0100 Subject: [PATCH] sws: fix unscaled LE<->BE rgb<->bgr Signed-off-by: Michael Niedermayer --- libswscale/swscale_unscaled.c | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/libswscale/swscale_unscaled.c b/libswscale/swscale_unscaled.c index bf79caabcb..d25c5facf4 100644 --- a/libswscale/swscale_unscaled.c +++ b/libswscale/swscale_unscaled.c @@ -762,7 +762,10 @@ void ff_get_unscaled_swscale(SwsContext *c) && srcFormat != PIX_FMT_RGB48BE && dstFormat != PIX_FMT_RGB48BE && srcFormat != PIX_FMT_BGR48LE && dstFormat != PIX_FMT_BGR48LE && srcFormat != PIX_FMT_BGR48BE && dstFormat != PIX_FMT_BGR48BE - && (!needsDither || (c->flags&(SWS_FAST_BILINEAR|SWS_POINT)))) + && (!needsDither || (c->flags&(SWS_FAST_BILINEAR|SWS_POINT))) + && (!(av_pix_fmt_descriptors[srcFormat].flags & PIX_FMT_BE) == !HAVE_BIGENDIAN || (c->srcFormatBpp+7)/8!=2) + && (!(av_pix_fmt_descriptors[dstFormat].flags & PIX_FMT_BE) == !HAVE_BIGENDIAN || (c->dstFormatBpp+7)/8!=2) + ) c->swScale= rgbToRgbWrapper; #define isByteRGB(f) (\