From e9abafca278f87e1ecc6d50091d99b73ff63c9a6 Mon Sep 17 00:00:00 2001 From: Vittorio Giovara Date: Tue, 29 Jul 2014 14:06:22 +0100 Subject: avutil: add AV_PIX_FMT_YA16 pixel format --- doc/APIchanges | 3 +++ libavutil/pixdesc.c | 19 +++++++++++++++++++ libavutil/pixfmt.h | 5 +++++ libavutil/version.h | 4 ++-- 4 files changed, 29 insertions(+), 2 deletions(-) diff --git a/doc/APIchanges b/doc/APIchanges index 38e53bc15c..bd1b0b89ec 100644 --- a/doc/APIchanges +++ b/doc/APIchanges @@ -13,6 +13,9 @@ libavutil: 2013-12-xx API changes, most recent first: +2014-08-xx - xxxxxxx - lavu 53.22.0 - pixfmt.h + Add AV_PIX_FMT_YA16 pixel format for 16 bit packed gray with alpha. + 2014-08-xx - xxxxxxx - lavu 53.21.1 - avstring.h Rename AV_PIX_FMT_Y400A to AV_PIX_FMT_YA8 to better identify the format. An alias pixel format and color space name are provided for compatibility. diff --git a/libavutil/pixdesc.c b/libavutil/pixdesc.c index 526e0010d4..3215276164 100644 --- a/libavutil/pixdesc.c +++ b/libavutil/pixdesc.c @@ -1349,6 +1349,24 @@ const AVPixFmtDescriptor av_pix_fmt_descriptors[AV_PIX_FMT_NB] = { .flags = AV_PIX_FMT_FLAG_ALPHA, .alias = "gray8a", }, + [AV_PIX_FMT_YA16LE] = { + .name = "ya16le", + .nb_components = 2, + .comp = { + { 0, 3, 1, 0, 15 }, /* Y */ + { 0, 3, 3, 0, 15 }, /* A */ + }, + .flags = AV_PIX_FMT_FLAG_ALPHA, + }, + [AV_PIX_FMT_YA16BE] = { + .name = "ya16be", + .nb_components = 2, + .comp = { + { 0, 3, 1, 0, 15 }, /* Y */ + { 0, 3, 3, 0, 15 }, /* A */ + }, + .flags = AV_PIX_FMT_FLAG_BE | AV_PIX_FMT_FLAG_ALPHA, + }, [AV_PIX_FMT_GBRP] = { .name = "gbrp", .nb_components = 3, @@ -1640,6 +1658,7 @@ enum AVPixelFormat av_pix_fmt_swap_endianness(enum AVPixelFormat pix_fmt) switch (pix_fmt) { PIX_FMT_SWAP_ENDIANNESS(GRAY16); + PIX_FMT_SWAP_ENDIANNESS(YA16); PIX_FMT_SWAP_ENDIANNESS(RGB48); PIX_FMT_SWAP_ENDIANNESS(RGB565); PIX_FMT_SWAP_ENDIANNESS(RGB555); diff --git a/libavutil/pixfmt.h b/libavutil/pixfmt.h index 835550ad18..47951e060d 100644 --- a/libavutil/pixfmt.h +++ b/libavutil/pixfmt.h @@ -202,6 +202,10 @@ enum AVPixelFormat { AV_PIX_FMT_YVYU422, ///< packed YUV 4:2:2, 16bpp, Y0 Cr Y1 Cb AV_PIX_FMT_VDA, ///< HW acceleration through VDA, data[3] contains a CVPixelBufferRef + + AV_PIX_FMT_YA16BE, ///< 16bit gray, 16bit alpha (big-endian) + AV_PIX_FMT_YA16LE, ///< 16bit gray, 16bit alpha (little-endian) + AV_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 #if FF_API_PIX_FMT @@ -221,6 +225,7 @@ enum AVPixelFormat { #define AV_PIX_FMT_BGR32_1 AV_PIX_FMT_NE(BGRA, ARGB) #define AV_PIX_FMT_GRAY16 AV_PIX_FMT_NE(GRAY16BE, GRAY16LE) +#define AV_PIX_FMT_YA16 AV_PIX_FMT_NE(YA16BE, YA16LE) #define AV_PIX_FMT_RGB48 AV_PIX_FMT_NE(RGB48BE, RGB48LE) #define AV_PIX_FMT_RGB565 AV_PIX_FMT_NE(RGB565BE, RGB565LE) #define AV_PIX_FMT_RGB555 AV_PIX_FMT_NE(RGB555BE, RGB555LE) diff --git a/libavutil/version.h b/libavutil/version.h index 15ab8903bc..60bf0e41c6 100644 --- a/libavutil/version.h +++ b/libavutil/version.h @@ -54,8 +54,8 @@ */ #define LIBAVUTIL_VERSION_MAJOR 53 -#define LIBAVUTIL_VERSION_MINOR 21 -#define LIBAVUTIL_VERSION_MICRO 1 +#define LIBAVUTIL_VERSION_MINOR 22 +#define LIBAVUTIL_VERSION_MICRO 0 #define LIBAVUTIL_VERSION_INT AV_VERSION_INT(LIBAVUTIL_VERSION_MAJOR, \ LIBAVUTIL_VERSION_MINOR, \ -- cgit v1.2.3