Skip comp inter mode test in RD loop with same frame bias signs
authorJingning Han <jingning@google.com>
Wed, 3 Sep 2014 01:05:03 +0000 (18:05 -0700)
committerJingning Han <jingning@google.com>
Wed, 3 Sep 2014 01:17:33 +0000 (18:17 -0700)
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

index 7aaa903..7ed3138 100644 (file)
@@ -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