Avoid rollover in settings conversion.
authorJames Zern <jzern@google.com>
Sun, 12 Dec 2010 16:27:32 +0000 (16:27 +0000)
committerCarl Eugen Hoyos <cehoyos@rainbow.studorg.tuwien.ac.at>
Sun, 12 Dec 2010 16:27:32 +0000 (16:27 +0000)
Patch by James Zern, jzern google

Originally committed as revision 25941 to svn://svn.ffmpeg.org/ffmpeg/trunk

libavcodec/libvpxenc.c

index 4e16c72..d0838ba 100644 (file)
@@ -244,17 +244,17 @@ static av_cold int vp8_init(AVCodecContext *avctx)
     //0-100 (0 => CBR, 100 => VBR)
     enccfg.rc_2pass_vbr_bias_pct           = round(avctx->qcompress * 100);
     enccfg.rc_2pass_vbr_minsection_pct     =
-        avctx->rc_min_rate * 100 / avctx->bit_rate;
+        avctx->rc_min_rate * 100LL / avctx->bit_rate;
     if (avctx->rc_max_rate)
         enccfg.rc_2pass_vbr_maxsection_pct =
-            avctx->rc_max_rate * 100 / avctx->bit_rate;
+            avctx->rc_max_rate * 100LL / avctx->bit_rate;
 
     if (avctx->rc_buffer_size)
         enccfg.rc_buf_sz         =
-            avctx->rc_buffer_size * 1000 / avctx->bit_rate;
+            avctx->rc_buffer_size * 1000LL / avctx->bit_rate;
     if (avctx->rc_initial_buffer_occupancy)
         enccfg.rc_buf_initial_sz =
-            avctx->rc_initial_buffer_occupancy * 1000 / avctx->bit_rate;
+            avctx->rc_initial_buffer_occupancy * 1000LL / 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