shithub: libvpx

Download patch

ref: 0ca7855f67a3a084b0f8de45cec14f8467619c71
parent: 2b9baca4f00a417eef615aedcaec1e6befdbeb1c
author: Yunqing Wang <yunqingwang@google.com>
date: Fri Aug 30 11:19:49 EDT 2013

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

--- a/vp9/encoder/vp9_rdopt.c
+++ b/vp9/encoder/vp9_rdopt.c
@@ -2916,8 +2916,8 @@
                 (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.