From f89cff96d080a238e3b7c7020db08c0f8ed796e4 Mon Sep 17 00:00:00 2001 From: Haihao Xiang Date: Tue, 28 Nov 2023 12:42:27 +0800 Subject: [PATCH] lavu/hwcontext_qsv: Make sure hardware vendor is Intel for qsv on d3d11va When multiple hardwares are available, the default one might not be Intel Hardware. We can use option vendor_id to choose the required vendor. Tested-by: Artem Galin Signed-off-by: Haihao Xiang --- libavutil/hwcontext_qsv.c | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/libavutil/hwcontext_qsv.c b/libavutil/hwcontext_qsv.c index 7f4a0fda0f..a67552b5ac 100644 --- a/libavutil/hwcontext_qsv.c +++ b/libavutil/hwcontext_qsv.c @@ -2200,6 +2200,12 @@ static int qsv_device_create(AVHWDeviceContext *ctx, const char *device, #endif #if CONFIG_D3D11VA case AV_HWDEVICE_TYPE_D3D11VA: + { + // Make sure the hardware vendor is Intel when multiple devices are + // available, it will be ignored if user specifies the child device + // explicitly + av_dict_set(&child_device_opts, "vendor_id", "0x8086", 0); + } break; #endif #if CONFIG_DXVA2