[FFmpeg-cvslog] swscale: override the lack of the accurate rounding flag when needed for dither.

Michael Niedermayer git at videolan.org
Sun Jun 5 04:53:08 CEST 2011


ffmpeg | branch: master | Michael Niedermayer <michaelni at gmx.at> | Sun Jun  5 04:31:36 2011 +0200| [ba91bf58cd8bab4de55ec31ffcdf6cc71f7e5e42] | committer: Michael Niedermayer

swscale: override the lack of the accurate rounding flag when needed for dither.

Signed-off-by: Michael Niedermayer <michaelni at gmx.at>

> http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=ba91bf58cd8bab4de55ec31ffcdf6cc71f7e5e42
---

 libswscale/x86/swscale_template.c |    3 ++-
 1 files changed, 2 insertions(+), 1 deletions(-)

diff --git a/libswscale/x86/swscale_template.c b/libswscale/x86/swscale_template.c
index ccd4052..58c6bde 100644
--- a/libswscale/x86/swscale_template.c
+++ b/libswscale/x86/swscale_template.c
@@ -2366,7 +2366,8 @@ static void RENAME(sws_init_swScale)(SwsContext *c)
             default: break;
             }
         } else {
-            c->yuv2yuv1     = RENAME(yuv2yuv1    );
+            int should_dither= isNBPS(c->srcFormat) || is16BPS(c->srcFormat);
+            c->yuv2yuv1     = should_dither ? RENAME(yuv2yuv1_ar    ) : RENAME(yuv2yuv1    );
             c->yuv2yuvX     = RENAME(yuv2yuvX    );
             switch (c->dstFormat) {
             case PIX_FMT_RGB32:   c->yuv2packedX = RENAME(yuv2rgb32_X);   break;



More information about the ffmpeg-cvslog mailing list