diff options
author | Timo Rothenpieler <timo@rothenpieler.org> | 2024-03-13 20:03:42 +0100 |
---|---|---|
committer | Timo Rothenpieler <timo@rothenpieler.org> | 2024-03-18 13:28:30 +0100 |
commit | 6e78d92399f4c4942c21238c805f7eed10132b79 (patch) | |
tree | 88905b929a7abaecf5b3696d7974fafbcbeb1a47 /libavutil/hwcontext_d3d11va.c | |
parent | ae5453503d1e63ef2cf6e6658e1d0b12470a39c7 (diff) | |
download | ffmpeg-6e78d92399f4c4942c21238c805f7eed10132b79.tar.gz |
avutil/hwcontext_d3d11va: prefer DXGI 1.1 factory when available
A lot of modern stuff straight up fails on the old 1.0 factory, which is
masked by the fact that it's only used when an explicit adapter is
specified.
Diffstat (limited to 'libavutil/hwcontext_d3d11va.c')
-rw-r--r-- | libavutil/hwcontext_d3d11va.c | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/libavutil/hwcontext_d3d11va.c b/libavutil/hwcontext_d3d11va.c index a45e53595d..1b96c38d25 100644 --- a/libavutil/hwcontext_d3d11va.c +++ b/libavutil/hwcontext_d3d11va.c @@ -62,7 +62,9 @@ static av_cold void load_functions(void) return; mD3D11CreateDevice = (PFN_D3D11_CREATE_DEVICE) GetProcAddress(d3dlib, "D3D11CreateDevice"); - mCreateDXGIFactory = (PFN_CREATE_DXGI_FACTORY) GetProcAddress(dxgilib, "CreateDXGIFactory"); + mCreateDXGIFactory = (PFN_CREATE_DXGI_FACTORY) GetProcAddress(dxgilib, "CreateDXGIFactory1"); + if (!mCreateDXGIFactory) + mCreateDXGIFactory = (PFN_CREATE_DXGI_FACTORY) GetProcAddress(dxgilib, "CreateDXGIFactory"); #else // In UWP (which lacks LoadLibrary), CreateDXGIFactory isn't available, // only CreateDXGIFactory1 |