summaryrefslogtreecommitdiff
path: root/libavutil
diff options
context:
space:
mode:
authorMichael Niedermayer <michaelni@gmx.at>2011-11-28 02:44:05 +0100
committerMichael Niedermayer <michaelni@gmx.at>2011-11-28 02:44:05 +0100
commitb14a2381f8882f21369bd4680dc17ae7db81e886 (patch)
tree4122e2e5b35d6750e7f304ff9aa639bfe0549bbf /libavutil
parent1e19927f12a2a65954aabf38b584025beff15cc3 (diff)
pixfmt: Add 32bit rgb without alpha formats
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
Diffstat (limited to 'libavutil')
-rw-r--r--libavutil/pixdesc.c50
-rw-r--r--libavutil/pixfmt.h6
2 files changed, 56 insertions, 0 deletions
diff --git a/libavutil/pixdesc.c b/libavutil/pixdesc.c
index 1d3cfdfedc..b89b11e0a2 100644
--- a/libavutil/pixdesc.c
+++ b/libavutil/pixdesc.c
@@ -464,6 +464,56 @@ const AVPixFmtDescriptor av_pix_fmt_descriptors[PIX_FMT_NB] = {
},
.flags = PIX_FMT_RGB,
},
+ [PIX_FMT_0RGB] = {
+ .name = "0rgb",
+ .nb_components= 3,
+ .log2_chroma_w= 0,
+ .log2_chroma_h= 0,
+ .comp = {
+ {0,3,2,0,7}, /* R */
+ {0,3,3,0,7}, /* G */
+ {0,3,4,0,7}, /* B */
+ },
+ .flags = PIX_FMT_RGB,
+ },
+ [PIX_FMT_RGB0] = {
+ .name = "rgb0",
+ .nb_components= 3,
+ .log2_chroma_w= 0,
+ .log2_chroma_h= 0,
+ .comp = {
+ {0,3,1,0,7}, /* R */
+ {0,3,2,0,7}, /* G */
+ {0,3,3,0,7}, /* B */
+ {0,3,4,0,7}, /* A */
+ },
+ .flags = PIX_FMT_RGB,
+ },
+ [PIX_FMT_0BGR] = {
+ .name = "0bgr",
+ .nb_components= 3,
+ .log2_chroma_w= 0,
+ .log2_chroma_h= 0,
+ .comp = {
+ {0,3,2,0,7}, /* B */
+ {0,3,3,0,7}, /* G */
+ {0,3,4,0,7}, /* R */
+ },
+ .flags = PIX_FMT_RGB,
+ },
+ [PIX_FMT_BGR0] = {
+ .name = "bgr0",
+ .nb_components= 3,
+ .log2_chroma_w= 0,
+ .log2_chroma_h= 0,
+ .comp = {
+ {0,3,1,0,7}, /* B */
+ {0,3,2,0,7}, /* G */
+ {0,3,3,0,7}, /* R */
+ {0,3,4,0,7}, /* A */
+ },
+ .flags = PIX_FMT_RGB,
+ },
[PIX_FMT_GRAY16BE] = {
.name = "gray16be",
.nb_components= 1,
diff --git a/libavutil/pixfmt.h b/libavutil/pixfmt.h
index 2930a9b681..f0d9c019af 100644
--- a/libavutil/pixfmt.h
+++ b/libavutil/pixfmt.h
@@ -175,6 +175,10 @@ enum PixelFormat {
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
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
+ PIX_FMT_0RGB=0x123+4, ///< packed RGB 8:8:8, 32bpp, 0RGB0RGB...
+ PIX_FMT_RGB0, ///< packed RGB 8:8:8, 32bpp, RGB0RGB0...
+ PIX_FMT_0BGR, ///< packed BGR 8:8:8, 32bpp, 0BGR0BGR...
+ PIX_FMT_BGR0, ///< packed BGR 8:8:8, 32bpp, BGR0BGR0...
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
};
@@ -191,6 +195,8 @@ enum PixelFormat {
#define PIX_FMT_RGB32_1 PIX_FMT_NE(RGBA, ABGR)
#define PIX_FMT_BGR32 PIX_FMT_NE(ABGR, RGBA)
#define PIX_FMT_BGR32_1 PIX_FMT_NE(BGRA, ARGB)
+#define PIX_FMT_0RGB32 PIX_FMT_NE(0RGB, BGR0)
+#define PIX_FMT_0BGR32 PIX_FMT_NE(0BGR, RGB0)
#define PIX_FMT_GRAY16 PIX_FMT_NE(GRAY16BE, GRAY16LE)
#define PIX_FMT_RGB48 PIX_FMT_NE(RGB48BE, RGB48LE)