diff mbox series

[FFmpeg-devel,v2,10/12] lavu/hwcontext_vaapi: relax the requirement when using libva2 (VAAPI 1)

Message ID 20231220071050.3175819-10-haihao.xiang@intel.com
State New
Headers show
Series [FFmpeg-devel,v2,01/12] lavu/hwcontext_qsv: update AVQSVFramesContext to support dynamic frame pools | expand

Checks

Context Check Description
yinshiyou/make_loongarch64 success Make finished
yinshiyou/make_fate_loongarch64 success Make fate finished
andriy/make_x86 success Make finished
andriy/make_fate_x86 success Make fate finished

Commit Message

Xiang, Haihao Dec. 20, 2023, 7:10 a.m. UTC
From: Haihao Xiang <haihao.xiang@intel.com>

With libva2, the argument for render target list to vaCreateContext() is
a hint, so we may use a dynamic frame pool.

Signed-off-by: Haihao Xiang <haihao.xiang@intel.com>
---
 doc/APIchanges              | 4 ++++
 libavutil/hwcontext_vaapi.c | 2 +-
 libavutil/hwcontext_vaapi.h | 5 +++--
 libavutil/version.h         | 2 +-
 4 files changed, 9 insertions(+), 4 deletions(-)
diff mbox series

Patch

diff --git a/doc/APIchanges b/doc/APIchanges
index b68156ee94..0e36f43a91 100644
--- a/doc/APIchanges
+++ b/doc/APIchanges
@@ -2,6 +2,10 @@  The last version increases of all libraries were on 2023-02-09
 
 API changes, most recent first:
 
+2023-12-xx - xxxxxxxxxx  - lavu 58.37.100 - hwcontext_vaapi.h
+  Modify the documentation to relax the constraint for dynamic
+  frames pool
+
 2023-12-xx - xxxxxxxxxx  - lavu 58.36.100 - hwcontext_qsv.h
   Add AVQSVFramesContext.info
 
diff --git a/libavutil/hwcontext_vaapi.c b/libavutil/hwcontext_vaapi.c
index 29fc8bd648..628232e2b8 100644
--- a/libavutil/hwcontext_vaapi.c
+++ b/libavutil/hwcontext_vaapi.c
@@ -618,7 +618,7 @@  static int vaapi_frames_init(AVHWFramesContext *hwfc)
             }
         } else {
             // This pool allows dynamic sizing, and will not be usable as a
-            // render target.
+            // render target with libva. It can be used with libva2
             avfc->nb_surfaces = 0;
             avfc->surface_ids = NULL;
         }
diff --git a/libavutil/hwcontext_vaapi.h b/libavutil/hwcontext_vaapi.h
index 0b2e071cb3..cff88ad237 100644
--- a/libavutil/hwcontext_vaapi.h
+++ b/libavutil/hwcontext_vaapi.h
@@ -25,9 +25,10 @@ 
  * @file
  * API-specific header for AV_HWDEVICE_TYPE_VAAPI.
  *
- * Dynamic frame pools are supported, but note that any pool used as a render
+ * Dynamic frame pools are supported. Note that any pool used as a render
  * target is required to be of fixed size in order to be be usable as an
- * argument to vaCreateContext().
+ * argument to vaCreateContext() when libva is used. When libva2 (VAAPI 1)
+ * is used, a pool used as a render target can be dynamic.
  *
  * For user-allocated pools, AVHWFramesContext.pool must return AVBufferRefs
  * with the data pointer set to a VASurfaceID.
diff --git a/libavutil/version.h b/libavutil/version.h
index 3b4c50e9a9..3b38f8f5da 100644
--- a/libavutil/version.h
+++ b/libavutil/version.h
@@ -79,7 +79,7 @@ 
  */
 
 #define LIBAVUTIL_VERSION_MAJOR  58
-#define LIBAVUTIL_VERSION_MINOR  36
+#define LIBAVUTIL_VERSION_MINOR  37
 #define LIBAVUTIL_VERSION_MICRO 100
 
 #define LIBAVUTIL_VERSION_INT   AV_VERSION_INT(LIBAVUTIL_VERSION_MAJOR, \