[FFmpeg-cvslog] avcodec/nvdec: Fix capability check with old drivers.
Jacob Trimble
git at videolan.org
Fri Dec 8 19:09:42 EET 2017
ffmpeg | branch: master | Jacob Trimble <modmaker-at-google.com at ffmpeg.org> | Thu Nov 30 12:35:50 2017 -0800| [2fdc9f7c4939f83a6c9d1f9d85b6d37ce0bab714] | committer: Timo Rothenpieler
avcodec/nvdec: Fix capability check with old drivers.
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>
Signed-off-by: Timo Rothenpieler <timo at rothenpieler.org>
> http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=2fdc9f7c4939f83a6c9d1f9d85b6d37ce0bab714
---
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");
More information about the ffmpeg-cvslog
mailing list