summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--libavcodec/ratecontrol.c7
1 files changed, 6 insertions, 1 deletions
diff --git a/libavcodec/ratecontrol.c b/libavcodec/ratecontrol.c
index 8ecec3c..29dc1f4 100644
--- a/libavcodec/ratecontrol.c
+++ b/libavcodec/ratecontrol.c
@@ -117,10 +117,11 @@ int ff_rate_control_init(MpegEncContext *s)
p= next;
}
-
+#ifdef CONFIG_XVID
//FIXME maybe move to end
if((s->flags&CODEC_FLAG_PASS2) && s->avctx->rc_strategy == FF_RC_STRATEGY_XVID)
return ff_xvid_rate_control_init(s);
+#endif
if(init_pass2(s) < 0) return -1;
}
@@ -187,8 +188,10 @@ void ff_rate_control_uninit(MpegEncContext *s)
av_freep(&rcc->entry);
+#ifdef CONFIG_XVID
if((s->flags&CODEC_FLAG_PASS2) && s->avctx->rc_strategy == FF_RC_STRATEGY_XVID)
ff_xvid_rate_control_uninit(s);
+#endif
}
static inline double qp2bits(RateControlEntry *rce, double qp){
@@ -648,8 +651,10 @@ float ff_rate_estimate_qscale(MpegEncContext *s, int dry_run)
Picture * const pic= &s->current_picture;
emms_c();
+#ifdef CONFIG_XVID
if((s->flags&CODEC_FLAG_PASS2) && s->avctx->rc_strategy == FF_RC_STRATEGY_XVID)
return ff_xvid_rate_estimate_qscale(s, dry_run);
+#endif
get_qminmax(&qmin, &qmax, s, pict_type);
OpenPOWER on IntegriCloud