ref: cc00eea676ae1201949036a1ce1e87bfb7b7f75e
parent: 73805bfa706994fe8f430e2328527de6e9f1107b
author: Jingning Han <[email protected]>
date: Mon Sep 15 05:59:20 EDT 2014
Replace best_ref_index table fetch with best_mbmode This commit replaces the best_ref_index table fetch with the use of best_mbmode in vp9_rd_pick_inter_mode_sub8x8. Change-Id: I882ee9ee6a8c0e61befcca1f4dba6d2ea8de8f13
--- a/vp9/encoder/vp9_rdopt.c
+++ b/vp9/encoder/vp9_rdopt.c
@@ -3369,7 +3369,7 @@
// skip mask to look at a subset of the remaining modes.
if (ref_index > 2 && cpi->sf.mode_skip_start < MAX_MODES) {
if (ref_index == 3) {
- switch (vp9_ref_order[best_ref_index].ref_frame[0]) {
+ switch (best_mbmode.ref_frame[0]) {
case INTRA_FRAME:
break;
case LAST_FRAME:
@@ -3418,7 +3418,7 @@
if (vp9_segfeature_active(seg, segment_id, SEG_LVL_REF_FRAME))
continue;
if ((cpi->sf.mode_search_skip_flags & FLAG_SKIP_COMP_BESTINTRA) &&
- vp9_ref_order[best_ref_index].ref_frame[0] == INTRA_FRAME)
+ best_mbmode.ref_frame[0] == INTRA_FRAME)
continue;
}
@@ -3806,7 +3806,7 @@
// If we used an estimate for the uv intra rd in the loop above...
if (cpi->sf.use_uv_intra_rd_estimate) {
// Do Intra UV best rd mode selection if best mode choice above was intra.
- if (vp9_ref_order[best_ref_index].ref_frame[0] == INTRA_FRAME) {
+ if (best_mbmode.ref_frame[0] == INTRA_FRAME) {
*mbmi = best_mbmode;
rd_pick_intra_sbuv_mode(cpi, x, ctx, &rate_uv_intra,
&rate_uv_tokenonly,