Update MV cdf stats per superblock
Adds a control and parameter for MV CDF updates.
Mv updates are enabled by default to be at a per
superblock level leading to an improvement in BDRATE
by -0.1 to -0.15%.
Slowdown by instruction count is ~ 1%
STATS_CHANGED
Change-Id: I549aace428724cb6f50d3d33c3e19c23b77283d3
diff --git a/apps/aomenc.c b/apps/aomenc.c
index ef3bd17..7b01af2 100644
--- a/apps/aomenc.c
+++ b/apps/aomenc.c
@@ -591,6 +591,10 @@
ARG_DEF(NULL, "mode-cost-upd-freq", 1,
"Update freq for mode costs"
"0: SB, 1: SB Row per Tile, 2: Tile");
+static const arg_def_t mv_cost_upd_freq =
+ ARG_DEF(NULL, "mv-cost-upd-freq", 1,
+ "Update freq for mv costs"
+ "0: SB, 1: SB Row per Tile, 2: Tile");
#if CONFIG_DIST_8X8
static const arg_def_t enable_dist_8x8 =
ARG_DEF(NULL, "enable-dist-8x8", 1,
@@ -857,6 +861,7 @@
&quant_b_adapt,
&coeff_cost_upd_freq,
&mode_cost_upd_freq,
+ &mv_cost_upd_freq,
#if CONFIG_DIST_8X8
&enable_dist_8x8,
#endif
@@ -961,6 +966,7 @@
AV1E_SET_QUANT_B_ADAPT,
AV1E_SET_COEFF_COST_UPD_FREQ,
AV1E_SET_MODE_COST_UPD_FREQ,
+ AV1E_SET_MV_COST_UPD_FREQ,
#if CONFIG_DIST_8X8
AV1E_SET_ENABLE_DIST_8X8,
#endif