shithub: libvpx

Download patch

ref: 9e7fec216e37e6efe364428d9cba2f7b70f8ef3a
parent: 317f0da91e8240a153d509d42bac4d62cc03bb52
author: Scott LaVarnway <slavarnway@google.com>
date: Mon Jan 31 14:53:02 EST 2011

Removed prediction_error accumulation

from vp8cx_encode_intra_macro_block.  prediction_error is used when
deciding if a frame should be a keyframe.  After reviewing this with
Yaowu, it was pointed out that vp8cx_encode_intra_macro_block
is only called for keyframes, so the accumulation is unnecessary.

Change-Id: Id79dc81b80d4f5d124f3a0dba1b923887e2e1ec8

--- a/vp8/encoder/encodeframe.c
+++ b/vp8/encoder/encodeframe.c
@@ -1185,22 +1185,11 @@
                 x->e_mbd.block[i].bmi.mode = intra_bmodes[i];
 
             vp8_encode_intra4x4mby(IF_RTCD(&cpi->rtcd), x);
-            cpi->prediction_error += Error4x4 ;
-#if 0
-            // Experimental RD code
-            cpi->frame_distortion += dist4x4;
-#endif
         }
         else
         {
             vp8_encode_intra16x16mby(IF_RTCD(&cpi->rtcd), x);
             rate += rate16x16;
-
-#if 0
-            // Experimental RD code
-            cpi->prediction_error += Error16x16;
-            cpi->frame_distortion += dist16x16;
-#endif
         }
 
         sum_intra_stats(cpi, x);
@@ -1245,13 +1234,11 @@
         {
             x->e_mbd.mode_info_context->mbmi.mode = B_PRED;
             vp8_encode_intra4x4mby(IF_RTCD(&cpi->rtcd), x);
-            cpi->prediction_error += Error4x4;
         }
         else
         {
             x->e_mbd.mode_info_context->mbmi.mode = best_mode;
             vp8_encode_intra16x16mby(IF_RTCD(&cpi->rtcd), x);
-            cpi->prediction_error += Error16x16;
         }
 
         vp8_pick_intra_mbuv_mode(x);