From 3a1c8951bc886e8af30e09dc0e20491f6f5c3937 Mon Sep 17 00:00:00 2001 From: Michael Niedermayer Date: Thu, 12 Jun 2014 01:03:46 +0200 Subject: [PATCH] avcodec/libx264: fix "bitrate reconfiguration" --- libavcodec/libx264.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/libavcodec/libx264.c b/libavcodec/libx264.c index 0b304cbe10..5d1e203a7f 100644 --- a/libavcodec/libx264.c +++ b/libavcodec/libx264.c @@ -208,18 +208,20 @@ static int X264_frame(AVCodecContext *ctx, AVPacket *pkt, const AVFrame *frame, } if (x4->params.rc.i_rc_method == X264_RC_CRF && + x4->crf >= 0 && x4->params.rc.f_rf_constant != x4->crf) { x4->params.rc.f_rf_constant = x4->crf; x264_encoder_reconfig(x4->enc, &x4->params); } if (x4->params.rc.i_rc_method == X264_RC_CQP && + x4->cqp >= 0 && x4->params.rc.i_qp_constant != x4->cqp) { x4->params.rc.i_qp_constant = x4->cqp; x264_encoder_reconfig(x4->enc, &x4->params); } - if (x4->crf_max && + if (x4->crf_max >= 0 && x4->params.rc.f_rf_constant_max != x4->crf_max) { x4->params.rc.f_rf_constant_max = x4->crf_max; x264_encoder_reconfig(x4->enc, &x4->params);