[SCM] libav/experimental: Map rc_buffer_size to and c_initial_buffer_occupancy to their libvpx counterparts.

siretart at users.alioth.debian.org siretart at users.alioth.debian.org
Sun Jun 30 17:12:56 UTC 2013


The following commit has been merged in the experimental branch:
commit 53cf47829a1b77cd71f31a52a80349f72a972bc0
Author: James Zern <jzern at google.com>
Date:   Wed Jul 28 08:02:35 2010 +0000

    Map rc_buffer_size to and c_initial_buffer_occupancy to their libvpx
    counterparts.
    
    Patch by James Zern, jzern at google
    
    Originally committed as revision 24566 to svn://svn.ffmpeg.org/ffmpeg/trunk

diff --git a/libavcodec/libvpxenc.c b/libavcodec/libvpxenc.c
index 66d184f..1115ec2 100644
--- a/libavcodec/libvpxenc.c
+++ b/libavcodec/libvpxenc.c
@@ -249,6 +249,14 @@ static av_cold int vp8_init(AVCodecContext *avctx)
         enccfg.rc_2pass_vbr_maxsection_pct =
             avctx->rc_max_rate * 100 / avctx->bit_rate;
 
+    if (avctx->rc_buffer_size)
+        enccfg.rc_buf_sz         =
+            avctx->rc_buffer_size * 1000 / avctx->bit_rate;
+    if (avctx->rc_initial_buffer_occupancy)
+        enccfg.rc_buf_initial_sz =
+            avctx->rc_initial_buffer_occupancy * 1000 / avctx->bit_rate;
+    enccfg.rc_buf_optimal_sz     = enccfg.rc_buf_sz * 5 / 6;
+
     //_enc_init() will balk if kf_min_dist differs from max w/VPX_KF_AUTO
     if (avctx->keyint_min == avctx->gop_size)
         enccfg.kf_min_dist = avctx->keyint_min;

-- 
Libav/FFmpeg packaging



More information about the pkg-multimedia-commits mailing list