From e309fdc7018a1027d187ec27fb1d69a41a4ee167 Mon Sep 17 00:00:00 2001 From: Peter Ross Date: Thu, 17 Mar 2011 21:15:57 +1100 Subject: [PATCH] Add PIX_FMT_BGR48LE and PIX_FMT_BGR48BE pixel formats Signed-off-by: Michael Niedermayer --- doc/APIchanges | 3 +++ libavutil/avutil.h | 2 +- libavutil/pixdesc.c | 23 +++++++++++++++++++++++ libavutil/pixfmt.h | 3 +++ 4 files changed, 30 insertions(+), 1 deletion(-) diff --git a/doc/APIchanges b/doc/APIchanges index d9d744ad79..ff88d7f269 100644 --- a/doc/APIchanges +++ b/doc/APIchanges @@ -12,6 +12,9 @@ libavutil: 2009-03-08 API changes, most recent first: +2011-XX-XX - XXXXXXX - lavu XX.XXX.X - pixfmt.h + Add PIX_FMT_BGR48LE and PIX_FMT_BGR48BE pixel formats + 2011-02-20 - e731b8d - lavf 52.102.0 - avio.h * e731b8d - rename init_put_byte() to ffio_init_context(), deprecating the original, and move it to a private header so it is no longer diff --git a/libavutil/avutil.h b/libavutil/avutil.h index e887c4d5bf..095540cda4 100644 --- a/libavutil/avutil.h +++ b/libavutil/avutil.h @@ -40,7 +40,7 @@ #define AV_VERSION(a, b, c) AV_VERSION_DOT(a, b, c) #define LIBAVUTIL_VERSION_MAJOR 50 -#define LIBAVUTIL_VERSION_MINOR 39 +#define LIBAVUTIL_VERSION_MINOR 40 #define LIBAVUTIL_VERSION_MICRO 0 #define LIBAVUTIL_VERSION_INT AV_VERSION_INT(LIBAVUTIL_VERSION_MAJOR, \ diff --git a/libavutil/pixdesc.c b/libavutil/pixdesc.c index 83aa8b01d0..82dda06b4b 100644 --- a/libavutil/pixdesc.c +++ b/libavutil/pixdesc.c @@ -630,6 +630,29 @@ const AVPixFmtDescriptor av_pix_fmt_descriptors[PIX_FMT_NB] = { {0,1,1,0,3}, /* B */ }, }, + [PIX_FMT_BGR48BE] = { + .name = "bgr48be", + .nb_components= 3, + .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 */ + }, + .flags = PIX_FMT_BE, + }, + [PIX_FMT_BGR48LE] = { + .name = "bgr48le", + .nb_components= 3, + .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 */ + }, + }, [PIX_FMT_BGR565BE] = { .name = "bgr565be", .nb_components= 3, diff --git a/libavutil/pixfmt.h b/libavutil/pixfmt.h index 8ec91c816f..de92f8f028 100644 --- a/libavutil/pixfmt.h +++ b/libavutil/pixfmt.h @@ -133,6 +133,8 @@ enum PixelFormat { PIX_FMT_BGR444BE, ///< packed BGR 4:4:4, 16bpp, (msb)4A 4B 4G 4R(lsb), big-endian, most significant bits to 1 PIX_FMT_BGR444LE, ///< packed BGR 4:4:4, 16bpp, (msb)4A 4B 4G 4R(lsb), little-endian, most significant bits to 1 PIX_FMT_Y400A, ///< 8bit gray, 8bit alpha + PIX_FMT_BGR48BE, ///< packed RGB 16:16:16, 48bpp, 16B, 16G, 16R, the 2-byte value for each R/G/B component is stored as big-endian + PIX_FMT_BGR48LE, ///< packed RGB 16:16:16, 48bpp, 16B, 16G, 16R, the 2-byte value for each R/G/B component is stored as little-endian 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 }; @@ -152,6 +154,7 @@ enum PixelFormat { #define PIX_FMT_RGB565 PIX_FMT_NE(RGB565BE, RGB565LE) #define PIX_FMT_RGB555 PIX_FMT_NE(RGB555BE, RGB555LE) #define PIX_FMT_RGB444 PIX_FMT_NE(RGB444BE, RGB444LE) +#define PIX_FMT_BGR48 PIX_FMT_NE(BGR48BE, BGR48LE) #define PIX_FMT_BGR565 PIX_FMT_NE(BGR565BE, BGR565LE) #define PIX_FMT_BGR555 PIX_FMT_NE(BGR555BE, BGR555LE) #define PIX_FMT_BGR444 PIX_FMT_NE(BGR444BE, BGR444LE)