[FFmpeg-cvslog] avcodec/librav1e: Require a bitrate to be set when using 2-pass mode

Derek Buitenhuis git at videolan.org
Sun May 3 19:06:44 EEST 2020


ffmpeg | branch: master | Derek Buitenhuis <derek.buitenhuis at gmail.com> | Sat May  2 14:10:48 2020 +0100| [422f1e32ead99a758375c713447b341c8ac3b20d] | committer: Derek Buitenhuis

avcodec/librav1e: Require a bitrate to be set when using 2-pass mode

Not requiring this leads to unexpected result, since Rav1e's current
two pass API has no way to fail in such a case.

Signed-off-by: Derek Buitenhuis <derek.buitenhuis at gmail.com>

> http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=422f1e32ead99a758375c713447b341c8ac3b20d
---

 libavcodec/librav1e.c | 6 ++++++
 1 file changed, 6 insertions(+)

diff --git a/libavcodec/librav1e.c b/libavcodec/librav1e.c
index b0ff60d8c7..6f9b4cce4c 100644
--- a/libavcodec/librav1e.c
+++ b/libavcodec/librav1e.c
@@ -202,6 +202,12 @@ static av_cold int librav1e_encode_init(AVCodecContext *avctx)
                                    });
     }
 
+    if ((avctx->flags & AV_CODEC_FLAG_PASS1 || avctx->flags & AV_CODEC_FLAG_PASS2) && !avctx->bit_rate) {
+        av_log(avctx, AV_LOG_ERROR, "A bitrate must be set to use two pass mode.\n");
+        ret = AVERROR_INVALIDDATA;
+        goto end;
+    }
+
     if (avctx->flags & AV_CODEC_FLAG_PASS2) {
         if (!avctx->stats_in) {
             av_log(avctx, AV_LOG_ERROR, "No stats file provided for second pass.\n");



More information about the ffmpeg-cvslog mailing list