[FFmpeg-cvslog] r18133 - in trunk: libavcodec/imgconvert.c libavcodec/pixdesc.c libavutil/avutil.h libavutil/pixfmt.h
stefano
subversion
Sun Mar 22 00:08:21 CET 2009
Author: stefano
Date: Sun Mar 22 00:08:20 2009
New Revision: 18133
Log:
Change the RGB5X5/BGR5X5 pixel format defines so that we have little
endian and big endian variants instead of native-endian ones.
This patch breaks API/ABI backward-compatibility.
Modified:
trunk/libavcodec/imgconvert.c
trunk/libavcodec/pixdesc.c
trunk/libavutil/avutil.h
trunk/libavutil/pixfmt.h
Modified: trunk/libavcodec/imgconvert.c
==============================================================================
--- trunk/libavcodec/imgconvert.c Sat Mar 21 23:50:29 2009 (r18132)
+++ trunk/libavcodec/imgconvert.c Sun Mar 22 00:08:20 2009 (r18133)
@@ -216,16 +216,32 @@ static const PixFmtInfo pix_fmt_info[PIX
.depth = 16,
.x_chroma_shift = 0, .y_chroma_shift = 0,
},
- [PIX_FMT_RGB565] = {
- .name = "rgb565",
+ [PIX_FMT_RGB565BE] = {
+ .name = "rgb565be",
.nb_channels = 3,
.color_type = FF_COLOR_RGB,
.pixel_type = FF_PIXEL_PACKED,
.depth = 5,
.x_chroma_shift = 0, .y_chroma_shift = 0,
},
- [PIX_FMT_RGB555] = {
- .name = "rgb555",
+ [PIX_FMT_RGB565LE] = {
+ .name = "rgb565le",
+ .nb_channels = 3,
+ .color_type = FF_COLOR_RGB,
+ .pixel_type = FF_PIXEL_PACKED,
+ .depth = 5,
+ .x_chroma_shift = 0, .y_chroma_shift = 0,
+ },
+ [PIX_FMT_RGB555BE] = {
+ .name = "rgb555be",
+ .nb_channels = 3,
+ .color_type = FF_COLOR_RGB,
+ .pixel_type = FF_PIXEL_PACKED,
+ .depth = 5,
+ .x_chroma_shift = 0, .y_chroma_shift = 0,
+ },
+ [PIX_FMT_RGB555LE] = {
+ .name = "rgb555le",
.nb_channels = 3,
.color_type = FF_COLOR_RGB,
.pixel_type = FF_PIXEL_PACKED,
@@ -327,16 +343,32 @@ static const PixFmtInfo pix_fmt_info[PIX
.depth = 8,
.x_chroma_shift = 0, .y_chroma_shift = 0,
},
- [PIX_FMT_BGR565] = {
- .name = "bgr565",
+ [PIX_FMT_BGR565BE] = {
+ .name = "bgr565be",
.nb_channels = 3,
.color_type = FF_COLOR_RGB,
.pixel_type = FF_PIXEL_PACKED,
.depth = 5,
.x_chroma_shift = 0, .y_chroma_shift = 0,
},
- [PIX_FMT_BGR555] = {
- .name = "bgr555",
+ [PIX_FMT_BGR565LE] = {
+ .name = "bgr565le",
+ .nb_channels = 3,
+ .color_type = FF_COLOR_RGB,
+ .pixel_type = FF_PIXEL_PACKED,
+ .depth = 5,
+ .x_chroma_shift = 0, .y_chroma_shift = 0,
+ },
+ [PIX_FMT_BGR555BE] = {
+ .name = "bgr555be",
+ .nb_channels = 3,
+ .color_type = FF_COLOR_RGB,
+ .pixel_type = FF_PIXEL_PACKED,
+ .depth = 5,
+ .x_chroma_shift = 0, .y_chroma_shift = 0,
+ },
+ [PIX_FMT_BGR555LE] = {
+ .name = "bgr555le",
.nb_channels = 3,
.color_type = FF_COLOR_RGB,
.pixel_type = FF_PIXEL_PACKED,
Modified: trunk/libavcodec/pixdesc.c
==============================================================================
--- trunk/libavcodec/pixdesc.c Sat Mar 21 23:50:29 2009 (r18132)
+++ trunk/libavcodec/pixdesc.c Sun Mar 22 00:08:20 2009 (r18133)
@@ -154,8 +154,6 @@ static const AVPixFmtDescriptor pix_fmt_
},
.flags = PIX_FMT_BE,
},
-//FIXME change pix fmt defines so that we have a LE & BE instead of a native-endian
-#if 0
[PIX_FMT_RGB565LE] = {
.name = "rgb565le",
.nb_channels = 3,
@@ -179,7 +177,6 @@ static const AVPixFmtDescriptor pix_fmt_
},
.flags = PIX_FMT_BE,
},
-#endif
[PIX_FMT_MONOBLACK] = {
.name = "monoblack",
.nb_channels = 1,
Modified: trunk/libavutil/avutil.h
==============================================================================
--- trunk/libavutil/avutil.h Sat Mar 21 23:50:29 2009 (r18132)
+++ trunk/libavutil/avutil.h Sun Mar 22 00:08:20 2009 (r18133)
@@ -35,7 +35,7 @@
#define AV_VERSION(a, b, c) AV_VERSION_DOT(a, b, c)
#define LIBAVUTIL_VERSION_MAJOR 50
-#define LIBAVUTIL_VERSION_MINOR 0
+#define LIBAVUTIL_VERSION_MINOR 1
#define LIBAVUTIL_VERSION_MICRO 0
#define LIBAVUTIL_VERSION_INT AV_VERSION_INT(LIBAVUTIL_VERSION_MAJOR, \
Modified: trunk/libavutil/pixfmt.h
==============================================================================
--- trunk/libavutil/pixfmt.h Sat Mar 21 23:50:29 2009 (r18132)
+++ trunk/libavutil/pixfmt.h Sun Mar 22 00:08:20 2009 (r18133)
@@ -66,8 +66,6 @@ enum PixelFormat {
PIX_FMT_RGB32, ///< packed RGB 8:8:8, 32bpp, (msb)8A 8R 8G 8B(lsb), in CPU endianness
PIX_FMT_YUV410P, ///< planar YUV 4:1:0, 9bpp, (1 Cr & Cb sample per 4x4 Y samples)
PIX_FMT_YUV411P, ///< planar YUV 4:1:1, 12bpp, (1 Cr & Cb sample per 4x1 Y samples)
- PIX_FMT_RGB565, ///< packed RGB 5:6:5, 16bpp, (msb) 5R 6G 5B(lsb), in CPU endianness
- PIX_FMT_RGB555, ///< packed RGB 5:5:5, 16bpp, (msb)1A 5R 5G 5B(lsb), in CPU endianness, most significant bit to 0
PIX_FMT_GRAY8, ///< Y , 8bpp
PIX_FMT_MONOWHITE, ///< Y , 1bpp, 0 is white, 1 is black
PIX_FMT_MONOBLACK, ///< Y , 1bpp, 0 is black, 1 is white
@@ -80,8 +78,6 @@ enum PixelFormat {
PIX_FMT_UYVY422, ///< packed YUV 4:2:2, 16bpp, Cb Y0 Cr Y1
PIX_FMT_UYYVYY411, ///< packed YUV 4:1:1, 12bpp, Cb Y0 Y1 Cr Y2 Y3
PIX_FMT_BGR32, ///< packed RGB 8:8:8, 32bpp, (msb)8A 8B 8G 8R(lsb), in CPU endianness
- PIX_FMT_BGR565, ///< packed RGB 5:6:5, 16bpp, (msb) 5B 6G 5R(lsb), in CPU endianness
- PIX_FMT_BGR555, ///< packed RGB 5:5:5, 16bpp, (msb)1A 5B 5G 5R(lsb), in CPU endianness, most significant bit to 1
PIX_FMT_BGR8, ///< packed RGB 3:3:2, 8bpp, (msb)2B 3G 3R(lsb)
PIX_FMT_BGR4, ///< packed RGB 1:2:1, 4bpp, (msb)1B 2G 1R(lsb)
PIX_FMT_BGR4_BYTE, ///< packed RGB 1:2:1, 8bpp, (msb)1B 2G 1R(lsb)
@@ -106,6 +102,17 @@ enum PixelFormat {
PIX_FMT_VDPAU_VC1, ///< VC-1 HW decoding with VDPAU, data[0] contains a vdpau_render_state struct which contains the bitstream of the slices as well as various fields extracted from headers
PIX_FMT_RGB48BE, ///< packed RGB 16:16:16, 48bpp, 16R, 16G, 16B, big-endian
PIX_FMT_RGB48LE, ///< packed RGB 16:16:16, 48bpp, 16R, 16G, 16B, little-endian
+
+ PIX_FMT_RGB565BE, ///< packed RGB 5:6:5, 16bpp, (msb) 5R 6G 5B(lsb), big-endian
+ PIX_FMT_RGB565LE, ///< packed RGB 5:6:5, 16bpp, (msb) 5R 6G 5B(lsb), little-endian
+ PIX_FMT_RGB555BE, ///< packed RGB 5:5:5, 16bpp, (msb)1A 5R 5G 5B(lsb), big-endian, most significant bit to 0
+ PIX_FMT_RGB555LE, ///< packed RGB 5:5:5, 16bpp, (msb)1A 5R 5G 5B(lsb), little-endian, most significant bit to 0
+
+ PIX_FMT_BGR565BE, ///< packed BGR 5:6:5, 16bpp, (msb) 5B 6G 5R(lsb), big-endian
+ PIX_FMT_BGR565LE, ///< packed BGR 5:6:5, 16bpp, (msb) 5B 6G 5R(lsb), little-endian
+ PIX_FMT_BGR555BE, ///< packed BGR 5:5:5, 16bpp, (msb)1A 5B 5G 5R(lsb), big-endian, most significant bit to 1
+ PIX_FMT_BGR555LE, ///< packed BGR 5:5:5, 16bpp, (msb)1A 5B 5G 5R(lsb), little-endian, most significant bit to 1
+
PIX_FMT_VAAPI_MOCO, ///< HW acceleration through VA API at motion compensation entry-point, Picture.data[3] contains a vaapi_render_state struct which contains macroblocks as well as various fields extracted from headers
PIX_FMT_VAAPI_IDCT, ///< HW acceleration through VA API at IDCT entry-point, Picture.data[3] contains a vaapi_render_state struct which contains fields extracted from headers
PIX_FMT_VAAPI_VLD, ///< HW decoding through VA API, Picture.data[3] contains a vaapi_render_state struct which contains the bitstream of the slices as well as various fields extracted from headers
@@ -132,5 +139,9 @@ enum PixelFormat {
#define PIX_FMT_GRAY16 PIX_FMT_NE(GRAY16)
#define PIX_FMT_RGB48 PIX_FMT_NE(RGB48)
+#define PIX_FMT_RGB565 PIX_FMT_NE(RGB565)
+#define PIX_FMT_RGB555 PIX_FMT_NE(RGB555)
+#define PIX_FMT_BGR565 PIX_FMT_NE(BGR565)
+#define PIX_FMT_BGR555 PIX_FMT_NE(BGR555)
#endif /* AVUTIL_PIXFMT_H */
More information about the ffmpeg-cvslog
mailing list