[FFmpeg-cvslog] r29511 - trunk/libswscale/swscale-example.c

ramiro subversion
Thu Aug 13 20:39:40 CEST 2009


Author: ramiro
Date: Thu Aug 13 20:39:39 2009
New Revision: 29511

Log:
swscale-example: Don't check for chroma planes in mono formats.

Modified:
   trunk/libswscale/swscale-example.c

Modified: trunk/libswscale/swscale-example.c
==============================================================================
--- trunk/libswscale/swscale-example.c	Thu Aug 13 20:31:07 2009	(r29510)
+++ trunk/libswscale/swscale-example.c	Thu Aug 13 20:39:39 2009	(r29511)
@@ -37,6 +37,11 @@ const char *sws_format_name(enum PixelFo
         || (x)==PIX_FMT_GRAY16BE    \
         || (x)==PIX_FMT_GRAY16LE    \
     )
+#define hasChroma(x)   (!(           \
+            isGray(x)               \
+        || (x)==PIX_FMT_MONOBLACK   \
+        || (x)==PIX_FMT_MONOWHITE   \
+    ))
 #define isALPHA(x)      (           \
            (x)==PIX_FMT_BGR32       \
         || (x)==PIX_FMT_BGR32_1     \
@@ -139,7 +144,7 @@ static int doTest(uint8_t *ref[4], int r
     sws_scale(outContext, dst, dstStride, 0, dstH, out, refStride);
 
     ssdY= getSSD(ref[0], out[0], refStride[0], refStride[0], w, h);
-    if (!isGray(srcFormat) && !isGray(dstFormat)) {
+    if (hasChroma(srcFormat) && hasChroma(dstFormat)) {
         //FIXME check that output is really gray
         ssdU= getSSD(ref[1], out[1], refStride[1], refStride[1], (w+1)>>1, (h+1)>>1);
         ssdV= getSSD(ref[2], out[2], refStride[2], refStride[2], (w+1)>>1, (h+1)>>1);



More information about the ffmpeg-cvslog mailing list