From 0ca7855f67a3a084b0f8de45cec14f8467619c71 Mon Sep 17 00:00:00 2001 From: Yunqing Wang Date: Fri, 30 Aug 2013 15:19:49 -0700 Subject: [PATCH] Use correct bit cost while static-thresh is on While static-thresh is on, we only need to transmit skip flag if skip = 1. The cost of skip bit is added to the total rate cost. Change-Id: I64e73e482bc297eba22907026298a15fa8cc3920 --- vp9/encoder/vp9_rdopt.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/vp9/encoder/vp9_rdopt.c b/vp9/encoder/vp9_rdopt.c index 39b6544f6..647265bf6 100644 --- a/vp9/encoder/vp9_rdopt.c +++ b/vp9/encoder/vp9_rdopt.c @@ -2916,8 +2916,8 @@ static int64_t handle_inter_mode(VP9_COMP *cpi, MACROBLOCK *x, (sse_v - var_v < thresh_dc || sse_v == var_v)) { x->skip = 1; - *rate2 = 500; - *rate_uv = 0; + // The cost of skip bit needs to be added. + *rate2 += vp9_cost_bit(vp9_get_pred_prob_mbskip(cm, xd), 1); // Scaling factor for SSE from spatial domain to frequency domain // is 16. Adjust distortion accordingly.