From 4155ece530ce66f46f2044a3556cfdaac690fafa Mon Sep 17 00:00:00 2001 From: Michael Niedermayer Date: Fri, 12 Sep 2008 02:05:37 +0000 Subject: Do not use the unscaled yuv->rgb converters if SWS_ACCURATE_RND is set, because they do not accurately round. Originally committed as revision 27584 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale --- libswscale/swscale.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) (limited to 'libswscale/swscale.c') diff --git a/libswscale/swscale.c b/libswscale/swscale.c index 83373fcffe..9dcb6f93e4 100644 --- a/libswscale/swscale.c +++ b/libswscale/swscale.c @@ -2160,7 +2160,8 @@ SwsContext *sws_getContext(int srcW, int srcH, int srcFormat, int dstW, int dstH } #ifdef CONFIG_GPL /* yuv2bgr */ - if ((srcFormat==PIX_FMT_YUV420P || srcFormat==PIX_FMT_YUV422P) && (isBGR(dstFormat) || isRGB(dstFormat))) + if ((srcFormat==PIX_FMT_YUV420P || srcFormat==PIX_FMT_YUV422P) && (isBGR(dstFormat) || isRGB(dstFormat)) + && !(flags & SWS_ACCURATE_RND)) { c->swScale= yuv2rgb_get_func_ptr(c); } -- cgit v1.2.3