[FFmpeg-cvslog] r9830 - trunk/libavcodec/ratecontrol.c

michael subversion
Sun Jul 29 23:34:31 CEST 2007


Author: michael
Date: Sun Jul 29 23:34:31 2007
New Revision: 9830

Log:
prevent assert failure wit negative quant_offset


Modified:
   trunk/libavcodec/ratecontrol.c

Modified: trunk/libavcodec/ratecontrol.c
==============================================================================
--- trunk/libavcodec/ratecontrol.c	(original)
+++ trunk/libavcodec/ratecontrol.c	Sun Jul 29 23:34:31 2007
@@ -371,6 +371,7 @@ static double get_qscale(MpegEncContext 
         q= -q*s->avctx->i_quant_factor + s->avctx->i_quant_offset;
     else if(pict_type==B_TYPE && s->avctx->b_quant_factor<0.0)
         q= -q*s->avctx->b_quant_factor + s->avctx->b_quant_offset;
+    if(q<1) q=1;
 
     return q;
 }
@@ -386,6 +387,7 @@ static double get_diff_limited_q(MpegEnc
         q= last_p_q    *FFABS(a->i_quant_factor) + a->i_quant_offset;
     else if(pict_type==B_TYPE && a->b_quant_factor>0.0)
         q= last_non_b_q*    a->b_quant_factor  + a->b_quant_offset;
+    if(q<1) q=1;
 
     /* last qscale / qdiff stuff */
     if(rcc->last_non_b_pict_type==pict_type || pict_type!=I_TYPE){




More information about the ffmpeg-cvslog mailing list