OSDN Git Service

libx264: use the library specific default rc_initial_buffer_occupancy
authorLuca Barbato <lu_zero@gentoo.org>
Mon, 14 Jan 2013 04:32:39 +0000 (05:32 +0100)
committerLuca Barbato <lu_zero@gentoo.org>
Tue, 15 Jan 2013 07:58:51 +0000 (08:58 +0100)
By default libav sets it to 3/4 while x264 sets it to 9/10.

CC: libav-stable@libav.org
Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
libavcodec/libx264.c

index f536f7f..e9cbbad 100644 (file)
@@ -272,7 +272,7 @@ static av_cold int X264_init(AVCodecContext *avctx)
             x4->params.rc.f_rf_constant_max = x4->crf_max;
     }
 
-    if (avctx->rc_buffer_size && avctx->rc_initial_buffer_occupancy &&
+    if (avctx->rc_buffer_size && avctx->rc_initial_buffer_occupancy > 0 &&
         (avctx->rc_initial_buffer_occupancy <= avctx->rc_buffer_size)) {
         x4->params.rc.f_vbv_buffer_init =
             (float)avctx->rc_initial_buffer_occupancy / avctx->rc_buffer_size;
@@ -560,6 +560,7 @@ static const AVCodecDefault x264_defaults[] = {
     { "threads",          AV_STRINGIFY(X264_THREADS_AUTO) },
     { "thread_type",      "0" },
     { "flags",            "+cgop" },
+    { "rc_init_occupancy","-1" },
     { NULL },
 };