Minor DAMR fixes Fix two minor issues in DAMR (one similar to #305 and another related to skip mode). No impact on performance. Change-Id: Ib4a1536a17657651f5af97ace749f686ca299e78
diff --git a/av1/common/reconinter.h b/av1/common/reconinter.h index e2eb245..1ec6895 100644 --- a/av1/common/reconinter.h +++ b/av1/common/reconinter.h
@@ -735,7 +735,6 @@ if (mbmi->skip_mode && COMP_REFINE_TYPE_FOR_SKIP < COMP_AFFINE_REFINE_START) return 0; - if (!mbmi->ref_frame[1]) return 0; return 1; }
diff --git a/av1/decoder/decodemv.c b/av1/decoder/decodemv.c index 8c030ca..fc22b85 100644 --- a/av1/decoder/decodemv.c +++ b/av1/decoder/decodemv.c
@@ -3225,7 +3225,9 @@ get_default_refinemv_flag(cm, mbmi); #endif // CONFIG_REFINEMV && !CONFIG_CWP #if CONFIG_AFFINE_REFINEMENT - mbmi->comp_refine_type = COMP_REFINE_TYPE_FOR_SKIP; + mbmi->comp_refine_type = mbmi->mode == NEAR_NEARMV_OPTFLOW + ? COMP_REFINE_TYPE_FOR_SKIP + : COMP_REFINE_SUBBLK2P; #endif // CONFIG_AFFINE_REFINEMENT } else { if (segfeature_active(&cm->seg, mbmi->segment_id, SEG_LVL_SKIP) ||
diff --git a/av1/encoder/rdopt.c b/av1/encoder/rdopt.c index d2394c0..5115034 100644 --- a/av1/encoder/rdopt.c +++ b/av1/encoder/rdopt.c
@@ -7414,7 +7414,9 @@ mbmi->cwp_idx = CWP_EQUAL; #endif // CONFIG_CWP #if CONFIG_AFFINE_REFINEMENT - mbmi->comp_refine_type = COMP_REFINE_TYPE_FOR_SKIP; + mbmi->comp_refine_type = this_mode == NEAR_NEARMV_OPTFLOW + ? COMP_REFINE_TYPE_FOR_SKIP + : COMP_REFINE_SUBBLK2P; #endif // CONFIG_AFFINE_REFINEMENT #if CONFIG_IBC_SR_EXT mbmi->use_intrabc[xd->tree_type == CHROMA_PART] = 0; @@ -7768,7 +7770,10 @@ search_state->best_mbmode.mode = NEAR_NEARMV; #endif // CONFIG_OPTFLOW_REFINEMENT #if CONFIG_AFFINE_REFINEMENT - search_state->best_mbmode.comp_refine_type = COMP_REFINE_TYPE_FOR_SKIP; + search_state->best_mbmode.comp_refine_type = + search_state->best_mbmode.mode == NEAR_NEARMV_OPTFLOW + ? COMP_REFINE_TYPE_FOR_SKIP + : COMP_REFINE_SUBBLK2P; #endif // CONFIG_AFFINE_REFINEMENT search_state->best_mbmode.ref_frame[0] = mbmi->ref_frame[0]; search_state->best_mbmode.ref_frame[1] = mbmi->ref_frame[1];