Commit 6cd35857 authored by stefano's avatar stefano

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.


git-svn-id: file:///var/local/repositories/ffmpeg/trunk@18133 9553f0bf-9b14-0410-a0b8-cfaf0461ba5b
parent 2c976e2d
...@@ -216,16 +216,32 @@ static const PixFmtInfo pix_fmt_info[PIX_FMT_NB] = { ...@@ -216,16 +216,32 @@ static const PixFmtInfo pix_fmt_info[PIX_FMT_NB] = {
.depth = 16, .depth = 16,
.x_chroma_shift = 0, .y_chroma_shift = 0, .x_chroma_shift = 0, .y_chroma_shift = 0,
}, },
[PIX_FMT_RGB565] = { [PIX_FMT_RGB565BE] = {
.name = "rgb565", .name = "rgb565be",
.nb_channels = 3, .nb_channels = 3,
.color_type = FF_COLOR_RGB, .color_type = FF_COLOR_RGB,
.pixel_type = FF_PIXEL_PACKED, .pixel_type = FF_PIXEL_PACKED,
.depth = 5, .depth = 5,
.x_chroma_shift = 0, .y_chroma_shift = 0, .x_chroma_shift = 0, .y_chroma_shift = 0,
}, },
[PIX_FMT_RGB555] = { [PIX_FMT_RGB565LE] = {
.name = "rgb555", .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, .nb_channels = 3,
.color_type = FF_COLOR_RGB, .color_type = FF_COLOR_RGB,
.pixel_type = FF_PIXEL_PACKED, .pixel_type = FF_PIXEL_PACKED,
...@@ -327,16 +343,32 @@ static const PixFmtInfo pix_fmt_info[PIX_FMT_NB] = { ...@@ -327,16 +343,32 @@ static const PixFmtInfo pix_fmt_info[PIX_FMT_NB] = {
.depth = 8, .depth = 8,
.x_chroma_shift = 0, .y_chroma_shift = 0, .x_chroma_shift = 0, .y_chroma_shift = 0,
}, },
[PIX_FMT_BGR565] = { [PIX_FMT_BGR565BE] = {
.name = "bgr565", .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_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, .nb_channels = 3,
.color_type = FF_COLOR_RGB, .color_type = FF_COLOR_RGB,
.pixel_type = FF_PIXEL_PACKED, .pixel_type = FF_PIXEL_PACKED,
.depth = 5, .depth = 5,
.x_chroma_shift = 0, .y_chroma_shift = 0, .x_chroma_shift = 0, .y_chroma_shift = 0,
}, },
[PIX_FMT_BGR555] = { [PIX_FMT_BGR555LE] = {
.name = "bgr555", .name = "bgr555le",
.nb_channels = 3, .nb_channels = 3,
.color_type = FF_COLOR_RGB, .color_type = FF_COLOR_RGB,
.pixel_type = FF_PIXEL_PACKED, .pixel_type = FF_PIXEL_PACKED,
......
...@@ -154,8 +154,6 @@ static const AVPixFmtDescriptor pix_fmt_desc[PIX_FMT_NB] = { ...@@ -154,8 +154,6 @@ static const AVPixFmtDescriptor pix_fmt_desc[PIX_FMT_NB] = {
}, },
.flags = PIX_FMT_BE, .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] = { [PIX_FMT_RGB565LE] = {
.name = "rgb565le", .name = "rgb565le",
.nb_channels = 3, .nb_channels = 3,
...@@ -179,7 +177,6 @@ static const AVPixFmtDescriptor pix_fmt_desc[PIX_FMT_NB] = { ...@@ -179,7 +177,6 @@ static const AVPixFmtDescriptor pix_fmt_desc[PIX_FMT_NB] = {
}, },
.flags = PIX_FMT_BE, .flags = PIX_FMT_BE,
}, },
#endif
[PIX_FMT_MONOBLACK] = { [PIX_FMT_MONOBLACK] = {
.name = "monoblack", .name = "monoblack",
.nb_channels = 1, .nb_channels = 1,
......
...@@ -35,7 +35,7 @@ ...@@ -35,7 +35,7 @@
#define AV_VERSION(a, b, c) AV_VERSION_DOT(a, b, c) #define AV_VERSION(a, b, c) AV_VERSION_DOT(a, b, c)
#define LIBAVUTIL_VERSION_MAJOR 50 #define LIBAVUTIL_VERSION_MAJOR 50
#define LIBAVUTIL_VERSION_MINOR 0 #define LIBAVUTIL_VERSION_MINOR 1
#define LIBAVUTIL_VERSION_MICRO 0 #define LIBAVUTIL_VERSION_MICRO 0
#define LIBAVUTIL_VERSION_INT AV_VERSION_INT(LIBAVUTIL_VERSION_MAJOR, \ #define LIBAVUTIL_VERSION_INT AV_VERSION_INT(LIBAVUTIL_VERSION_MAJOR, \
......
...@@ -66,8 +66,6 @@ enum PixelFormat { ...@@ -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_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_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_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_GRAY8, ///< Y , 8bpp
PIX_FMT_MONOWHITE, ///< Y , 1bpp, 0 is white, 1 is black PIX_FMT_MONOWHITE, ///< Y , 1bpp, 0 is white, 1 is black
PIX_FMT_MONOBLACK, ///< Y , 1bpp, 0 is black, 1 is white PIX_FMT_MONOBLACK, ///< Y , 1bpp, 0 is black, 1 is white
...@@ -80,8 +78,6 @@ enum PixelFormat { ...@@ -80,8 +78,6 @@ enum PixelFormat {
PIX_FMT_UYVY422, ///< packed YUV 4:2:2, 16bpp, Cb Y0 Cr Y1 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_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_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_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, ///< 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) PIX_FMT_BGR4_BYTE, ///< packed RGB 1:2:1, 8bpp, (msb)1B 2G 1R(lsb)
...@@ -106,6 +102,17 @@ enum PixelFormat { ...@@ -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_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_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_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_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_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 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 { ...@@ -132,5 +139,9 @@ enum PixelFormat {
#define PIX_FMT_GRAY16 PIX_FMT_NE(GRAY16) #define PIX_FMT_GRAY16 PIX_FMT_NE(GRAY16)
#define PIX_FMT_RGB48 PIX_FMT_NE(RGB48) #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 */ #endif /* AVUTIL_PIXFMT_H */
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment