swscale: use a function for isAnyRGB
authorClément Bœsch <u@pkh.me>
Sun, 19 Mar 2017 14:15:10 +0000 (15:15 +0100)
committerClément Bœsch <u@pkh.me>
Mon, 20 Mar 2017 07:02:30 +0000 (08:02 +0100)
libswscale/swscale_internal.h

index 3413074..b1fec42 100644 (file)
@@ -767,13 +767,13 @@ static av_always_inline int isBayer(enum AVPixelFormat pix_fmt)
     return !!(desc->flags & AV_PIX_FMT_FLAG_BAYER);
 }
 
-#define isAnyRGB(x) \
-    (           \
-          isBayer(x)          ||    \
-          isRGBinInt(x)       ||    \
-          isBGRinInt(x)       ||    \
-          isRGB(x)      \
-    )
+static av_always_inline int isAnyRGB(enum AVPixelFormat pix_fmt)
+{
+    const AVPixFmtDescriptor *desc = av_pix_fmt_desc_get(pix_fmt);
+    av_assert0(desc);
+    return (desc->flags & AV_PIX_FMT_FLAG_RGB) ||
+            pix_fmt == AV_PIX_FMT_MONOBLACK || pix_fmt == AV_PIX_FMT_MONOWHITE;
+}
 
 static av_always_inline int isALPHA(enum AVPixelFormat pix_fmt)
 {