[FFmpeg-cvslog] pixfmt: add AV_PIX_FMT_GRAY32

Lynne git at videolan.org
Sat Mar 1 14:11:28 EET 2025


ffmpeg | branch: master | Lynne <dev at lynne.ee> | Wed Jan 22 00:17:11 2025 +0900| [300b82c3eada64643a5d1ed2ffec5dde5849ba5e] | committer: Lynne

pixfmt: add AV_PIX_FMT_GRAY32

This is a useful format for high-precision intermediates.

> http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=300b82c3eada64643a5d1ed2ffec5dde5849ba5e
---

 libavutil/pixdesc.c | 21 +++++++++++++++++++++
 libavutil/pixfmt.h  |  4 ++++
 2 files changed, 25 insertions(+)

diff --git a/libavutil/pixdesc.c b/libavutil/pixdesc.c
index 6fe83cd16b..7ffc8f3b2e 100644
--- a/libavutil/pixdesc.c
+++ b/libavutil/pixdesc.c
@@ -797,6 +797,27 @@ static const AVPixFmtDescriptor av_pix_fmt_descriptors[AV_PIX_FMT_NB] = {
         },
         .alias = "y16le",
     },
+    [AV_PIX_FMT_GRAY32BE] = {
+        .name = "gray32be",
+        .nb_components = 1,
+        .log2_chroma_w = 0,
+        .log2_chroma_h = 0,
+        .comp = {
+            { 0, 4, 0, 0, 32 },       /* Y */
+        },
+        .flags = AV_PIX_FMT_FLAG_BE,
+        .alias = "y32be",
+    },
+    [AV_PIX_FMT_GRAY32LE] = {
+        .name = "gray32le",
+        .nb_components = 1,
+        .log2_chroma_w = 0,
+        .log2_chroma_h = 0,
+        .comp = {
+            { 0, 4, 0, 0, 32 },       /* Y */
+        },
+        .alias = "y32le",
+    },
     [AV_PIX_FMT_YUV440P] = {
         .name = "yuv440p",
         .nb_components = 3,
diff --git a/libavutil/pixfmt.h b/libavutil/pixfmt.h
index a64d40ad07..ca1b22762b 100644
--- a/libavutil/pixfmt.h
+++ b/libavutil/pixfmt.h
@@ -476,6 +476,9 @@ enum AVPixelFormat {
      */
     AV_PIX_FMT_AMF_SURFACE,
 
+    AV_PIX_FMT_GRAY32BE,    ///<         Y        , 32bpp, big-endian
+    AV_PIX_FMT_GRAY32LE,    ///<         Y        , 32bpp, 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
 };
 
@@ -497,6 +500,7 @@ enum AVPixelFormat {
 #define AV_PIX_FMT_GRAY12 AV_PIX_FMT_NE(GRAY12BE, GRAY12LE)
 #define AV_PIX_FMT_GRAY14 AV_PIX_FMT_NE(GRAY14BE, GRAY14LE)
 #define AV_PIX_FMT_GRAY16 AV_PIX_FMT_NE(GRAY16BE, GRAY16LE)
+#define AV_PIX_FMT_GRAY32 AV_PIX_FMT_NE(GRAY32BE, GRAY32LE)
 #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)



More information about the ffmpeg-cvslog mailing list