Commit b214775d authored by Debargha Mukherjee's avatar Debargha Mukherjee

Add an expt to remove allow high precision mv flag

Change-Id: I3873acafcd9539da96f67328cdb8faf7798be90f
parent bfbd8b39
......@@ -3112,10 +3112,18 @@ static size_t read_uncompressed_header(AV1Decoder *pbi,
if (cm->cur_frame_force_integer_mv) {
cm->allow_high_precision_mv = 0;
} else {
#if CONFIG_EIGHTH_PEL_MV_ONLY
cm->allow_high_precision_mv = 1;
#else
cm->allow_high_precision_mv = aom_rb_read_bit(rb);
#endif // CONFIG_EIGHTH_PEL_MV_ONLY
}
#else
#if CONFIG_EIGHTH_PEL_MV_ONLY
cm->allow_high_precision_mv = 1;
#else
cm->allow_high_precision_mv = aom_rb_read_bit(rb);
#endif // CONFIG_EIGHTH_PEL_MV_ONLY
#endif
cm->interp_filter = read_frame_interp_filter(rb);
#if CONFIG_TEMPMV_SIGNALING
......
......@@ -4030,10 +4030,14 @@ static void write_uncompressed_header_frame(AV1_COMP *cpi,
if (cm->cur_frame_force_integer_mv) {
cm->allow_high_precision_mv = 0;
} else {
#if !CONFIG_EIGHTH_PEL_MV_ONLY
aom_wb_write_bit(wb, cm->allow_high_precision_mv);
#endif // !CONFIG_EIGHTH_PEL_MV_ONLY
}
#else
#if !CONFIG_EIGHTH_PEL_MV_ONLY
aom_wb_write_bit(wb, cm->allow_high_precision_mv);
#endif // !CONFIG_EIGHTH_PEL_MV_ONLY
#endif
fix_interp_filter(cm, cpi->td.counts);
write_frame_interp_filter(cm->interp_filter, wb);
......
......@@ -2480,9 +2480,9 @@ void av1_change_config(struct AV1_COMP *cpi, const AV1EncoderConfig *oxcf) {
set_compound_tools(cm);
av1_reset_segment_features(cm);
#if CONFIG_AMVR
set_high_precision_mv(cpi, 0, 0);
set_high_precision_mv(cpi, 1, 0);
#else
set_high_precision_mv(cpi, 0);
set_high_precision_mv(cpi, 1);
#endif
set_rc_buffer_sizes(rc, &cpi->oxcf);
......@@ -4121,10 +4121,18 @@ static void set_size_dependent_vars(AV1_COMP *cpi, int *q, int *bottom_index,
if (!frame_is_intra_only(cm)) {
#if CONFIG_AMVR
#if CONFIG_EIGHTH_PEL_MV_ONLY
set_high_precision_mv(cpi, 1, cpi->common.cur_frame_force_integer_mv);
#else
set_high_precision_mv(cpi, (*q) < HIGH_PRECISION_MV_QTHRESH,
cpi->common.cur_frame_force_integer_mv);
#endif // CONFIG_EIGHTH_PEL_MV_ONLY
#else
#if CONFIG_EIGHTH_PEL_MV_ONLY
set_high_precision_mv(cpi, 1);
#else
set_high_precision_mv(cpi, (*q) < HIGH_PRECISION_MV_QTHRESH);
#endif // CONFIG_EIGHTH_PEL_MV_ONLY
#endif
}
......@@ -6165,9 +6173,17 @@ int av1_get_compressed_data(AV1_COMP *cpi, unsigned int *frame_flags,
aom_usec_timer_start(&cmptimer);
#if CONFIG_AMVR
#if CONFIG_EIGHTH_PEL_MV_ONLY
set_high_precision_mv(cpi, 1, 0);
#else
set_high_precision_mv(cpi, ALTREF_HIGH_PRECISION_MV, 0);
#endif // CONFIG_EIGHTH_PEL_MV_ONLY
#else
#if CONFIG_EIGHTH_PEL_MV_ONLY
set_high_precision_mv(cpi, 1);
#else
set_high_precision_mv(cpi, ALTREF_HIGH_PRECISION_MV);
#endif // CONFIG_EIGHTH_PEL_MV_ONLY
#endif
// Is multi-arf enabled.
......
......@@ -130,6 +130,7 @@ set(CONFIG_DEBLOCK_13TAP 1 CACHE NUMBER "AV1 experiment flag.")
set(CONFIG_DEPENDENT_HORZTILES 0 CACHE NUMBER "AV1 experiment flag.")
set(CONFIG_DIST_8X8 1 CACHE NUMBER "AV1 experiment flag.")
set(CONFIG_DUAL_FILTER 1 CACHE NUMBER "AV1 experiment flag.")
set(CONFIG_EIGHTH_PEL_MV_ONLY 0 CACHE NUMBER "AV1 experiment flag.")
set(CONFIG_ENTROPY_STATS 0 CACHE NUMBER "AV1 experiment flag.")
set(CONFIG_EOB_FIRST 0 CACHE NUMBER "AV1 experiment flag.")
set(CONFIG_EXT_COMP_REFS 1 CACHE NUMBER "AV1 experiment flag.")
......
......@@ -342,6 +342,7 @@ EXPERIMENT_LIST="
horzonly_frame_superres
simple_bwd_adapt
eob_first
eighth_pel_mv_only
"
CONFIG_LIST="
dependency_tracking
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment