From 7eaf60438bc7b7006a6140a17ece27c79b3dd46a Mon Sep 17 00:00:00 2001 From: ramiro Date: Thu, 13 Aug 2009 18:39:39 +0000 Subject: swscale-example: Don't check for chroma planes in mono formats. git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@29511 b3059339-0415-0410-9bf9-f77b7e298cf2 --- libswscale/swscale-example.c | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) (limited to 'libswscale') diff --git a/libswscale/swscale-example.c b/libswscale/swscale-example.c index c289324f0b..0e8db8a1ef 100644 --- a/libswscale/swscale-example.c +++ b/libswscale/swscale-example.c @@ -37,6 +37,11 @@ const char *sws_format_name(enum PixelFormat format); || (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 refStride[4], int w, int h, int srcFormat 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); -- cgit v1.2.3