In libx264 wrapper, fix side effect with has_b_frames, bframe_pyramid can be set
authorBaptiste Coudurier <baptiste.coudurier@gmail.com>
Sat, 23 Apr 2011 19:41:11 +0000 (12:41 -0700)
committerBaptiste Coudurier <baptiste.coudurier@gmail.com>
Sat, 23 Apr 2011 19:41:17 +0000 (12:41 -0700)
when bframe is not.

libavcodec/libx264.c

index acd1366..1b4e88b 100644 (file)
@@ -366,7 +366,8 @@ static av_cold int X264_init(AVCodecContext *avctx)
         x4->params.b_repeat_headers = 0;
 
     // update AVCodecContext with x264 parameters
-    avctx->has_b_frames = x4->params.i_bframe_pyramid ? 2 : !!x4->params.i_bframe;
+    avctx->has_b_frames = x4->params.i_bframe ?
+        x4->params.i_bframe_pyramid ? 2 : 1 : 0;
     avctx->bit_rate = x4->params.rc.i_bitrate*1000;
     avctx->crf = x4->params.rc.f_rf_constant;