comparison pixfmt.h @ 708:2cd525e90b45 libavutil

Make the pixel formats which were defined as macros: PIX_FMT_ARGB PIX_FMT_RGBA PIX_FMT_ABGR PIX_FMT_BGRA defined as enum PixelFormat values, and viceversa make: PIX_FMT_RGB32 PIX_FMT_RGB32_1 PIX_FMT_BGR32 PIX_FMT_BGR32_1 defined as macros, also resort accordingly the enum PixelFormat list. Also make avcodec_get_pix_fmt() recognize the "rgb32" and "bgr32" aliases, in order to make ffmpeg pass regressions test. This change breaks ABI backward compatibility.
author stefano
date Sun, 22 Mar 2009 22:50:19 +0000
parents 3138bb2c6780
children 336b1ad91362
comparison
equal deleted inserted replaced
707:3138bb2c6780 708:2cd525e90b45
61 PIX_FMT_YUYV422, ///< packed YUV 4:2:2, 16bpp, Y0 Cb Y1 Cr 61 PIX_FMT_YUYV422, ///< packed YUV 4:2:2, 16bpp, Y0 Cb Y1 Cr
62 PIX_FMT_RGB24, ///< packed RGB 8:8:8, 24bpp, RGBRGB... 62 PIX_FMT_RGB24, ///< packed RGB 8:8:8, 24bpp, RGBRGB...
63 PIX_FMT_BGR24, ///< packed RGB 8:8:8, 24bpp, BGRBGR... 63 PIX_FMT_BGR24, ///< packed RGB 8:8:8, 24bpp, BGRBGR...
64 PIX_FMT_YUV422P, ///< planar YUV 4:2:2, 16bpp, (1 Cr & Cb sample per 2x1 Y samples) 64 PIX_FMT_YUV422P, ///< planar YUV 4:2:2, 16bpp, (1 Cr & Cb sample per 2x1 Y samples)
65 PIX_FMT_YUV444P, ///< planar YUV 4:4:4, 24bpp, (1 Cr & Cb sample per 1x1 Y samples) 65 PIX_FMT_YUV444P, ///< planar YUV 4:4:4, 24bpp, (1 Cr & Cb sample per 1x1 Y samples)
66 PIX_FMT_RGB32, ///< packed RGB 8:8:8, 32bpp, (msb)8A 8R 8G 8B(lsb), in CPU endianness
67 PIX_FMT_YUV410P, ///< planar YUV 4:1:0, 9bpp, (1 Cr & Cb sample per 4x4 Y samples) 66 PIX_FMT_YUV410P, ///< planar YUV 4:1:0, 9bpp, (1 Cr & Cb sample per 4x4 Y samples)
68 PIX_FMT_YUV411P, ///< planar YUV 4:1:1, 12bpp, (1 Cr & Cb sample per 4x1 Y samples) 67 PIX_FMT_YUV411P, ///< planar YUV 4:1:1, 12bpp, (1 Cr & Cb sample per 4x1 Y samples)
69 PIX_FMT_GRAY8, ///< Y , 8bpp 68 PIX_FMT_GRAY8, ///< Y , 8bpp
70 PIX_FMT_MONOWHITE, ///< Y , 1bpp, 0 is white, 1 is black 69 PIX_FMT_MONOWHITE, ///< Y , 1bpp, 0 is white, 1 is black
71 PIX_FMT_MONOBLACK, ///< Y , 1bpp, 0 is black, 1 is white 70 PIX_FMT_MONOBLACK, ///< Y , 1bpp, 0 is black, 1 is white
75 PIX_FMT_YUVJ444P, ///< planar YUV 4:4:4, 24bpp, full scale (JPEG) 74 PIX_FMT_YUVJ444P, ///< planar YUV 4:4:4, 24bpp, full scale (JPEG)
76 PIX_FMT_XVMC_MPEG2_MC,///< XVideo Motion Acceleration via common packet passing 75 PIX_FMT_XVMC_MPEG2_MC,///< XVideo Motion Acceleration via common packet passing
77 PIX_FMT_XVMC_MPEG2_IDCT, 76 PIX_FMT_XVMC_MPEG2_IDCT,
78 PIX_FMT_UYVY422, ///< packed YUV 4:2:2, 16bpp, Cb Y0 Cr Y1 77 PIX_FMT_UYVY422, ///< packed YUV 4:2:2, 16bpp, Cb Y0 Cr Y1
79 PIX_FMT_UYYVYY411, ///< packed YUV 4:1:1, 12bpp, Cb Y0 Y1 Cr Y2 Y3 78 PIX_FMT_UYYVYY411, ///< packed YUV 4:1:1, 12bpp, Cb Y0 Y1 Cr Y2 Y3
80 PIX_FMT_BGR32, ///< packed RGB 8:8:8, 32bpp, (msb)8A 8B 8G 8R(lsb), in CPU endianness
81 PIX_FMT_BGR8, ///< packed RGB 3:3:2, 8bpp, (msb)2B 3G 3R(lsb) 79 PIX_FMT_BGR8, ///< packed RGB 3:3:2, 8bpp, (msb)2B 3G 3R(lsb)
82 PIX_FMT_BGR4, ///< packed RGB 1:2:1, 4bpp, (msb)1B 2G 1R(lsb) 80 PIX_FMT_BGR4, ///< packed RGB 1:2:1, 4bpp, (msb)1B 2G 1R(lsb)
83 PIX_FMT_BGR4_BYTE, ///< packed RGB 1:2:1, 8bpp, (msb)1B 2G 1R(lsb) 81 PIX_FMT_BGR4_BYTE, ///< packed RGB 1:2:1, 8bpp, (msb)1B 2G 1R(lsb)
84 PIX_FMT_RGB8, ///< packed RGB 3:3:2, 8bpp, (msb)2R 3G 3B(lsb) 82 PIX_FMT_RGB8, ///< packed RGB 3:3:2, 8bpp, (msb)2R 3G 3B(lsb)
85 PIX_FMT_RGB4, ///< packed RGB 1:2:1, 4bpp, (msb)1R 2G 1B(lsb) 83 PIX_FMT_RGB4, ///< packed RGB 1:2:1, 4bpp, (msb)1R 2G 1B(lsb)
86 PIX_FMT_RGB4_BYTE, ///< packed RGB 1:2:1, 8bpp, (msb)1R 2G 1B(lsb) 84 PIX_FMT_RGB4_BYTE, ///< packed RGB 1:2:1, 8bpp, (msb)1R 2G 1B(lsb)
87 PIX_FMT_NV12, ///< planar YUV 4:2:0, 12bpp, 1 plane for Y and 1 for UV 85 PIX_FMT_NV12, ///< planar YUV 4:2:0, 12bpp, 1 plane for Y and 1 for UV
88 PIX_FMT_NV21, ///< as above, but U and V bytes are swapped 86 PIX_FMT_NV21, ///< as above, but U and V bytes are swapped
89 87
90 PIX_FMT_RGB32_1, ///< packed RGB 8:8:8, 32bpp, (msb)8R 8G 8B 8A(lsb), in CPU endianness 88 PIX_FMT_ARGB, ///< packed ARGB 8:8:8:8, 32bpp, ARGBARGB...
91 PIX_FMT_BGR32_1, ///< packed RGB 8:8:8, 32bpp, (msb)8B 8G 8R 8A(lsb), in CPU endianness 89 PIX_FMT_RGBA, ///< packed RGBA 8:8:8:8, 32bpp, RGBARGBA...
90 PIX_FMT_ABGR, ///< packed ABGR 8:8:8:8, 32bpp, ABGRABGR...
91 PIX_FMT_BGRA, ///< packed BGRA 8:8:8:8, 32bpp, BGRABGRA...
92 92
93 PIX_FMT_GRAY16BE, ///< Y , 16bpp, big-endian 93 PIX_FMT_GRAY16BE, ///< Y , 16bpp, big-endian
94 PIX_FMT_GRAY16LE, ///< Y , 16bpp, little-endian 94 PIX_FMT_GRAY16LE, ///< Y , 16bpp, little-endian
95 PIX_FMT_YUV440P, ///< planar YUV 4:4:0 (1 Cr & Cb sample per 1x2 Y samples) 95 PIX_FMT_YUV440P, ///< planar YUV 4:4:0 (1 Cr & Cb sample per 1x2 Y samples)
96 PIX_FMT_YUVJ440P, ///< planar YUV 4:4:0 full scale (JPEG) 96 PIX_FMT_YUVJ440P, ///< planar YUV 4:4:0 full scale (JPEG)
124 #else 124 #else
125 # define PIX_FMT_NE(name) PIX_FMT_##name##LE 125 # define PIX_FMT_NE(name) PIX_FMT_##name##LE
126 #endif 126 #endif
127 127
128 #ifdef WORDS_BIGENDIAN 128 #ifdef WORDS_BIGENDIAN
129 #define PIX_FMT_RGBA PIX_FMT_RGB32_1 129 #define PIX_FMT_RGB32 PIX_FMT_ARGB
130 #define PIX_FMT_BGRA PIX_FMT_BGR32_1 130 #define PIX_FMT_RGB32_1 PIX_FMT_RGBA
131 #define PIX_FMT_ARGB PIX_FMT_RGB32 131 #define PIX_FMT_BGR32 PIX_FMT_ABGR
132 #define PIX_FMT_ABGR PIX_FMT_BGR32 132 #define PIX_FMT_BGR32_1 PIX_FMT_BGRA
133 #else 133 #else
134 #define PIX_FMT_RGBA PIX_FMT_BGR32 134 #define PIX_FMT_RGB32 PIX_FMT_BGRA
135 #define PIX_FMT_BGRA PIX_FMT_RGB32 135 #define PIX_FMT_RGB32_1 PIX_FMT_ABGR
136 #define PIX_FMT_ARGB PIX_FMT_BGR32_1 136 #define PIX_FMT_BGR32 PIX_FMT_RGBA
137 #define PIX_FMT_ABGR PIX_FMT_RGB32_1 137 #define PIX_FMT_BGR32_1 PIX_FMT_ARGB
138 #endif 138 #endif
139 139
140 #define PIX_FMT_GRAY16 PIX_FMT_NE(GRAY16) 140 #define PIX_FMT_GRAY16 PIX_FMT_NE(GRAY16)
141 #define PIX_FMT_RGB48 PIX_FMT_NE(RGB48) 141 #define PIX_FMT_RGB48 PIX_FMT_NE(RGB48)
142 #define PIX_FMT_RGB565 PIX_FMT_NE(RGB565) 142 #define PIX_FMT_RGB565 PIX_FMT_NE(RGB565)