Fix to comp_inter_joint_search_thresh feature.
authorPaul Wilkins <paulwilkins@google.com>
Wed, 3 Jul 2013 11:53:36 +0000 (12:53 +0100)
committerPaul Wilkins <paulwilkins@google.com>
Wed, 3 Jul 2013 15:58:34 +0000 (16:58 +0100)
When this is 0 (BLOCK_SIZE_AB4X4) we want to do
the inter joint search for all sizes.

Change-Id: Id40cd6fe7790e7e1165352b9cef5e12fa8c0bc88

vp9/encoder/vp9_onyx_if.c
vp9/encoder/vp9_rdopt.c

index 6fa9f8e..e3a627e 100644 (file)
@@ -746,6 +746,7 @@ void vp9_set_speed_features(VP9_COMP *cpi) {
       sf->auto_mv_step_size = 1;
       sf->use_avoid_tested_higherror = 1;
       sf->adaptive_rd_thresh = 1;
+
       if (speed == 1) {
         sf->comp_inter_joint_search_thresh = BLOCK_SIZE_TYPES;
         sf->less_rectangular_check  = 1;
index a3710f4..3e53b39 100644 (file)
@@ -1892,7 +1892,7 @@ static void rd_check_segment_txsize(VP9_COMP *cpi, MACROBLOCK *x,
 
           // adjust src pointers
           mi_buf_shift(x, i);
-          if (cpi->sf.comp_inter_joint_search_thresh < bsize) {
+          if (cpi->sf.comp_inter_joint_search_thresh <= bsize) {
             int rate_mv;
             joint_motion_search(cpi, x, bsize, frame_mv[this_mode],
                                 mi_row, mi_col, seg_mvs[i],
@@ -2551,7 +2551,7 @@ static int64_t handle_inter_mode(VP9_COMP *cpi, MACROBLOCK *x,
         frame_mv[refs[0]].as_int = single_newmv[refs[0]].as_int;
         frame_mv[refs[1]].as_int = single_newmv[refs[1]].as_int;
 
-        if (cpi->sf.comp_inter_joint_search_thresh < bsize) {
+        if (cpi->sf.comp_inter_joint_search_thresh <= bsize) {
           joint_motion_search(cpi, x, bsize, frame_mv,
                               mi_row, mi_col, single_newmv, &rate_mv);
         } else {