[FFmpeg-devel] [PATCH 1/3] avutil: add AYVU16LE and AYVU16BE packed pixel format

Paul B Mahol onemda at gmail.com
Fri Jul 3 18:16:31 CEST 2015


Signed-off-by: Paul B Mahol <onemda at gmail.com>
---
 libavutil/pixdesc.c | 26 ++++++++++++++++++++++++++
 libavutil/pixfmt.h  |  2 ++
 libavutil/version.h |  2 +-
 3 files changed, 29 insertions(+), 1 deletion(-)

diff --git a/libavutil/pixdesc.c b/libavutil/pixdesc.c
index 32dc4b8..3e23af3 100644
--- a/libavutil/pixdesc.c
+++ b/libavutil/pixdesc.c
@@ -1965,6 +1965,32 @@ const AVPixFmtDescriptor av_pix_fmt_descriptors[AV_PIX_FMT_NB] = {
         .name = "mmal",
         .flags = AV_PIX_FMT_FLAG_HWACCEL,
     },
+    [AV_PIX_FMT_AYUV16LE] = {
+        .name = "ayuv16le",
+        .nb_components = 4,
+        .log2_chroma_w = 0,
+        .log2_chroma_h = 0,
+        .comp = {
+            { 0, 7, 5, 0, 15 },        /* Y */
+            { 0, 7, 7, 0, 15 },        /* U */
+            { 0, 7, 3, 0, 15 },        /* V */
+            { 0, 7, 1, 0, 15 },        /* A */
+        },
+        .flags = AV_PIX_FMT_FLAG_ALPHA,
+    },
+    [AV_PIX_FMT_AYUV16BE] = {
+        .name = "ayuv16be",
+        .nb_components = 4,
+        .log2_chroma_w = 0,
+        .log2_chroma_h = 0,
+        .comp = {
+            { 0, 7, 5, 0, 15 },        /* Y */
+            { 0, 7, 7, 0, 15 },        /* U */
+            { 0, 7, 3, 0, 15 },        /* V */
+            { 0, 7, 1, 0, 15 },        /* A */
+        },
+        .flags = AV_PIX_FMT_FLAG_BE | AV_PIX_FMT_FLAG_ALPHA,
+    },
 };
 
 static const char *color_range_names[AVCOL_RANGE_NB] = {
diff --git a/libavutil/pixfmt.h b/libavutil/pixfmt.h
index eef6444..90493c8 100644
--- a/libavutil/pixfmt.h
+++ b/libavutil/pixfmt.h
@@ -308,6 +308,8 @@ enum AVPixelFormat {
     AV_PIX_FMT_YUV440P10BE, ///< planar YUV 4:4:0,20bpp, (1 Cr & Cb sample per 1x2 Y samples), big-endian
     AV_PIX_FMT_YUV440P12LE, ///< planar YUV 4:4:0,24bpp, (1 Cr & Cb sample per 1x2 Y samples), little-endian
     AV_PIX_FMT_YUV440P12BE, ///< planar YUV 4:4:0,24bpp, (1 Cr & Cb sample per 1x2 Y samples), big-endian
+    AV_PIX_FMT_AYUV16LE,    ///< packed AYUV 4:4:4,64bpp (1 Cr & Cb sample per 1x1 Y & A samples), little-endian
+    AV_PIX_FMT_AYUV16BE,    ///< packed AYUV 4:4:4,64bpp (1 Cr & Cb sample per 1x1 Y & A samples), big-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
 
diff --git a/libavutil/version.h b/libavutil/version.h
index 215729e..e7155c2 100644
--- a/libavutil/version.h
+++ b/libavutil/version.h
@@ -56,7 +56,7 @@
  */
 
 #define LIBAVUTIL_VERSION_MAJOR  54
-#define LIBAVUTIL_VERSION_MINOR  27
+#define LIBAVUTIL_VERSION_MINOR  28
 #define LIBAVUTIL_VERSION_MICRO 100
 
 #define LIBAVUTIL_VERSION_INT   AV_VERSION_INT(LIBAVUTIL_VERSION_MAJOR, \
-- 
1.7.11.2



More information about the ffmpeg-devel mailing list