From 801fef26ecf7c50f99442d3d27562c784971f676 Mon Sep 17 00:00:00 2001 From: Jingning Han Date: Tue, 2 Sep 2014 18:05:03 -0700 Subject: [PATCH] Skip comp inter mode test in RD loop with same frame bias signs This commit allows the encoder to skip check on compound inter modes in the rate-distortion optimization loop, if the reference frame bias signs are the same. Change-Id: Ib753e6bb11cbdd338aee69dbe2b649671f75a6b0 --- vp9/encoder/vp9_rdopt.c | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/vp9/encoder/vp9_rdopt.c b/vp9/encoder/vp9_rdopt.c index 7aaa903e5..7ed313805 100644 --- a/vp9/encoder/vp9_rdopt.c +++ b/vp9/encoder/vp9_rdopt.c @@ -2779,9 +2779,8 @@ int64_t vp9_rd_pick_inter_mode_sb(VP9_COMP *cpi, MACROBLOCK *x, comp_pred = second_ref_frame > INTRA_FRAME; if (comp_pred) { - if (cpi->sf.alt_ref_search_fp) - if (!cm->show_frame) - continue; + if (!cm->allow_comp_inter_inter) + continue; if ((mode_search_skip_flags & FLAG_SKIP_COMP_BESTINTRA) && best_mode_index >=0 && @@ -3384,6 +3383,9 @@ int64_t vp9_rd_pick_inter_mode_sub8x8(VP9_COMP *cpi, MACROBLOCK *x, comp_pred = second_ref_frame > INTRA_FRAME; if (comp_pred) { + if (!cm->allow_comp_inter_inter) + continue; + if (!(cpi->ref_frame_flags & flag_list[second_ref_frame])) continue; // Do not allow compound prediction if the segment level reference frame