]> git.sesse.net Git - ffmpeg/commitdiff
Merge commit '1481d24c3a0abf81e1d7a514547bd5305232be30'
authorMichael Niedermayer <michaelni@gmx.at>
Mon, 17 Mar 2014 13:14:10 +0000 (14:14 +0100)
committerMichael Niedermayer <michaelni@gmx.at>
Mon, 17 Mar 2014 13:41:13 +0000 (14:41 +0100)
* commit '1481d24c3a0abf81e1d7a514547bd5305232be30':
  RGBA64 pixel formats

Conflicts:
doc/APIchanges
libavutil/pixdesc.c
libavutil/pixfmt.h
libavutil/version.h
libswscale/utils.c

See: 9569a3c9f41387a8c7d1ce97d8693520477a66c3
See: 92afb431621c79155fcb7171d26f137eb1bee028, as well as others
Note: the enum values added in libav are incompatible/different to what ffmpeg used since 3 years
Merged-by: Michael Niedermayer <michaelni@gmx.at>
1  2 
doc/APIchanges
libavutil/pixdesc.c
libavutil/pixfmt.h
libavutil/version.h
libswscale/swscale_internal.h

diff --cc doc/APIchanges
index 60984355af9e07613f5db7945a70ed3135f37162,38d18bc826a540dbda17c71e7005e65888443b71..8da7ad336dc136cc944e7e4e08ab2b735fd348b2
@@@ -15,25 -13,16 +15,28 @@@ libavutil:     2012-10-2
  
  API changes, most recent first:
  
 -  Add RGBA64 pixel format and variants.
+ 2014-xx-xx - xxxxxxx - lavu 53.06.0 - pixfmt.h
 -2014-xx-xx - xxxxxxx - lavu 53.05.0 - frame.h
++  Add RGBA64_LIBAV pixel format and variants for compatibility
 +2014-03-11 - 3f3229c - lavf 55.34.101 - avformat.h
 +  Set AVFormatContext.start_time_realtime when demuxing.
 +
 +2014-xx-xx - xxxxxx - lavd 55.11.100 - avdevice.h
 +  Add av_input_audio_device_next().
 +  Add av_input_video_device_next().
 +  Add av_output_audio_device_next().
 +  Add av_output_video_device_next().
 +
 +2014-02-24 - fff5262 / 1155fd0 - lavu 52.66.100 / 53.5.0 - frame.h
    Add av_frame_copy() for copying the frame data.
  
 -2014-02-xx - xxxxxxx - lavr 1.2.0 - avresample.h
 +2014-02-24 - a66be60 - lswr 0.18.100 - swresample.h
 +  Add swr_is_initialized() for checking whether a resample context is initialized.
 +
 +2014-02-22 - 5367c0b / 7e86c27 - lavr 1.2.0 - avresample.h
    Add avresample_is_open() for checking whether a resample context is open.
  
 -2014-xx-xx - xxxxxxx - lavu 53.04.0  - opt.h
 +2014-02-19 - 6a24d77 / c3ecd96 - lavu 52.65.100 / 53.4.0  - opt.h
    Add AV_OPT_FLAG_EXPORT and AV_OPT_FLAG_READONLY to mark options meant (only)
    for reading.
  
index 7d41b2220cd5a0cab20c50fd1bd05246bbb082fc,d0e691945172e933fe55df2438423cae6a36056c..45889727ca2e0813c066eb3bb1b7ca939d5a0407
@@@ -1050,27 -982,27 +1050,27 @@@ const AVPixFmtDescriptor av_pix_fmt_des
      },
      [AV_PIX_FMT_BGRA64BE] = {
          .name = "bgra64be",
-         .nb_components= 4,
-         .log2_chroma_w= 0,
-         .log2_chroma_h= 0,
+         .nb_components = 4,
+         .log2_chroma_w = 0,
+         .log2_chroma_h = 0,
          .comp = {
 -            { 0, 5, 1, 0, 15 },       /* B */
 -            { 0, 5, 3, 0, 15 },       /* G */
 -            { 0, 5, 5, 0, 15 },       /* R */
 -            { 0, 5, 7, 0, 15 },       /* A */
 +            { 0, 7, 5, 0, 15 },       /* R */
 +            { 0, 7, 3, 0, 15 },       /* G */
 +            { 0, 7, 1, 0, 15 },       /* B */
 +            { 0, 7, 7, 0, 15 },       /* A */
          },
          .flags = AV_PIX_FMT_FLAG_BE | AV_PIX_FMT_FLAG_RGB | AV_PIX_FMT_FLAG_ALPHA,
      },
      [AV_PIX_FMT_BGRA64LE] = {
          .name = "bgra64le",
-         .nb_components= 4,
-         .log2_chroma_w= 0,
-         .log2_chroma_h= 0,
+         .nb_components = 4,
+         .log2_chroma_w = 0,
+         .log2_chroma_h = 0,
          .comp = {
 -            { 0, 5, 1, 0, 15 },       /* B */
 -            { 0, 5, 3, 0, 15 },       /* G */
 -            { 0, 5, 5, 0, 15 },       /* R */
 -            { 0, 5, 7, 0, 15 },       /* A */
 +            { 0, 7, 5, 0, 15 },       /* R */
 +            { 0, 7, 3, 0, 15 },       /* G */
 +            { 0, 7, 1, 0, 15 },       /* B */
 +            { 0, 7, 7, 0, 15 },       /* A */
          },
          .flags = AV_PIX_FMT_FLAG_RGB | AV_PIX_FMT_FLAG_ALPHA,
      },
index 9418c4a2b9844c8e53ea3bc9be4503d5e96a823a,e86ec7ee7913b565a15ef375ace041caeffa7688..374f967608e6c89f01de53c2e52baa7ed9bda037
@@@ -217,55 -191,10 +217,66 @@@ enum AVPixelFormat 
      AV_PIX_FMT_NV20LE,       ///< interleaved chroma YUV 4:2:2, 20bpp, (1 Cr & Cb sample per 2x1 Y samples), little-endian
      AV_PIX_FMT_NV20BE,       ///< interleaved chroma YUV 4:2:2, 20bpp, (1 Cr & Cb sample per 2x1 Y samples), big-endian
  
 -    AV_PIX_FMT_RGBA64BE,     ///< packed RGBA 16:16:16:16, 64bpp, 16R, 16G, 16B, 16A, the 2-byte value for each R/G/B/A component is stored as big-endian
 -    AV_PIX_FMT_RGBA64LE,     ///< packed RGBA 16:16:16:16, 64bpp, 16R, 16G, 16B, 16A, the 2-byte value for each R/G/B/A component is stored as little-endian
 -    AV_PIX_FMT_BGRA64BE,     ///< packed RGBA 16:16:16:16, 64bpp, 16B, 16G, 16R, 16A, the 2-byte value for each R/G/B/A component is stored as big-endian
 -    AV_PIX_FMT_BGRA64LE,     ///< packed RGBA 16:16:16:16, 64bpp, 16B, 16G, 16R, 16A, the 2-byte value for each R/G/B/A component is stored as little-endian
++    /**
++     * duplicated pixel formats for compatibility with libav.
++     * FFmpeg supports these formats since Sat Sep 24 06:01:45 2011 +0200 (commits 9569a3c9f41387a8c7d1ce97d8693520477a66c3)
++     * also see Fri Nov 25 01:38:21 2011 +0100 92afb431621c79155fcb7171d26f137eb1bee028
++     * Libav added them Sun Mar 16 23:05:47 2014 +0100 with incompatible values (commit 1481d24c3a0abf81e1d7a514547bd5305232be30)
++     */
++    AV_PIX_FMT_RGBA64BE_LIBAV,     ///< packed RGBA 16:16:16:16, 64bpp, 16R, 16G, 16B, 16A, the 2-byte value for each R/G/B/A component is stored as big-endian
++    AV_PIX_FMT_RGBA64LE_LIBAV,     ///< packed RGBA 16:16:16:16, 64bpp, 16R, 16G, 16B, 16A, the 2-byte value for each R/G/B/A component is stored as little-endian
++    AV_PIX_FMT_BGRA64BE_LIBAV,     ///< packed RGBA 16:16:16:16, 64bpp, 16B, 16G, 16R, 16A, the 2-byte value for each R/G/B/A component is stored as big-endian
++    AV_PIX_FMT_BGRA64LE_LIBAV,     ///< packed RGBA 16:16:16:16, 64bpp, 16B, 16G, 16R, 16A, the 2-byte value for each R/G/B/A component is stored as little-endian
++
 +#ifndef AV_PIX_FMT_ABI_GIT_MASTER
 +    AV_PIX_FMT_RGBA64BE=0x123,  ///< packed RGBA 16:16:16:16, 64bpp, 16R, 16G, 16B, 16A, the 2-byte value for each R/G/B/A component is stored as big-endian
 +    AV_PIX_FMT_RGBA64LE,  ///< packed RGBA 16:16:16:16, 64bpp, 16R, 16G, 16B, 16A, the 2-byte value for each R/G/B/A component is stored as little-endian
 +    AV_PIX_FMT_BGRA64BE,  ///< packed RGBA 16:16:16:16, 64bpp, 16B, 16G, 16R, 16A, the 2-byte value for each R/G/B/A component is stored as big-endian
 +    AV_PIX_FMT_BGRA64LE,  ///< packed RGBA 16:16:16:16, 64bpp, 16B, 16G, 16R, 16A, the 2-byte value for each R/G/B/A component is stored as little-endian
 +#endif
 +    AV_PIX_FMT_0RGB=0x123+4,      ///< packed RGB 8:8:8, 32bpp, 0RGB0RGB...
 +    AV_PIX_FMT_RGB0,      ///< packed RGB 8:8:8, 32bpp, RGB0RGB0...
 +    AV_PIX_FMT_0BGR,      ///< packed BGR 8:8:8, 32bpp, 0BGR0BGR...
 +    AV_PIX_FMT_BGR0,      ///< packed BGR 8:8:8, 32bpp, BGR0BGR0...
 +    AV_PIX_FMT_YUVA444P,  ///< planar YUV 4:4:4 32bpp, (1 Cr & Cb sample per 1x1 Y & A samples)
 +    AV_PIX_FMT_YUVA422P,  ///< planar YUV 4:2:2 24bpp, (1 Cr & Cb sample per 2x1 Y & A samples)
 +
 +    AV_PIX_FMT_YUV420P12BE, ///< planar YUV 4:2:0,18bpp, (1 Cr & Cb sample per 2x2 Y samples), big-endian
 +    AV_PIX_FMT_YUV420P12LE, ///< planar YUV 4:2:0,18bpp, (1 Cr & Cb sample per 2x2 Y samples), little-endian
 +    AV_PIX_FMT_YUV420P14BE, ///< planar YUV 4:2:0,21bpp, (1 Cr & Cb sample per 2x2 Y samples), big-endian
 +    AV_PIX_FMT_YUV420P14LE, ///< planar YUV 4:2:0,21bpp, (1 Cr & Cb sample per 2x2 Y samples), little-endian
 +    AV_PIX_FMT_YUV422P12BE, ///< planar YUV 4:2:2,24bpp, (1 Cr & Cb sample per 2x1 Y samples), big-endian
 +    AV_PIX_FMT_YUV422P12LE, ///< planar YUV 4:2:2,24bpp, (1 Cr & Cb sample per 2x1 Y samples), little-endian
 +    AV_PIX_FMT_YUV422P14BE, ///< planar YUV 4:2:2,28bpp, (1 Cr & Cb sample per 2x1 Y samples), big-endian
 +    AV_PIX_FMT_YUV422P14LE, ///< planar YUV 4:2:2,28bpp, (1 Cr & Cb sample per 2x1 Y samples), little-endian
 +    AV_PIX_FMT_YUV444P12BE, ///< planar YUV 4:4:4,36bpp, (1 Cr & Cb sample per 1x1 Y samples), big-endian
 +    AV_PIX_FMT_YUV444P12LE, ///< planar YUV 4:4:4,36bpp, (1 Cr & Cb sample per 1x1 Y samples), little-endian
 +    AV_PIX_FMT_YUV444P14BE, ///< planar YUV 4:4:4,42bpp, (1 Cr & Cb sample per 1x1 Y samples), big-endian
 +    AV_PIX_FMT_YUV444P14LE, ///< planar YUV 4:4:4,42bpp, (1 Cr & Cb sample per 1x1 Y samples), little-endian
 +    AV_PIX_FMT_GBRP12BE,    ///< planar GBR 4:4:4 36bpp, big-endian
 +    AV_PIX_FMT_GBRP12LE,    ///< planar GBR 4:4:4 36bpp, little-endian
 +    AV_PIX_FMT_GBRP14BE,    ///< planar GBR 4:4:4 42bpp, big-endian
 +    AV_PIX_FMT_GBRP14LE,    ///< planar GBR 4:4:4 42bpp, little-endian
 +    AV_PIX_FMT_GBRAP,       ///< planar GBRA 4:4:4:4 32bpp
 +    AV_PIX_FMT_GBRAP16BE,   ///< planar GBRA 4:4:4:4 64bpp, big-endian
 +    AV_PIX_FMT_GBRAP16LE,   ///< planar GBRA 4:4:4:4 64bpp, little-endian
 +    AV_PIX_FMT_YUVJ411P,    ///< planar YUV 4:1:1, 12bpp, (1 Cr & Cb sample per 4x1 Y samples) full scale (JPEG), deprecated in favor of PIX_FMT_YUV411P and setting color_range
 +
 +    AV_PIX_FMT_BAYER_BGGR8,    ///< bayer, BGBG..(odd line), GRGR..(even line), 8-bit samples */
 +    AV_PIX_FMT_BAYER_RGGB8,    ///< bayer, RGRG..(odd line), GBGB..(even line), 8-bit samples */
 +    AV_PIX_FMT_BAYER_GBRG8,    ///< bayer, GBGB..(odd line), RGRG..(even line), 8-bit samples */
 +    AV_PIX_FMT_BAYER_GRBG8,    ///< bayer, GRGR..(odd line), BGBG..(even line), 8-bit samples */
 +    AV_PIX_FMT_BAYER_BGGR16LE, ///< bayer, BGBG..(odd line), GRGR..(even line), 16-bit samples, little-endian */
 +    AV_PIX_FMT_BAYER_BGGR16BE, ///< bayer, BGBG..(odd line), GRGR..(even line), 16-bit samples, big-endian */
 +    AV_PIX_FMT_BAYER_RGGB16LE, ///< bayer, RGRG..(odd line), GBGB..(even line), 16-bit samples, little-endian */
 +    AV_PIX_FMT_BAYER_RGGB16BE, ///< bayer, RGRG..(odd line), GBGB..(even line), 16-bit samples, big-endian */
 +    AV_PIX_FMT_BAYER_GBRG16LE, ///< bayer, GBGB..(odd line), RGRG..(even line), 16-bit samples, little-endian */
 +    AV_PIX_FMT_BAYER_GBRG16BE, ///< bayer, GBGB..(odd line), RGRG..(even line), 16-bit samples, big-endian */
 +    AV_PIX_FMT_BAYER_GRBG16LE, ///< bayer, GRGR..(odd line), BGBG..(even line), 16-bit samples, little-endian */
 +    AV_PIX_FMT_BAYER_GRBG16BE, ///< bayer, GRGR..(odd line), BGBG..(even line), 16-bit samples, big-endian */
 +#if !FF_API_XVMC
 +    AV_PIX_FMT_XVMC,///< XVideo Motion Acceleration via common packet passing
 +#endif /* !FF_API_XVMC */
  
      AV_PIX_FMT_NB,        ///< number of pixel formats, DO NOT USE THIS if you want to link with shared libav* because the number of formats might differ between versions
  
  #endif
  };
  
 +#if AV_HAVE_INCOMPATIBLE_LIBAV_ABI
 +#define AV_PIX_FMT_YUVA422P AV_PIX_FMT_YUVA422P_LIBAV
 +#define AV_PIX_FMT_YUVA444P AV_PIX_FMT_YUVA444P_LIBAV
++#define AV_PIX_FMT_RGBA64BE AV_PIX_FMT_RGBA64BE_LIBAV
++#define AV_PIX_FMT_RGBA64LE AV_PIX_FMT_RGBA64LE_LIBAV
++#define AV_PIX_FMT_BGRA64BE AV_PIX_FMT_BGRA64BE_LIBAV
++#define AV_PIX_FMT_BGRA64LE AV_PIX_FMT_BGRA64LE_LIBAV
 +#endif
 +
 +
 +#define AV_PIX_FMT_Y400A AV_PIX_FMT_GRAY8A
 +#define AV_PIX_FMT_GBR24P AV_PIX_FMT_GBRP
 +
  #if AV_HAVE_BIGENDIAN
  #   define AV_PIX_FMT_NE(be, le) AV_PIX_FMT_##be
  #else
  #define AV_PIX_FMT_YUV422P16 AV_PIX_FMT_NE(YUV422P16BE, YUV422P16LE)
  #define AV_PIX_FMT_YUV444P16 AV_PIX_FMT_NE(YUV444P16BE, YUV444P16LE)
  
- #define AV_PIX_FMT_RGBA64 AV_PIX_FMT_NE(RGBA64BE, RGBA64LE)
- #define AV_PIX_FMT_BGRA64 AV_PIX_FMT_NE(BGRA64BE, BGRA64LE)
  #define AV_PIX_FMT_GBRP9     AV_PIX_FMT_NE(GBRP9BE ,    GBRP9LE)
  #define AV_PIX_FMT_GBRP10    AV_PIX_FMT_NE(GBRP10BE,    GBRP10LE)
 +#define AV_PIX_FMT_GBRP12    AV_PIX_FMT_NE(GBRP12BE,    GBRP12LE)
 +#define AV_PIX_FMT_GBRP14    AV_PIX_FMT_NE(GBRP14BE,    GBRP14LE)
  #define AV_PIX_FMT_GBRP16    AV_PIX_FMT_NE(GBRP16BE,    GBRP16LE)
 +#define AV_PIX_FMT_GBRAP16   AV_PIX_FMT_NE(GBRAP16BE,   GBRAP16LE)
 +
 +#define AV_PIX_FMT_BAYER_BGGR16 AV_PIX_FMT_NE(BAYER_BGGR16BE,    BAYER_BGGR16LE)
 +#define AV_PIX_FMT_BAYER_RGGB16 AV_PIX_FMT_NE(BAYER_RGGB16BE,    BAYER_RGGB16LE)
 +#define AV_PIX_FMT_BAYER_GBRG16 AV_PIX_FMT_NE(BAYER_GBRG16BE,    BAYER_GBRG16LE)
 +#define AV_PIX_FMT_BAYER_GRBG16 AV_PIX_FMT_NE(BAYER_GRBG16BE,    BAYER_GRBG16LE)
 +
  
  #define AV_PIX_FMT_YUVA420P9  AV_PIX_FMT_NE(YUVA420P9BE , YUVA420P9LE)
  #define AV_PIX_FMT_YUVA422P9  AV_PIX_FMT_NE(YUVA422P9BE , YUVA422P9LE)
index fc959ebd742b6d607c5fa2b38cb7f2f3f89508f9,36070b251a81013479aad8eb031bfd3f6e7a3dfc..02c9ce0c0e158f6a01e1137f70c3c0024a1933b8
@@@ -55,9 -53,9 +55,9 @@@
   * @{
   */
  
 -#define LIBAVUTIL_VERSION_MAJOR 53
 -#define LIBAVUTIL_VERSION_MINOR  6
 -#define LIBAVUTIL_VERSION_MICRO  0
 +#define LIBAVUTIL_VERSION_MAJOR  52
- #define LIBAVUTIL_VERSION_MINOR  66
- #define LIBAVUTIL_VERSION_MICRO 101
++#define LIBAVUTIL_VERSION_MINOR  67
++#define LIBAVUTIL_VERSION_MICRO 100
  
  #define LIBAVUTIL_VERSION_INT   AV_VERSION_INT(LIBAVUTIL_VERSION_MAJOR, \
                                                 LIBAVUTIL_VERSION_MINOR, \
index e11186116571dbe45d6f5c4bae5f447441c79a05,bd57b20d6f01b3a9d79150225c37c9237ea37bcc..5ce54d0dc3904fd522babc9fd8a5531b8098a6af
@@@ -683,12 -626,9 +683,10 @@@ static av_always_inline int isRGB(enum 
       (x) == AV_PIX_FMT_GRAY16LE)
  #endif
  
 -#define isRGBinInt(x)                  \
 -    ((x) == AV_PIX_FMT_RGB48BE     ||  \
 +#define isRGBinInt(x) \
 +    (           \
 +     (x) == AV_PIX_FMT_RGB48BE     ||  \
       (x) == AV_PIX_FMT_RGB48LE     ||  \
-      (x) == AV_PIX_FMT_RGBA64BE    ||  \
-      (x) == AV_PIX_FMT_RGBA64LE    ||  \
       (x) == AV_PIX_FMT_RGB32       ||  \
       (x) == AV_PIX_FMT_RGB32_1     ||  \
       (x) == AV_PIX_FMT_RGB24       ||  \
       (x) == AV_PIX_FMT_RGB8        ||  \
       (x) == AV_PIX_FMT_RGB4        ||  \
       (x) == AV_PIX_FMT_RGB4_BYTE   ||  \
+      (x) == AV_PIX_FMT_RGBA64BE    ||  \
+      (x) == AV_PIX_FMT_RGBA64LE    ||  \
       (x) == AV_PIX_FMT_MONOBLACK   ||  \
 -     (x) == AV_PIX_FMT_MONOWHITE)
 -
 -#define isBGRinInt(x)                  \
 -    ((x) == AV_PIX_FMT_BGR48BE     ||  \
 +     (x) == AV_PIX_FMT_MONOWHITE   \
 +    )
 +#define isBGRinInt(x) \
 +    (           \
 +     (x) == AV_PIX_FMT_BGR48BE     ||  \
       (x) == AV_PIX_FMT_BGR48LE     ||  \
-      (x) == AV_PIX_FMT_BGRA64BE    ||  \
-      (x) == AV_PIX_FMT_BGRA64LE    ||  \
       (x) == AV_PIX_FMT_BGR32       ||  \
       (x) == AV_PIX_FMT_BGR32_1     ||  \
       (x) == AV_PIX_FMT_BGR24       ||  \
       (x) == AV_PIX_FMT_BGR8        ||  \
       (x) == AV_PIX_FMT_BGR4        ||  \
       (x) == AV_PIX_FMT_BGR4_BYTE   ||  \
+      (x) == AV_PIX_FMT_BGRA64BE    ||  \
+      (x) == AV_PIX_FMT_BGRA64LE    ||  \
       (x) == AV_PIX_FMT_MONOBLACK   ||  \
 -     (x) == AV_PIX_FMT_MONOWHITE)
 -
 -#define isAnyRGB(x)                    \
 -    (isRGBinInt(x)              ||     \
 -     isBGRinInt(x))
 +     (x) == AV_PIX_FMT_MONOWHITE   \
 +    )
 +
 +#define isRGBinBytes(x) (           \
 +           (x) == AV_PIX_FMT_RGB48BE     \
 +        || (x) == AV_PIX_FMT_RGB48LE     \
 +        || (x) == AV_PIX_FMT_RGBA64BE    \
 +        || (x) == AV_PIX_FMT_RGBA64LE    \
 +        || (x) == AV_PIX_FMT_RGBA        \
 +        || (x) == AV_PIX_FMT_ARGB        \
 +        || (x) == AV_PIX_FMT_RGB24       \
 +    )
 +#define isBGRinBytes(x) (           \
 +           (x) == AV_PIX_FMT_BGR48BE     \
 +        || (x) == AV_PIX_FMT_BGR48LE     \
 +        || (x) == AV_PIX_FMT_BGRA64BE    \
 +        || (x) == AV_PIX_FMT_BGRA64LE    \
 +        || (x) == AV_PIX_FMT_BGRA        \
 +        || (x) == AV_PIX_FMT_ABGR        \
 +        || (x) == AV_PIX_FMT_BGR24       \
 +    )
 +
 +#define isBayer(x) ( \
 +           (x)==AV_PIX_FMT_BAYER_BGGR8    \
 +        || (x)==AV_PIX_FMT_BAYER_BGGR16LE \
 +        || (x)==AV_PIX_FMT_BAYER_BGGR16BE \
 +        || (x)==AV_PIX_FMT_BAYER_RGGB8    \
 +        || (x)==AV_PIX_FMT_BAYER_RGGB16LE \
 +        || (x)==AV_PIX_FMT_BAYER_RGGB16BE \
 +        || (x)==AV_PIX_FMT_BAYER_GBRG8    \
 +        || (x)==AV_PIX_FMT_BAYER_GBRG16LE \
 +        || (x)==AV_PIX_FMT_BAYER_GBRG16BE \
 +        || (x)==AV_PIX_FMT_BAYER_GRBG8    \
 +        || (x)==AV_PIX_FMT_BAYER_GRBG16LE \
 +        || (x)==AV_PIX_FMT_BAYER_GRBG16BE \
 +    )
 +
 +#define isAnyRGB(x) \
 +    (           \
 +          isBayer(x)          ||    \
 +          isRGBinInt(x)       ||    \
 +          isBGRinInt(x)       ||    \
 +          isRGB(x)      \
 +    )
  
  static av_always_inline int isALPHA(enum AVPixelFormat pix_fmt)
  {