diff options
author | Haihao Xiang <haihao.xiang@intel.com> | 2022-07-05 11:04:49 +0800 |
---|---|---|
committer | Haihao Xiang <haihao.xiang@intel.com> | 2022-08-12 10:43:39 +0800 |
commit | e0bbdbe0a6f6a7848cfe760f1417067a0fab410a (patch) | |
tree | 18be30c5442e5af9b005c0bfd0679649f40ed115 | |
parent | c77149bc37f5a200e635c60bf6eb4efc7b03af91 (diff) | |
download | ffmpeg-e0bbdbe0a6f6a7848cfe760f1417067a0fab410a.tar.gz |
lavu/hwcontext_qsv: add loader field to AVQSVDeviceContext
In oneVPL, a valid mfxLoader handle is needed when creating mfx session
for decoding, encoding and processing[1], so add loader field to
AVQSVDeviceContext. User should fill this field before calling
av_hwdevice_ctx_init() if using oneVPL
This is in preparation for oneVPL support
[1]https://spec.oneapi.io/versions/latest/elements/oneVPL/source/programming_guide/VPL_prg_session.html#onevpl-dispatcher
-rw-r--r-- | doc/APIchanges | 3 | ||||
-rw-r--r-- | libavutil/hwcontext_qsv.h | 11 | ||||
-rw-r--r-- | libavutil/version.h | 4 |
3 files changed, 16 insertions, 2 deletions
diff --git a/doc/APIchanges b/doc/APIchanges index 0bf2b3cd77..a196bc40d4 100644 --- a/doc/APIchanges +++ b/doc/APIchanges @@ -14,6 +14,9 @@ libavutil: 2021-04-27 API changes, most recent first: +2022-08-xx - xxxxxxxxxx - lavu 57.33.100 - hwcontext_qsv.h + Add loader field to AVQSVDeviceContext + 2022-08-03 - xxxxxxxxxx - lavu 57.32.100 - pixfmt.h Add AV_PIX_FMT_VUYA. diff --git a/libavutil/hwcontext_qsv.h b/libavutil/hwcontext_qsv.h index 42e34d0dda..e2dba8ad83 100644 --- a/libavutil/hwcontext_qsv.h +++ b/libavutil/hwcontext_qsv.h @@ -34,6 +34,17 @@ */ typedef struct AVQSVDeviceContext { mfxSession session; + /** + * The mfxLoader handle used for mfxSession creation + * + * This field is only available for oneVPL user. For non-oneVPL user, this + * field must be set to NULL. + * + * Filled by the user before calling av_hwdevice_ctx_init() and should be + * cast to mfxLoader handle. Deallocating the AVHWDeviceContext will always + * release this interface. + */ + void *loader; } AVQSVDeviceContext; /** diff --git a/libavutil/version.h b/libavutil/version.h index ee43526dc6..f0a8b5c098 100644 --- a/libavutil/version.h +++ b/libavutil/version.h @@ -79,8 +79,8 @@ */ #define LIBAVUTIL_VERSION_MAJOR 57 -#define LIBAVUTIL_VERSION_MINOR 32 -#define LIBAVUTIL_VERSION_MICRO 101 +#define LIBAVUTIL_VERSION_MINOR 33 +#define LIBAVUTIL_VERSION_MICRO 100 #define LIBAVUTIL_VERSION_INT AV_VERSION_INT(LIBAVUTIL_VERSION_MAJOR, \ LIBAVUTIL_VERSION_MINOR, \ |