diff --git a/vp8/encoder/encodeframe.c b/vp8/encoder/encodeframe.c index 892284ed2cb5e5d20117b44c546e295cba32ad72..132e508580176e42ab47fc40eae6006472b18b6f 100644 --- a/vp8/encoder/encodeframe.c +++ b/vp8/encoder/encodeframe.c @@ -335,7 +335,8 @@ void vp8_activity_masking(VP8_COMP *cpi, MACROBLOCK *x) { #if USE_ACT_INDEX x->rdmult += *(x->mb_activity_ptr) * (x->rdmult >> 2); - x->errorperbit = x->rdmult/x->rddiv; + x->errorperbit = x->rdmult * 100 /(110 * x->rddiv); + x->errorperbit += (x->errorperbit==0); #else INT64 a; INT64 b; @@ -346,8 +347,8 @@ void vp8_activity_masking(VP8_COMP *cpi, MACROBLOCK *x) b = (2*act) + cpi->activity_avg; x->rdmult = (unsigned int)(((INT64)x->rdmult*b + (a>>1))/a); - x->errorperbit = x->rdmult/x->rddiv; - + x->errorperbit = x->rdmult * 100 /(110 * x->rddiv); + x->errorperbit += (x->errorperbit==0); #endif // Activity based Zbin adjustment diff --git a/vp8/encoder/rdopt.c b/vp8/encoder/rdopt.c index 5ce61a04e22f224ba66ff30998a2d5683277f656..e05ffdb1a757b046010506063d78f9300f9dc2ba 100644 --- a/vp8/encoder/rdopt.c +++ b/vp8/encoder/rdopt.c @@ -238,7 +238,7 @@ void vp8_initialize_rd_consts(VP8_COMP *cpi, int Qvalue) (cpi->RDMULT * rd_iifactor[cpi->twopass.next_iiratio]) >> 4; } - cpi->mb.errorperbit = (cpi->RDMULT / 100); + cpi->mb.errorperbit = (cpi->RDMULT / 110); cpi->mb.errorperbit += (cpi->mb.errorperbit==0); vp8_set_speed_features(cpi);