From 1799f2f81dc0da5359139ff4375fbe29772f0e37 Mon Sep 17 00:00:00 2001 From: "Ronald S. Bultje" Date: Fri, 2 Oct 2015 15:07:04 -0400 Subject: [PATCH] vp10: remove ref-MV-dependent use of HP. This change (in a new config experiment: universal_hp) removes the bitstream parsing dependency of the HP MV bit on the ref MV to be coded. It also cleans up clearing of the HP bit in near/nearestMV, since HP is always on if it's set in the frame header. This admittedly doesn't clean up the crap that could be cleaned up, but that's mostly because I think this needs some careful review; not so much for coding style, but more from hardware people and from the codec team on what we/you want. It would also be nice to get some actual numbers on the real quality impact of this change. If, for example, hardware people come up and tell us they don't actually care anymore, we should probably just this code as-is and do nothing (i.e. discard this patch). See issue 1036. Change-Id: Ic9b106f34422aa0f79de0c28125b72d566bd511a --- configure | 1 + vp10/common/entropymv.c | 4 ++++ 2 files changed, 5 insertions(+) diff --git a/configure b/configure index a40f3abb6..beedbdd1f 100755 --- a/configure +++ b/configure @@ -265,6 +265,7 @@ EXPERIMENT_LIST=" fp_mb_stats emulate_hardware misc_fixes + universal_hp " CONFIG_LIST=" dependency_tracking diff --git a/vp10/common/entropymv.c b/vp10/common/entropymv.c index 6b99606ff..2ef08a6ba 100644 --- a/vp10/common/entropymv.c +++ b/vp10/common/entropymv.c @@ -128,8 +128,12 @@ MV_CLASS_TYPE vp10_get_mv_class(int z, int *offset) { } int vp10_use_mv_hp(const MV *ref) { +#if CONFIG_UNIVERSAL_HP + return 1; +#else return (abs(ref->row) >> 3) < COMPANDED_MVREF_THRESH && (abs(ref->col) >> 3) < COMPANDED_MVREF_THRESH; +#endif } static void inc_mv_component(int v, nmv_component_counts *comp_counts, -- 2.40.0