From 9dcd856099661f3a575a4bd781af6182864eab10 Mon Sep 17 00:00:00 2001 From: Cameron Gutman Date: Sun, 9 Sep 2018 10:48:01 -0700 Subject: [PATCH] Blacklist Kepler GPUs for HEVC due to hybrid decode support present in some drivers --- app/streaming/video/ffmpeg-renderers/dxva2.cpp | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-) diff --git a/app/streaming/video/ffmpeg-renderers/dxva2.cpp b/app/streaming/video/ffmpeg-renderers/dxva2.cpp index f41e8729..5109fa59 100644 --- a/app/streaming/video/ffmpeg-renderers/dxva2.cpp +++ b/app/streaming/video/ffmpeg-renderers/dxva2.cpp @@ -389,10 +389,18 @@ bool DXVA2Renderer::isDecoderBlacklisted() } else if (id.VendorId == 0x10DE) { // For NVIDIA, we wait to avoid those GPUs with Feature Set E - // for HEVC decoding, since that's hybrid. + // for HEVC decoding, since that's hybrid. It appears that Kepler GPUs + // also had some hybrid decode support (per DXVA2 Checker) so we'll + // blacklist those too. // https://en.wikipedia.org/wiki/Nvidia_PureVideo + // https://bluesky23.yukishigure.com/en/dxvac/deviceInfo/decoder.html // http://envytools.readthedocs.io/en/latest/hw/pciid.html (missing GM200) - if ((id.DeviceId >= 0x1340 && id.DeviceId <= 0x137F) || // GM108 + if ((id.DeviceId >= 0x1180 && id.DeviceId <= 0x11BF) || // GK104 + (id.DeviceId >= 0x11C0 && id.DeviceId <= 0x11FF) || // GK106 + (id.DeviceId >= 0x0FC0 && id.DeviceId <= 0x0FFF) || // GK107 + (id.DeviceId >= 0x1000 && id.DeviceId <= 0x103F) || // GK110/GK110B + (id.DeviceId >= 0x1280 && id.DeviceId <= 0x12BF) || // GK208 + (id.DeviceId >= 0x1340 && id.DeviceId <= 0x137F) || // GM108 (id.DeviceId >= 0x1380 && id.DeviceId <= 0x13BF) || // GM107 (id.DeviceId >= 0x13C0 && id.DeviceId <= 0x13FF) || // GM204 (id.DeviceId >= 0x1617 && id.DeviceId <= 0x161A) || // GM204