[FFmpeg-devel,01/15] lavu: Add OpenCL hardware pixfmt

Submitted by Mark Thompson on Nov. 14, 2017, 7:47 p.m.

Details

Message ID 20171114194730.11052-2-sw@jkqxz.net
State New
Headers show

Commit Message

Mark Thompson Nov. 14, 2017, 7:47 p.m.
---
 doc/APIchanges      | 3 +++
 libavutil/pixdesc.c | 4 ++++
 libavutil/pixfmt.h  | 7 +++++++
 3 files changed, 14 insertions(+)

Patch hide | download patch | download mbox

diff --git a/doc/APIchanges b/doc/APIchanges
index d336f6ce22..3f68bcccd2 100644
--- a/doc/APIchanges
+++ b/doc/APIchanges
@@ -15,6 +15,9 @@  libavutil:     2017-10-21
 
 API changes, most recent first:
 
+2017-xx-xx - xxxxxxx - lavu 55.n+1.0 - pixfmt.h
+  Add AV_PIX_FMT_OPENCL.
+
 2017-xx-xx - xxxxxxx - lavc 58.3.100 - avcodec.h
   Add avcodec_get_hw_frames_parameters().
 
diff --git a/libavutil/pixdesc.c b/libavutil/pixdesc.c
index 3d21e67a78..e77d5f44b9 100644
--- a/libavutil/pixdesc.c
+++ b/libavutil/pixdesc.c
@@ -2181,6 +2181,10 @@  static const AVPixFmtDescriptor av_pix_fmt_descriptors[AV_PIX_FMT_NB] = {
         .name = "drm_prime",
         .flags = AV_PIX_FMT_FLAG_HWACCEL,
     },
+    [AV_PIX_FMT_OPENCL] = {
+        .name  = "opencl",
+        .flags = AV_PIX_FMT_FLAG_HWACCEL,
+    },
 };
 #if FF_API_PLUS1_MINUS1
 FF_ENABLE_DEPRECATION_WARNINGS
diff --git a/libavutil/pixfmt.h b/libavutil/pixfmt.h
index a520028962..4c530fead3 100644
--- a/libavutil/pixfmt.h
+++ b/libavutil/pixfmt.h
@@ -322,6 +322,13 @@  enum AVPixelFormat {
      * data[0] points to an AVDRMFrameDescriptor.
      */
     AV_PIX_FMT_DRM_PRIME,
+    /**
+     * Hardware surfaces for OpenCL.
+     *
+     * data[i] contain 2D image objects (typed in C as cl_mem, used
+     * in OpenCL as image2d_t) for each plane of the surface.
+     */
+    AV_PIX_FMT_OPENCL,
 
     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
 };