summaryrefslogtreecommitdiff
path: root/libavcodec/qsvenc.c
diff options
context:
space:
mode:
Diffstat (limited to 'libavcodec/qsvenc.c')
-rw-r--r--libavcodec/qsvenc.c7
1 files changed, 4 insertions, 3 deletions
diff --git a/libavcodec/qsvenc.c b/libavcodec/qsvenc.c
index e76c580b4a..55f1223f02 100644
--- a/libavcodec/qsvenc.c
+++ b/libavcodec/qsvenc.c
@@ -629,9 +629,10 @@ static int init_video_param(AVCodecContext *avctx, QSVEncContext *q)
#endif
}
- // the HEVC encoder plugin currently fails if coding options
- // are provided
- if (avctx->codec_id != AV_CODEC_ID_HEVC) {
+ // The HEVC encoder plugin currently fails with some old libmfx version if coding options
+ // are provided. Can't find the extract libmfx version which fixed it, just enable it from
+ // V1.28 in order to keep compatibility security.
+ if ((avctx->codec_id != AV_CODEC_ID_HEVC) || QSV_RUNTIME_VERSION_ATLEAST(q->ver, 1, 28)) {
q->extco.Header.BufferId = MFX_EXTBUFF_CODING_OPTION;
q->extco.Header.BufferSz = sizeof(q->extco);