Add dependent_horztilegroups experiment This adds part of the proposal in "AV1 Tile Overview v1_1". A new dependent_horztilegroups configure option is added (disabled by default). The experiment adds syntax dependencies between tile groups. Change-Id: I6721875d622807f92f578ab1d2a5d32bff6f472f
diff --git a/av1/common/tile_common.c b/av1/common/tile_common.c index 3ddcc86..de97ccf 100644 --- a/av1/common/tile_common.c +++ b/av1/common/tile_common.c
@@ -19,10 +19,19 @@ #if CONFIG_DEPENDENT_HORZTILES void av1_tile_set_tg_boundary(TileInfo *tile, const AV1_COMMON *const cm, int row, int col) { +#if CONFIG_DEPENDENT_HORZTILEGROUPS + (void)cm; + (void)col; +#if !CONFIG_MAX_TILE + (void)row; +#endif + tile->tg_horz_boundary = 0; +#else const int tg_start_row = cm->tile_group_start_row[row][col]; const int tg_start_col = cm->tile_group_start_col[row][col]; tile->tg_horz_boundary = ((row == tg_start_row && col >= tg_start_col) || (row == tg_start_row + 1 && col < tg_start_col)); +#endif #if CONFIG_MAX_TILE if (cm->tile_row_independent[row]) { tile->tg_horz_boundary = 1; // this tile row is independent
diff --git a/build/cmake/aom_config_defaults.cmake b/build/cmake/aom_config_defaults.cmake index 11225c6..eeaa7f1 100644 --- a/build/cmake/aom_config_defaults.cmake +++ b/build/cmake/aom_config_defaults.cmake
@@ -123,6 +123,7 @@ set(CONFIG_DAALA_TX_DST8 0 CACHE NUMBER "AV1 experiment flag.") set(CONFIG_DCT_ONLY 0 CACHE NUMBER "AV1 experiment flag.") set(CONFIG_DEBLOCK_13TAP 1 CACHE NUMBER "AV1 experiment flag.") +set(CONFIG_DEPENDENT_HORZTILEGROUPS 0 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.")
diff --git a/configure b/configure index fce85d1..2411eeb 100755 --- a/configure +++ b/configure
@@ -290,6 +290,7 @@ reference_buffer entropy_stats dependent_horztiles + dependent_horztilegroups dist_8x8 palette_throughput ref_adapt