Remove ext_intra experimental flag
Change-Id: I69e07309b708caa59c313ae2156828d8c089cf4d
diff --git a/av1/common/blockd.c b/av1/common/blockd.c
index b9bd0a1..83a41d7 100644
--- a/av1/common/blockd.c
+++ b/av1/common/blockd.c
@@ -173,7 +173,6 @@
}
}
-#if CONFIG_EXT_INTRA
#if CONFIG_EXT_INTRA_MOD2
const int16_t dr_intra_derivative[90] = {
// More evenly spread out angles and limited to 10-bit
@@ -219,4 +218,3 @@
54, 49, 45, 40, 35, 31, 26, 22, 17, 13, 8, 4,
};
#endif // CONFIG_EXT_INTRA_MOD2
-#endif // CONFIG_EXT_INTRA
diff --git a/av1/common/blockd.h b/av1/common/blockd.h
index 282f582..dd4a316 100644
--- a/av1/common/blockd.h
+++ b/av1/common/blockd.h
@@ -267,10 +267,8 @@
#if CONFIG_FILTER_INTRA
FILTER_INTRA_MODE_INFO filter_intra_mode_info;
#endif // CONFIG_FILTER_INTRA
-#if CONFIG_EXT_INTRA
// The actual prediction angle is the base angle + (angle_delta * step).
int8_t angle_delta[2];
-#endif // CONFIG_EXT_INTRA
// interintra members
INTERINTRA_MODE interintra_mode;
@@ -855,12 +853,10 @@
return largest_tx_size;
}
-#if CONFIG_EXT_INTRA
extern const int16_t dr_intra_derivative[90];
static const uint8_t mode_to_angle_map[] = {
0, 90, 180, 45, 135, 113, 157, 203, 67, 0, 0, 0, 0,
};
-#endif // CONFIG_EXT_INTRA
#if CONFIG_FILTER_INTRA
static INLINE int av1_filter_intra_allowed_txsize(TX_SIZE tx) {
diff --git a/av1/common/enums.h b/av1/common/enums.h
index c5f3407..68fbbcd 100644
--- a/av1/common/enums.h
+++ b/av1/common/enums.h
@@ -550,11 +550,9 @@
#define COEFF_LEVELS 18
#endif
-#if CONFIG_EXT_INTRA
#define DIRECTIONAL_MODES 8
#define MAX_ANGLE_DELTA 3
#define ANGLE_STEP 3
-#endif // CONFIG_EXT_INTRA
#define INTER_MODES (1 + NEWMV - NEARESTMV)
diff --git a/av1/common/pred_common.c b/av1/common/pred_common.c
index afb9ac3..92f7415 100644
--- a/av1/common/pred_common.c
+++ b/av1/common/pred_common.c
@@ -12,9 +12,7 @@
#include "av1/common/common.h"
#include "av1/common/pred_common.h"
#include "av1/common/reconinter.h"
-#if CONFIG_EXT_INTRA
#include "av1/common/reconintra.h"
-#endif // CONFIG_EXT_INTRA
#include "av1/common/seg_common.h"
// Returns a context number for the given MB prediction signal
diff --git a/av1/common/reconinter.c b/av1/common/reconinter.c
index ae95c90..e96abd4 100644
--- a/av1/common/reconinter.c
+++ b/av1/common/reconinter.c
@@ -1909,10 +1909,8 @@
BLOCK_SIZE plane_bsize = get_plane_block_size(bsize, &xd->plane[plane]);
PREDICTION_MODE mode =
interintra_to_intra_mode[xd->mi[0]->mbmi.interintra_mode];
-#if CONFIG_EXT_INTRA
xd->mi[0]->mbmi.angle_delta[0] = 0;
xd->mi[0]->mbmi.angle_delta[1] = 0;
-#endif // CONFIG_EXT_INTRA
#if CONFIG_FILTER_INTRA
xd->mi[0]->mbmi.filter_intra_mode_info.use_filter_intra = 0;
#endif // CONFIG_FILTER_INTRA
diff --git a/av1/common/reconintra.c b/av1/common/reconintra.c
index bc7b9cf..a679e7f 100644
--- a/av1/common/reconintra.c
+++ b/av1/common/reconintra.c
@@ -573,9 +573,7 @@
static intra_high_pred_fn dc_pred_high[2][2][TX_SIZES_ALL];
static void av1_init_intra_predictors_internal(void) {
-#if CONFIG_EXT_INTRA
assert(NELEMENTS(mode_to_angle_map) == INTRA_MODES);
-#endif // CONFIG_EXT_INTRA
#if CONFIG_TX64X64
#define INIT_RECTANGULAR(p, type) \
@@ -666,7 +664,6 @@
#undef intra_pred_allsizes
}
-#if CONFIG_EXT_INTRA
// Directional prediction, zone 1: 0 < angle < 90
static void dr_prediction_z1(uint8_t *dst, ptrdiff_t stride, int bw, int bh,
const uint8_t *above, const uint8_t *left,
@@ -1122,7 +1119,6 @@
pred_high[H_PRED][tx_size](dst, stride, above, left, bd);
}
}
-#endif // CONFIG_EXT_INTRA
#if CONFIG_FILTER_INTRA
static int filter_intra_taps_4x2procunit[FILTER_INTRA_MODES][8][7] = {
@@ -1641,10 +1637,8 @@
int need_above_left = extend_modes[mode] & NEED_ABOVELEFT;
const uint16_t *above_ref = ref - ref_stride;
const uint16_t *left_ref = ref - 1;
-#if CONFIG_EXT_INTRA
int p_angle = 0;
const int is_dr_mode = av1_is_directional_mode(mode, xd->mi[0]->mbmi.sb_type);
-#endif // CONFIG_EXT_INTRA
#if CONFIG_FILTER_INTRA
const int use_filter_intra =
plane > 0 ? 0 : xd->mi[0]->mbmi.filter_intra_mode_info.use_filter_intra;
@@ -1653,14 +1647,13 @@
#endif // CONFIG_FILTER_INTRA
int base = 128 << (xd->bd - 8);
-// The default values if ref pixels are not available:
-// base-1 base-1 base-1 .. base-1 base-1 base-1 base-1 base-1 base-1
-// base+1 A B .. Y Z
-// base+1 C D .. W X
-// base+1 E F .. U V
-// base+1 G H .. S T T T T T
+ // The default values if ref pixels are not available:
+ // base-1 base-1 base-1 .. base-1 base-1 base-1 base-1 base-1 base-1
+ // base+1 A B .. Y Z
+ // base+1 C D .. W X
+ // base+1 E F .. U V
+ // base+1 G H .. S T T T T T
-#if CONFIG_EXT_INTRA
if (is_dr_mode) {
p_angle = mode_to_angle_map[mode] +
xd->mi[0]->mbmi.angle_delta[plane != 0] * ANGLE_STEP;
@@ -1671,7 +1664,6 @@
else
need_above = 0, need_left = 1, need_above_left = 1;
}
-#endif // CONFIG_EXT_INTRA
#if CONFIG_FILTER_INTRA
if (use_filter_intra) need_left = need_above = need_above_left = 1;
#endif // CONFIG_FILTER_INTRA
@@ -1702,17 +1694,11 @@
// NEED_LEFT
if (need_left) {
-#if CONFIG_EXT_INTRA || CONFIG_FILTER_INTRA
int need_bottom = !!(extend_modes[mode] & NEED_BOTTOMLEFT);
#if CONFIG_FILTER_INTRA
if (use_filter_intra) need_bottom = 0;
#endif // CONFIG_FILTER_INTRA
-#if CONFIG_EXT_INTRA
if (is_dr_mode) need_bottom = p_angle > 180;
-#endif // CONFIG_EXT_INTRA
-#else
- const int need_bottom = !!(extend_modes[mode] & NEED_BOTTOMLEFT);
-#endif // CONFIG_EXT_INTRA || CONFIG_FILTER_INTRA
const int num_left_pixels_needed = txhpx + (need_bottom ? txwpx : 0);
i = 0;
if (n_left_px > 0) {
@@ -1739,17 +1725,11 @@
// NEED_ABOVE
if (need_above) {
-#if CONFIG_EXT_INTRA || CONFIG_FILTER_INTRA
int need_right = !!(extend_modes[mode] & NEED_ABOVERIGHT);
#if CONFIG_FILTER_INTRA
if (use_filter_intra) need_right = 0;
#endif // CONFIG_FILTER_INTRA
-#if CONFIG_EXT_INTRA
if (is_dr_mode) need_right = p_angle < 90;
-#endif // CONFIG_EXT_INTRA
-#else
- const int need_right = !!(extend_modes[mode] & NEED_ABOVERIGHT);
-#endif // CONFIG_EXT_INTRA || CONFIG_FILTER_INTRA
const int num_top_pixels_needed = txwpx + (need_right ? txhpx : 0);
if (n_top_px > 0) {
memcpy(above_row, above_ref, n_top_px * sizeof(above_ref[0]));
@@ -1802,7 +1782,6 @@
}
#endif // CONFIG_FILTER_INTRA
-#if CONFIG_EXT_INTRA
if (is_dr_mode) {
#if CONFIG_INTRA_EDGE
const int need_right = p_angle < 90;
@@ -1849,7 +1828,6 @@
p_angle, xd->bd);
return;
}
-#endif // CONFIG_EXT_INTRA
// predict
if (mode == DC_PRED) {
@@ -1878,11 +1856,9 @@
int need_left = extend_modes[mode] & NEED_LEFT;
int need_above = extend_modes[mode] & NEED_ABOVE;
int need_above_left = extend_modes[mode] & NEED_ABOVELEFT;
-#if CONFIG_EXT_INTRA
int p_angle = 0;
const MB_MODE_INFO *const mbmi = &xd->mi[0]->mbmi;
const int is_dr_mode = av1_is_directional_mode(mode, mbmi->sb_type);
-#endif // CONFIG_EXT_INTRA
#if CONFIG_FILTER_INTRA
const int use_filter_intra =
plane > 0 ? 0 : xd->mi[0]->mbmi.filter_intra_mode_info.use_filter_intra;
@@ -1890,15 +1866,14 @@
xd->mi[0]->mbmi.filter_intra_mode_info.filter_intra_mode;
#endif // CONFIG_FILTER_INTRA
-// The default values if ref pixels are not available:
-// 127 127 127 .. 127 127 127 127 127 127
-// 129 A B .. Y Z
-// 129 C D .. W X
-// 129 E F .. U V
-// 129 G H .. S T T T T T
-// ..
+ // The default values if ref pixels are not available:
+ // 127 127 127 .. 127 127 127 127 127 127
+ // 129 A B .. Y Z
+ // 129 C D .. W X
+ // 129 E F .. U V
+ // 129 G H .. S T T T T T
+ // ..
-#if CONFIG_EXT_INTRA
if (is_dr_mode) {
p_angle = mode_to_angle_map[mode] +
xd->mi[0]->mbmi.angle_delta[plane != 0] * ANGLE_STEP;
@@ -1909,7 +1884,6 @@
else
need_above = 0, need_left = 1, need_above_left = 1;
}
-#endif // CONFIG_EXT_INTRA
#if CONFIG_FILTER_INTRA
if (use_filter_intra) need_left = need_above = need_above_left = 1;
#endif // CONFIG_FILTER_INTRA
@@ -1941,17 +1915,11 @@
// NEED_LEFT
if (need_left) {
-#if CONFIG_EXT_INTRA || CONFIG_FILTER_INTRA
int need_bottom = !!(extend_modes[mode] & NEED_BOTTOMLEFT);
#if CONFIG_FILTER_INTRA
if (use_filter_intra) need_bottom = 0;
#endif // CONFIG_FILTER_INTRA
-#if CONFIG_EXT_INTRA
if (is_dr_mode) need_bottom = p_angle > 180;
-#endif // CONFIG_EXT_INTRA
-#else
- const int need_bottom = !!(extend_modes[mode] & NEED_BOTTOMLEFT);
-#endif // CONFIG_EXT_INTRA || CONFIG_FILTER_INTRA
const int num_left_pixels_needed = txhpx + (need_bottom ? txwpx : 0);
i = 0;
if (n_left_px > 0) {
@@ -1978,17 +1946,11 @@
// NEED_ABOVE
if (need_above) {
-#if CONFIG_EXT_INTRA || CONFIG_FILTER_INTRA
int need_right = !!(extend_modes[mode] & NEED_ABOVERIGHT);
#if CONFIG_FILTER_INTRA
if (use_filter_intra) need_right = 0;
#endif // CONFIG_FILTER_INTRA
-#if CONFIG_EXT_INTRA
if (is_dr_mode) need_right = p_angle < 90;
-#endif // CONFIG_EXT_INTRA
-#else
- const int need_right = !!(extend_modes[mode] & NEED_ABOVERIGHT);
-#endif // CONFIG_EXT_INTRA || CONFIG_FITLER_INTRA
const int num_top_pixels_needed = txwpx + (need_right ? txhpx : 0);
if (n_top_px > 0) {
memcpy(above_row, above_ref, n_top_px);
@@ -2038,7 +2000,6 @@
}
#endif // CONFIG_FILTER_INTRA
-#if CONFIG_EXT_INTRA
if (is_dr_mode) {
#if CONFIG_INTRA_EDGE
const int need_right = p_angle < 90;
@@ -2085,7 +2046,6 @@
p_angle);
return;
}
-#endif // CONFIG_EXT_INTRA
// predict
if (mode == DC_PRED) {
diff --git a/av1/common/reconintra.h b/av1/common/reconintra.h
index 7827d79..d792fd1 100644
--- a/av1/common/reconintra.h
+++ b/av1/common/reconintra.h
@@ -47,7 +47,6 @@
#define CONFIG_USE_ANGLE_DELTA_SUB8X8 0
-#if CONFIG_EXT_INTRA
static INLINE int av1_is_directional_mode(PREDICTION_MODE mode,
BLOCK_SIZE bsize) {
#if CONFIG_INTRA_EDGE
@@ -66,7 +65,6 @@
return bsize >= BLOCK_8X8;
#endif
}
-#endif // CONFIG_EXT_INTRA
#if CONFIG_INTRABC
static INLINE int av1_allow_intrabc(const AV1_COMMON *const cm) {
diff --git a/av1/decoder/decodemv.c b/av1/decoder/decodemv.c
index 42b1ead..e1a69e1 100644
--- a/av1/decoder/decodemv.c
+++ b/av1/decoder/decodemv.c
@@ -18,9 +18,7 @@
#include "av1/common/mvref_common.h"
#include "av1/common/pred_common.h"
#include "av1/common/reconinter.h"
-#if CONFIG_EXT_INTRA
#include "av1/common/reconintra.h"
-#endif // CONFIG_EXT_INTRA
#include "av1/common/seg_common.h"
#include "av1/common/warped_motion.h"
@@ -840,7 +838,6 @@
}
#endif // CONFIG_FILTER_INTRA
-#if CONFIG_EXT_INTRA
#if CONFIG_EXT_INTRA_MOD
static int read_angle_delta(aom_reader *r, aom_cdf_prob *cdf) {
const int sym = aom_read_symbol(r, cdf, 2 * MAX_ANGLE_DELTA + 1, ACCT_STR);
@@ -879,7 +876,6 @@
#endif // CONFIG_EXT_INTRA_MOD
}
}
-#endif // CONFIG_EXT_INTRA
void av1_read_tx_type(const AV1_COMMON *const cm, MACROBLOCKD *xd,
#if CONFIG_TXK_SEL
@@ -1152,9 +1148,7 @@
#endif
}
-#if CONFIG_EXT_INTRA
read_intra_angle_info(xd, r);
-#endif // CONFIG_EXT_INTRA
mbmi->palette_mode_info.palette_size[0] = 0;
mbmi->palette_mode_info.palette_size[1] = 0;
if (av1_allow_palette(cm->allow_screen_content_tools, bsize))
@@ -1468,9 +1462,7 @@
// ext-intra, palette and filter-intra are enabled.
(void)cm;
-#if CONFIG_EXT_INTRA
read_intra_angle_info(xd, r);
-#endif // CONFIG_EXT_INTRA
mbmi->palette_mode_info.palette_size[0] = 0;
mbmi->palette_mode_info.palette_size[1] = 0;
if (av1_allow_palette(cm->allow_screen_content_tools, bsize))
@@ -2006,10 +1998,8 @@
read_interintra_mode(xd, r, bsize_group);
mbmi->ref_frame[1] = INTRA_FRAME;
mbmi->interintra_mode = interintra_mode;
-#if CONFIG_EXT_INTRA
mbmi->angle_delta[0] = 0;
mbmi->angle_delta[1] = 0;
-#endif // CONFIG_EXT_INTRA
#if CONFIG_FILTER_INTRA
mbmi->filter_intra_mode_info.use_filter_intra = 0;
#endif // CONFIG_FILTER_INTRA
diff --git a/av1/encoder/bitstream.c b/av1/encoder/bitstream.c
index 4335f91..8aa8bb0 100644
--- a/av1/encoder/bitstream.c
+++ b/av1/encoder/bitstream.c
@@ -35,9 +35,7 @@
#include "av1/common/odintrin.h"
#include "av1/common/pred_common.h"
#include "av1/common/reconinter.h"
-#if CONFIG_EXT_INTRA
#include "av1/common/reconintra.h"
-#endif // CONFIG_EXT_INTRA
#include "av1/common/seg_common.h"
#include "av1/common/tile_common.h"
@@ -779,7 +777,6 @@
}
#endif // CONFIG_FILTER_INTRA
-#if CONFIG_EXT_INTRA
static void write_intra_angle_info(const MACROBLOCKD *xd,
FRAME_CONTEXT *const ec_ctx, aom_writer *w) {
const MB_MODE_INFO *const mbmi = &xd->mi[0]->mbmi;
@@ -809,7 +806,6 @@
#endif
}
}
-#endif // CONFIG_EXT_INTRA
static void write_mb_interp_filter(AV1_COMP *cpi, const MACROBLOCKD *xd,
aom_writer *w) {
@@ -1335,9 +1331,7 @@
#endif
}
-#if CONFIG_EXT_INTRA
write_intra_angle_info(xd, ec_ctx, w);
-#endif // CONFIG_EXT_INTRA
if (av1_allow_palette(cm->allow_screen_content_tools, bsize))
write_palette_mode_info(cm, xd, mi, mi_row, mi_col, w);
#if CONFIG_FILTER_INTRA
@@ -1641,9 +1635,7 @@
#endif
}
-#if CONFIG_EXT_INTRA
write_intra_angle_info(xd, ec_ctx, w);
-#endif // CONFIG_EXT_INTRA
if (av1_allow_palette(cm->allow_screen_content_tools, bsize))
write_palette_mode_info(cm, xd, mi, mi_row, mi_col, w);
#if CONFIG_FILTER_INTRA
diff --git a/av1/encoder/block.h b/av1/encoder/block.h
index 8826a0c..c01601b 100644
--- a/av1/encoder/block.h
+++ b/av1/encoder/block.h
@@ -326,9 +326,9 @@
int inter_tx_type_costs[EXT_TX_SETS_INTER][EXT_TX_SIZES][TX_TYPES];
int intra_tx_type_costs[EXT_TX_SETS_INTRA][EXT_TX_SIZES][INTRA_MODES]
[TX_TYPES];
-#if CONFIG_EXT_INTRA && CONFIG_EXT_INTRA_MOD
+#if CONFIG_EXT_INTRA_MOD
int angle_delta_cost[DIRECTIONAL_MODES][2 * MAX_ANGLE_DELTA + 1];
-#endif // CONFIG_EXT_INTRA && CONFIG_EXT_INTRA_MOD
+#endif // CONFIG_EXT_INTRA_MOD
#if CONFIG_LOOP_RESTORATION
int switchable_restore_cost[RESTORE_SWITCHABLE_TYPES];
int wiener_restore_cost[2];
diff --git a/av1/encoder/encodeframe.c b/av1/encoder/encodeframe.c
index 3797838..84ea271 100644
--- a/av1/encoder/encodeframe.c
+++ b/av1/encoder/encodeframe.c
@@ -827,7 +827,7 @@
}
}
#endif // CONFIG_FILTER_INTRA
-#if CONFIG_EXT_INTRA && CONFIG_EXT_INTRA_MOD
+#if CONFIG_EXT_INTRA_MOD
if (av1_is_directional_mode(mbmi->mode, bsize) &&
av1_use_angle_delta(bsize)) {
#if CONFIG_ENTROPY_STATS
@@ -839,12 +839,12 @@
mbmi->angle_delta[0] + MAX_ANGLE_DELTA,
2 * MAX_ANGLE_DELTA + 1);
}
-#endif // CONFIG_EXT_INTRA && CONFIG_EXT_INTRA_MOD
+#endif // CONFIG_EXT_INTRA_MOD
if (!is_chroma_reference(mi_row, mi_col, bsize, xd->plane[1].subsampling_x,
xd->plane[1].subsampling_y))
return;
-#if CONFIG_EXT_INTRA && CONFIG_EXT_INTRA_MOD
+#if CONFIG_EXT_INTRA_MOD
if (av1_is_directional_mode(get_uv_mode(mbmi->uv_mode), bsize) &&
av1_use_angle_delta(bsize)) {
#if CONFIG_ENTROPY_STATS
@@ -856,7 +856,7 @@
mbmi->angle_delta[1] + MAX_ANGLE_DELTA,
2 * MAX_ANGLE_DELTA + 1);
}
-#endif // CONFIG_EXT_INTRA && CONFIG_EXT_INTRA_MOD
+#endif // CONFIG_EXT_INTRA_MOD
#if CONFIG_ENTROPY_STATS
#if CONFIG_CFL
++counts->uv_mode[is_cfl_allowed(mbmi)][y_mode][uv_mode];
diff --git a/av1/encoder/rd.c b/av1/encoder/rd.c
index c3db505..58969f3 100644
--- a/av1/encoder/rd.c
+++ b/av1/encoder/rd.c
@@ -239,12 +239,12 @@
}
}
}
-#if CONFIG_EXT_INTRA && CONFIG_EXT_INTRA_MOD
+#if CONFIG_EXT_INTRA_MOD
for (i = 0; i < DIRECTIONAL_MODES; ++i) {
av1_cost_tokens_from_cdf(x->angle_delta_cost[i], fc->angle_delta_cdf[i],
NULL);
}
-#endif // CONFIG_EXT_INTRA && CONFIG_EXT_INTRA_MOD
+#endif // CONFIG_EXT_INTRA_MOD
#if CONFIG_LOOP_RESTORATION
av1_cost_tokens_from_cdf(x->switchable_restore_cost,
fc->switchable_restore_cdf, NULL);
diff --git a/av1/encoder/rdopt.c b/av1/encoder/rdopt.c
index 695d800..ff6795c 100644
--- a/av1/encoder/rdopt.c
+++ b/av1/encoder/rdopt.c
@@ -109,9 +109,7 @@
#define NEW_MV_DISCOUNT_FACTOR 8
-#if CONFIG_EXT_INTRA
#define ANGLE_SKIP_THRESH 10
-#endif // CONFIG_EXT_INTRA
static const double ADST_FLIP_SVM[8] = {
/* vertical */
@@ -2549,7 +2547,6 @@
}
}
#endif // CONFIG_FILTER_INTRA
-#if CONFIG_EXT_INTRA
if (av1_is_directional_mode(mbmi->mode, bsize)) {
if (av1_use_angle_delta(bsize)) {
#if CONFIG_EXT_INTRA_MOD
@@ -2561,7 +2558,6 @@
#endif // CONFIG_EXT_INTRA_MOD
}
}
-#endif // CONFIG_EXT_INTRA
#if CONFIG_INTRABC
if (av1_allow_intrabc(&cpi->common))
total_rate += x->intrabc_cost[use_intrabc];
@@ -2617,7 +2613,6 @@
// RD estimation.
model_rd_for_sb(cpi, bsize, x, xd, 0, 0, &this_rd_stats.rate,
&this_rd_stats.dist, &this_rd_stats.skip, &temp_sse);
-#if CONFIG_EXT_INTRA
if (av1_is_directional_mode(mbmi->mode, bsize) &&
av1_use_angle_delta(bsize)) {
#if CONFIG_EXT_INTRA_MOD
@@ -2628,7 +2623,6 @@
MAX_ANGLE_DELTA + mbmi->angle_delta[0]);
#endif // CONFIG_EXT_INTRA_MOD
}
-#endif // CONFIG_EXT_INTRA
#if CONFIG_FILTER_INTRA
if (mbmi->mode == DC_PRED && av1_filter_intra_allowed_txsize(mbmi->tx_size)) {
if (mbmi->filter_intra_mode_info.use_filter_intra) {
@@ -2956,7 +2950,6 @@
}
#endif // CONFIG_FILTER_INTRA
-#if CONFIG_EXT_INTRA
// Run RD calculation with given luma intra prediction angle., and return
// the RD cost. Update the best mode info. if the RD cost is the best so far.
static int64_t calc_rd_given_intra_angle(
@@ -3227,7 +3220,6 @@
}
}
}
-#endif // CONFIG_EXT_INTRA
// Given selected prediction mode, search for the best tx type and size.
static void intra_block_yrd(const AV1_COMP *const cpi, MACROBLOCK *x,
@@ -3275,14 +3267,12 @@
MB_MODE_INFO *const mbmi = &mic->mbmi;
assert(!is_inter_block(mbmi));
int64_t best_model_rd = INT64_MAX;
-#if CONFIG_EXT_INTRA
const int rows = block_size_high[bsize];
const int cols = block_size_wide[bsize];
int is_directional_mode;
uint8_t directional_mode_skip_mask[INTRA_MODES];
const int src_stride = x->plane[0].src.stride;
const uint8_t *src = x->plane[0].src.buf;
-#endif // CONFIG_EXT_INTRA
#if CONFIG_FILTER_INTRA
int beat_best_rd = 0;
#endif // CONFIG_FILTER_INTRA
@@ -3305,7 +3295,6 @@
bmode_costs = x->y_mode_costs[A][L];
#endif
-#if CONFIG_EXT_INTRA
mbmi->angle_delta[0] = 0;
if (xd->cur_buf->flags & YV12_FLAG_HIGHBITDEPTH)
highbd_angle_estimation(src, src_stride, rows, cols, bsize,
@@ -3313,7 +3302,6 @@
else
angle_estimation(src, src_stride, rows, cols, bsize,
directional_mode_skip_mask);
-#endif // CONFIG_EXT_INTRA
#if CONFIG_FILTER_INTRA
mbmi->filter_intra_mode_info.use_filter_intra = 0;
#endif // CONFIG_FILTER_INTRA
@@ -3331,15 +3319,12 @@
int this_rate, this_rate_tokenonly, s;
int64_t this_distortion, this_rd, this_model_rd;
mbmi->mode = intra_rd_search_mode_order[mode_idx];
-#if CONFIG_EXT_INTRA
mbmi->angle_delta[0] = 0;
-#endif // CONFIG_EXT_INTRA
this_model_rd = intra_model_yrd(cpi, x, bsize, bmode_costs[mbmi->mode]);
if (best_model_rd != INT64_MAX &&
this_model_rd > best_model_rd + (best_model_rd >> 1))
continue;
if (this_model_rd < best_model_rd) best_model_rd = this_model_rd;
-#if CONFIG_EXT_INTRA
is_directional_mode = av1_is_directional_mode(mbmi->mode, bsize);
if (is_directional_mode && directional_mode_skip_mask[mbmi->mode]) continue;
if (is_directional_mode && av1_use_angle_delta(bsize)) {
@@ -3349,9 +3334,6 @@
} else {
super_block_yrd(cpi, x, &this_rd_stats, bsize, best_rd);
}
-#else
- super_block_yrd(cpi, x, &this_rd_stats, bsize, best_rd);
-#endif // CONFIG_EXT_INTRA
this_rate_tokenonly = this_rd_stats.rate;
this_distortion = this_rd_stats.dist;
s = this_rd_stats.skip;
@@ -5076,7 +5058,6 @@
}
}
-#if CONFIG_EXT_INTRA
// Run RD calculation with given chroma intra prediction angle., and return
// the RD cost. Update the best mode info. if the RD cost is the best so far.
static int64_t pick_intra_angle_routine_sbuv(
@@ -5164,7 +5145,6 @@
mbmi->angle_delta[1] = best_angle_delta;
return rd_stats->rate != INT_MAX;
}
-#endif // CONFIG_EXT_INTRA
#if CONFIG_CFL
#define PLANE_SIGN_TO_JOINT_SIGN(plane, a, b) \
@@ -5307,10 +5287,8 @@
int this_rate;
RD_STATS tokenonly_rd_stats;
UV_PREDICTION_MODE mode = uv_rd_search_mode_order[mode_idx];
-#if CONFIG_EXT_INTRA
const int is_directional_mode =
av1_is_directional_mode(get_uv_mode(mode), mbmi->sb_type);
-#endif // CONFIG_EXT_INTRA
if (!(cpi->sf.intra_uv_mode_mask[txsize_sqr_up_map[max_tx_size]] &
(1 << mode)))
continue;
@@ -5326,7 +5304,6 @@
if (cfl_alpha_rate == INT_MAX) continue;
}
#endif
-#if CONFIG_EXT_INTRA
mbmi->angle_delta[1] = 0;
if (is_directional_mode && av1_use_angle_delta(mbmi->sb_type)) {
#if CONFIG_CFL
@@ -5344,13 +5321,10 @@
&this_rate, &tokenonly_rd_stats))
continue;
} else {
-#endif // CONFIG_EXT_INTRA
if (!super_block_uvrd(cpi, x, &tokenonly_rd_stats, bsize, best_rd)) {
continue;
}
-#if CONFIG_EXT_INTRA
}
-#endif // CONFIG_EXT_INTRA
this_rate = tokenonly_rd_stats.rate +
#if CONFIG_CFL
x->intra_uv_mode_cost[is_cfl_allowed(mbmi)][mbmi->mode][mode] +
@@ -5367,7 +5341,6 @@
#endif // CONFIG_DEBUG
}
#endif
-#if CONFIG_EXT_INTRA
if (is_directional_mode && av1_use_angle_delta(mbmi->sb_type)) {
#if CONFIG_EXT_INTRA_MOD
this_rate += x->angle_delta_cost[mode - V_PRED]
@@ -5377,7 +5350,6 @@
MAX_ANGLE_DELTA + mbmi->angle_delta[1]);
#endif // CONFIG_EXT_INTRA_MOD
}
-#endif // CONFIG_EXT_INTRA
if (try_palette && mode == UV_DC_PRED)
this_rate += x->palette_uv_mode_cost[pmi->palette_size[0] > 0][0];
@@ -9083,11 +9055,9 @@
int skip_uvs[TX_SIZES_ALL];
UV_PREDICTION_MODE mode_uv[TX_SIZES_ALL];
PALETTE_MODE_INFO pmi_uv[TX_SIZES_ALL];
-#if CONFIG_EXT_INTRA
int8_t uv_angle_delta[TX_SIZES_ALL];
int is_directional_mode, angle_stats_ready = 0;
uint8_t directional_mode_skip_mask[INTRA_MODES];
-#endif // CONFIG_EXT_INTRA
const int intra_cost_penalty = av1_get_intra_cost_penalty(
cm->base_qindex, cm->y_dc_delta_q, cm->bit_depth);
const int *const intra_mode_cost = x->mbmode_cost[size_group_lookup[bsize]];
@@ -9591,7 +9561,6 @@
if (ref_frame == INTRA_FRAME) {
RD_STATS rd_stats_y;
TX_SIZE uv_tx;
-#if CONFIG_EXT_INTRA
is_directional_mode = av1_is_directional_mode(mbmi->mode, bsize);
if (is_directional_mode && av1_use_angle_delta(bsize)) {
int rate_dummy;
@@ -9616,9 +9585,6 @@
mbmi->angle_delta[0] = 0;
super_block_yrd(cpi, x, &rd_stats_y, bsize, best_rd);
}
-#else
- super_block_yrd(cpi, x, &rd_stats_y, bsize, best_rd);
-#endif // CONFIG_EXT_INTRA
rate_y = rd_stats_y.rate;
distortion_y = rd_stats_y.dist;
skippable = rd_stats_y.skip;
@@ -9710,10 +9676,7 @@
&rate_uv_tokenonly[uv_tx], &dist_uvs[uv_tx],
&skip_uvs[uv_tx], &mode_uv[uv_tx]);
if (try_palette) pmi_uv[uv_tx] = *pmi;
-
-#if CONFIG_EXT_INTRA
uv_angle_delta[uv_tx] = mbmi->angle_delta[1];
-#endif // CONFIG_EXT_INTRA
}
rate_uv = rate_uv_tokenonly[uv_tx];
@@ -9726,9 +9689,7 @@
pmi_uv[uv_tx].palette_colors + PALETTE_MAX_SIZE,
2 * PALETTE_MAX_SIZE * sizeof(pmi->palette_colors[0]));
}
-#if CONFIG_EXT_INTRA
mbmi->angle_delta[1] = uv_angle_delta[uv_tx];
-#endif // CONFIG_EXT_INTRA
rate2 = rate_y + intra_mode_info_cost_y(cpi, x, mbmi, bsize,
intra_mode_cost[mbmi->mode]);
@@ -9748,7 +9709,6 @@
x->intra_uv_mode_cost[mbmi->mode][mbmi->uv_mode];
#endif
}
-#if CONFIG_EXT_INTRA
if (av1_is_directional_mode(get_uv_mode(mbmi->uv_mode), bsize) &&
av1_use_angle_delta(bsize)) {
#if CONFIG_EXT_INTRA_MOD
@@ -9759,7 +9719,6 @@
MAX_ANGLE_DELTA + mbmi->angle_delta[1]);
#endif // CONFIG_EXT_INTRA_MOD
}
-#endif // CONFIG_EXT_INTRA
if (mbmi->mode != DC_PRED && mbmi->mode != PAETH_PRED)
rate2 += intra_cost_penalty;
distortion2 = distortion_y + distortion_uv;
@@ -9771,10 +9730,8 @@
backup_ref_mv[0] = mbmi_ext->ref_mvs[ref_frame][0];
if (comp_pred) backup_ref_mv[1] = mbmi_ext->ref_mvs[second_ref_frame][0];
-#if CONFIG_EXT_INTRA
mbmi->angle_delta[0] = 0;
mbmi->angle_delta[1] = 0;
-#endif // CONFIG_EXT_INTRA
#if CONFIG_FILTER_INTRA
mbmi->filter_intra_mode_info.use_filter_intra = 0;
#endif // CONFIG_FILTER_INTRA
@@ -10309,9 +10266,7 @@
&rate_uv_tokenonly[uv_tx], &dist_uvs[uv_tx],
&skip_uvs[uv_tx], &mode_uv[uv_tx]);
pmi_uv[uv_tx] = *pmi;
-#if CONFIG_EXT_INTRA
uv_angle_delta[uv_tx] = mbmi->angle_delta[1];
-#endif // CONFIG_EXT_INTRA
}
mbmi->uv_mode = mode_uv[uv_tx];
pmi->palette_size[1] = pmi_uv[uv_tx].palette_size[1];
@@ -10320,9 +10275,7 @@
pmi_uv[uv_tx].palette_colors + PALETTE_MAX_SIZE,
2 * PALETTE_MAX_SIZE * sizeof(pmi->palette_colors[0]));
}
-#if CONFIG_EXT_INTRA
mbmi->angle_delta[1] = uv_angle_delta[uv_tx];
-#endif // CONFIG_EXT_INTRA
skippable = rd_stats_y.skip && skip_uvs[uv_tx];
distortion2 = rd_stats_y.dist + dist_uvs[uv_tx];
rate2 = rd_stats_y.rate + rate_overhead_palette + rate_uv_intra[uv_tx];
diff --git a/build/cmake/aom_config_defaults.cmake b/build/cmake/aom_config_defaults.cmake
index 5f67a46..95437c3 100644
--- a/build/cmake/aom_config_defaults.cmake
+++ b/build/cmake/aom_config_defaults.cmake
@@ -130,7 +130,6 @@
set(CONFIG_EOB_FIRST 0 CACHE NUMBER "AV1 experiment flag.")
set(CONFIG_EXT_COMP_REFS 1 CACHE NUMBER "AV1 experiment flag.")
set(CONFIG_EXT_DELTA_Q 1 CACHE NUMBER "AV1 experiment flag.")
-set(CONFIG_EXT_INTRA 1 CACHE NUMBER "AV1 experiment flag.")
set(CONFIG_EXT_INTRA_MOD 1 CACHE NUMBER "AV1 experiment flag.")
set(CONFIG_EXT_INTRA_MOD2 0 CACHE NUMBER "AV1 experiment flag.")
set(CONFIG_EXT_PARTITION 1 CACHE NUMBER "AV1 experiment flag.")