Module: libav
Branch: master
Commit: e62ff72fc1052273deb708ba715f73e5187281d4

Author:    Anton Khirnov <[email protected]>
Committer: Anton Khirnov <[email protected]>
Date:      Mon May  2 18:38:41 2016 +0200

lavc: make avcodec_open2() fail when the timebase is not set for encoding

Many encoders use it. There is also a divide by the timebase lower in
this function, which would crash when it is not set.

---

 libavcodec/utils.c |    7 +++++++
 1 file changed, 7 insertions(+)

diff --git a/libavcodec/utils.c b/libavcodec/utils.c
index d42885d..a0352b8 100644
--- a/libavcodec/utils.c
+++ b/libavcodec/utils.c
@@ -994,6 +994,13 @@ FF_DISABLE_DEPRECATION_WARNINGS
         }
 FF_ENABLE_DEPRECATION_WARNINGS
 #endif
+
+        if (avctx->time_base.num <= 0 || avctx->time_base.den <= 0) {
+            av_log(avctx, AV_LOG_ERROR, "The encoder timebase is not set.\n");
+            ret = AVERROR(EINVAL);
+            goto free_and_end;
+        }
+
         if (avctx->codec->sample_fmts) {
             for (i = 0; avctx->codec->sample_fmts[i] != AV_SAMPLE_FMT_NONE; 
i++) {
                 if (avctx->sample_fmt == avctx->codec->sample_fmts[i])

_______________________________________________
libav-commits mailing list
[email protected]
https://lists.libav.org/mailman/listinfo/libav-commits

Reply via email to