[FFmpeg-devel] [PATCH] avcodec/nvdec: Fix capability check with old drivers.

Jacob Trimble modmaker at google.com
Thu Nov 30 22:35:50 EET 2017


Copied the check from cuviddec.c (*_cuvid decoders) to allow the
capability check to be optional for older drivers.

Signed-off-by: Jacob Trimble <modmaker at google.com>
---
 libavcodec/nvdec.c | 12 ++++++++++++
 1 file changed, 12 insertions(+)

diff --git a/libavcodec/nvdec.c b/libavcodec/nvdec.c
index c7a02ff40f..e9e6ea0f8b 100644
--- a/libavcodec/nvdec.c
+++ b/libavcodec/nvdec.c
@@ -91,6 +91,18 @@ static int nvdec_test_capabilities(NVDECDecoder *decoder,
     caps.eChromaFormat   = params->ChromaFormat;
     caps.nBitDepthMinus8 = params->bitDepthMinus8;
 
+    if (!decoder->cvdl->cuvidGetDecoderCaps) {
+        av_log(logctx, AV_LOG_WARNING, "Used Nvidia driver is too old to perform a capability check.\n");
+        av_log(logctx, AV_LOG_WARNING, "The minimum required version is "
+#if defined(_WIN32) || defined(__CYGWIN__)
+            "378.66"
+#else
+            "378.13"
+#endif
+            ". Continuing blind.\n");
+        return 0;
+    }
+
     err = decoder->cvdl->cuvidGetDecoderCaps(&caps);
     if (err != CUDA_SUCCESS) {
         av_log(logctx, AV_LOG_ERROR, "Failed querying decoder capabilities\n");
-- 
2.15.0.531.g2ccb3012c9-goog



More information about the ffmpeg-devel mailing list