ref: 200d93545e51fcae1535c5a4d7f4a6862b16b10e
parent: 4f7060a431ac8e9f15d06f9cb44bd6792c3d1fae
parent: df3e3ab6ff03cdcbcb2d4658e619f8d96538f28a
author: Jingning Han <jingning@google.com>
date: Tue Dec 16 12:04:04 EST 2014
Merge "Fix intra mode update process in vp9_pick_inter_mode"
--- a/vp9/encoder/vp9_pickmode.c
+++ b/vp9/encoder/vp9_pickmode.c
@@ -872,7 +872,6 @@
const PREDICTION_MODE this_mode = intra_mode_list[i];
if (!((1 << this_mode) & cpi->sf.intra_y_mode_mask[intra_tx_size]))
continue;
- skip_txfm = x->skip_txfm[0];
args.mode = this_mode;
args.rate = 0;
args.dist = 0;
@@ -893,10 +892,13 @@
mbmi->ref_frame[0] = INTRA_FRAME;
mbmi->uv_mode = this_mode;
mbmi->mv[0].as_int = INVALID_MV;
- } else {
- x->skip_txfm[0] = best_mode_skip_txfm;
- mbmi->tx_size = best_tx_size;
}
+ }
+
+ // Reset mb_mode_info to the best inter mode.
+ if (mbmi->ref_frame[0] != INTRA_FRAME) {
+ x->skip_txfm[0] = best_mode_skip_txfm;
+ mbmi->tx_size = best_tx_size;
}
}
--
⑨