[SCM] libav/experimental: prevent assert failure with negative quant_offset
siretart at users.alioth.debian.org
siretart at users.alioth.debian.org
Sun Jun 30 16:04:25 UTC 2013
The following commit has been merged in the experimental branch:
commit 2711cb28f46463760f0326d806fe5ef9551ade2c
Author: Michael Niedermayer <michaelni at gmx.at>
Date: Sun Jul 29 21:34:31 2007 +0000
prevent assert failure with negative quant_offset
Originally committed as revision 9830 to svn://svn.ffmpeg.org/ffmpeg/trunk
diff --git a/libavcodec/ratecontrol.c b/libavcodec/ratecontrol.c
index d62bc85..961f835 100644
--- a/libavcodec/ratecontrol.c
+++ b/libavcodec/ratecontrol.c
@@ -371,6 +371,7 @@ static double get_qscale(MpegEncContext *s, RateControlEntry *rce, double rate_f
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(MpegEncContext *s, RateControlEntry *rce, doubl
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){
--
Libav/FFmpeg packaging
More information about the pkg-multimedia-commits
mailing list