diff options
author | Haihao Xiang <haihao.xiang@intel.com> | 2022-11-17 10:37:15 +0800 |
---|---|---|
committer | Haihao Xiang <haihao.xiang@intel.com> | 2022-11-22 13:52:38 +0800 |
commit | 3dc8bceabed0bb514342a3da24e6ae4eac8c2703 (patch) | |
tree | a32ef3e9b7e5528fa9790c76cd8e02d58695008a | |
parent | efe2b63c89462a46c0450da49832b3c9075b1222 (diff) | |
download | ffmpeg-3dc8bceabed0bb514342a3da24e6ae4eac8c2703.tar.gz |
lavu/pixfmt: Update the description for AV_PIX_FMT_QSV
Since D3D11 was introduced for QSV in FFmpeg 5.0, there is an implied
API/ABI change for user-supplied frames [1], hence update the
description for AV_PIX_FMT_QSV.
[1] https://ffmpeg.org/pipermail/ffmpeg-devel/2021-December/290444.html
Signed-off-by: Haihao Xiang <haihao.xiang@intel.com>
-rw-r--r-- | libavutil/pixfmt.h | 32 |
1 files changed, 30 insertions, 2 deletions
diff --git a/libavutil/pixfmt.h b/libavutil/pixfmt.h index 224670a731..37c2c79e01 100644 --- a/libavutil/pixfmt.h +++ b/libavutil/pixfmt.h @@ -206,8 +206,36 @@ enum AVPixelFormat { AV_PIX_FMT_GBRAP16BE, ///< planar GBRA 4:4:4:4 64bpp, big-endian AV_PIX_FMT_GBRAP16LE, ///< planar GBRA 4:4:4:4 64bpp, little-endian /** - * HW acceleration through QSV, data[3] contains a pointer to the - * mfxFrameSurface1 structure. + * HW acceleration through QSV, data[3] contains a pointer to the + * mfxFrameSurface1 structure. + * + * Before FFmpeg 5.0: + * mfxFrameSurface1.Data.MemId contains a pointer when importing + * the following frames as QSV frames: + * + * VAAPI: + * mfxFrameSurface1.Data.MemId contains a pointer to VASurfaceID + * + * DXVA2: + * mfxFrameSurface1.Data.MemId contains a pointer to IDirect3DSurface9 + * + * FFmpeg 5.0 and above: + * mfxFrameSurface1.Data.MemId contains a pointer to the mfxHDLPair + * structure when importing the following frames as QSV frames: + * + * VAAPI: + * mfxHDLPair.first contains a VASurfaceID pointer. + * mfxHDLPair.second is always MFX_INFINITE. + * + * DXVA2: + * mfxHDLPair.first contains IDirect3DSurface9 pointer. + * mfxHDLPair.second is always MFX_INFINITE. + * + * D3D11: + * mfxHDLPair.first contains a ID3D11Texture2D pointer. + * mfxHDLPair.second contains the texture array index of the frame if the + * ID3D11Texture2D is an array texture, or always MFX_INFINITE if it is a + * normal texture. */ AV_PIX_FMT_QSV, /** |