shithub: libvpx

Download patch

ref: a2db88fc26a9392312201c385e75f111fd82130e
parent: f116abf774246608c5e1498b8d674436bacaa9a4
author: Yaowu Xu <yaowu@google.com>
date: Fri May 24 05:23:15 EDT 2013

Fix two bugs

1) Added an initialization of rd_tx_select_threshs[].
2) Made updating transform size counts to be consistent

Change-Id: Iaa9d6c6be825b0364c9d61a9802873d01356815c

--- a/vp9/encoder/vp9_encodeframe.c
+++ b/vp9/encoder/vp9_encodeframe.c
@@ -1201,6 +1201,7 @@
   vpx_memset(cpi->txfm_count_16x16p, 0, sizeof(cpi->txfm_count_16x16p));
   vpx_memset(cpi->txfm_count_8x8p, 0, sizeof(cpi->txfm_count_8x8p));
   vpx_memset(cpi->rd_tx_select_diff, 0, sizeof(cpi->rd_tx_select_diff));
+  vpx_memset(cpi->rd_tx_select_threshes, 0, sizeof(cpi->rd_tx_select_threshes));
   {
     struct vpx_usec_timer  emr_timer;
     vpx_usec_timer_start(&emr_timer);
@@ -1688,7 +1689,8 @@
   }
 
   if (output_enabled) {
-    if (cm->txfm_mode == TX_MODE_SELECT && mbmi->mode != I4X4_PRED &&
+    if (cm->txfm_mode == TX_MODE_SELECT &&
+        mbmi->sb_type >= BLOCK_SIZE_SB8X8 &&
         !(mbmi->ref_frame != INTRA_FRAME && (mbmi->mb_skip_coeff ||
           vp9_segfeature_active(xd, segment_id, SEG_LVL_SKIP)))) {
       if (bsize >= BLOCK_SIZE_SB32X32) {