diff --git a/vp10/common/entropymv.c b/vp10/common/entropymv.c index ebf7a079b..6b99606ff 100644 --- a/vp10/common/entropymv.c +++ b/vp10/common/entropymv.c @@ -161,17 +161,19 @@ static void inc_mv_component(int v, nmv_component_counts *comp_counts, } } -void vp10_inc_mv(const MV *mv, nmv_context_counts *counts) { +void vp10_inc_mv(const MV *mv, nmv_context_counts *counts, const int usehp) { if (counts != NULL) { const MV_JOINT_TYPE j = vp10_get_mv_joint(mv); ++counts->joints[j]; if (mv_joint_vertical(j)) { - inc_mv_component(mv->row, &counts->comps[0], 1, 1); + inc_mv_component(mv->row, &counts->comps[0], 1, + !CONFIG_MISC_FIXES || usehp); } if (mv_joint_horizontal(j)) { - inc_mv_component(mv->col, &counts->comps[1], 1, 1); + inc_mv_component(mv->col, &counts->comps[1], 1, + !CONFIG_MISC_FIXES || usehp); } } } diff --git a/vp10/common/entropymv.h b/vp10/common/entropymv.h index fd9f1c0ce..d1eb95c57 100644 --- a/vp10/common/entropymv.h +++ b/vp10/common/entropymv.h @@ -124,7 +124,7 @@ typedef struct { nmv_component_counts comps[2]; } nmv_context_counts; -void vp10_inc_mv(const MV *mv, nmv_context_counts *mvctx); +void vp10_inc_mv(const MV *mv, nmv_context_counts *mvctx, const int usehp); #ifdef __cplusplus } // extern "C" diff --git a/vp10/decoder/decodemv.c b/vp10/decoder/decodemv.c index b190f734c..f157ada20 100644 --- a/vp10/decoder/decodemv.c +++ b/vp10/decoder/decodemv.c @@ -294,7 +294,7 @@ static INLINE void read_mv(vpx_reader *r, MV *mv, const MV *ref, if (mv_joint_horizontal(joint_type)) diff.col = read_mv_component(r, &ctx->comps[1], use_hp); - vp10_inc_mv(&diff, counts); + vp10_inc_mv(&diff, counts, use_hp); mv->row = ref->row + diff.row; mv->col = ref->col + diff.col; diff --git a/vp10/encoder/encodemv.c b/vp10/encoder/encodemv.c index f1fe5a78f..ca2de1fba 100644 --- a/vp10/encoder/encodemv.c +++ b/vp10/encoder/encodemv.c @@ -239,7 +239,7 @@ static void inc_mvs(const MB_MODE_INFO *mbmi, const MB_MODE_INFO_EXT *mbmi_ext, const MV *ref = &mbmi_ext->ref_mvs[mbmi->ref_frame[i]][0].as_mv; const MV diff = {mvs[i].as_mv.row - ref->row, mvs[i].as_mv.col - ref->col}; - vp10_inc_mv(&diff, counts); + vp10_inc_mv(&diff, counts, vp10_use_mv_hp(ref)); } }