From e0b7b6dc3d8678e431faeebcfae4be7dda87a5ec Mon Sep 17 00:00:00 2001 From: Cameron Gutman Date: Wed, 11 May 2022 22:48:15 -0500 Subject: [PATCH] Fix DXGI_FEATURE_PRESENT_ALLOW_TEARING feature check --- app/streaming/video/ffmpeg-renderers/d3d11va.cpp | 16 ++++++++++++---- 1 file changed, 12 insertions(+), 4 deletions(-) diff --git a/app/streaming/video/ffmpeg-renderers/d3d11va.cpp b/app/streaming/video/ffmpeg-renderers/d3d11va.cpp index 3a68b625..81683611 100644 --- a/app/streaming/video/ffmpeg-renderers/d3d11va.cpp +++ b/app/streaming/video/ffmpeg-renderers/d3d11va.cpp @@ -337,13 +337,21 @@ bool D3D11VARenderer::initialize(PDECODER_PARAMETERS params) &allowTearing, sizeof(allowTearing)); if (SUCCEEDED(hr)) { - // Use flip discard with allow tearing mode if possible. - swapChainDesc.Flags |= DXGI_SWAP_CHAIN_FLAG_ALLOW_TEARING; - m_AllowTearing = true; + if (allowTearing) { + // Use flip discard with allow tearing mode if possible. + swapChainDesc.Flags |= DXGI_SWAP_CHAIN_FLAG_ALLOW_TEARING; + m_AllowTearing = true; + } + else { + SDL_LogWarn(SDL_LOG_CATEGORY_APPLICATION, + "OS/GPU doesn't support DXGI_FEATURE_PRESENT_ALLOW_TEARING"); + } } else { SDL_LogError(SDL_LOG_CATEGORY_APPLICATION, - "GPU driver doesn't support DXGI_FEATURE_PRESENT_ALLOW_TEARING"); + "IDXGIFactory::CheckFeatureSupport(DXGI_FEATURE_PRESENT_ALLOW_TEARING) failed: %x", + hr); + // Non-fatal } }