Commit 95059afc authored by Urvang Joshi's avatar Urvang Joshi

Make ALT_INTRA experiment work with FILTER_INTRA experiment.

Correctly use FILTER_INTRA_MODE enums instead of PREDICTION_MODE enums.

Change-Id: I3d89c0c5a926b9f8603b8492e7c8c9b32b41d4cc
parent 102245da
......@@ -354,8 +354,7 @@ typedef enum {
} COMPOUND_TYPE;
#endif // CONFIG_EXT_INTER
// TODO(urvang): Make "CONFIG_ALT_INTRA" work with "CONFIG_FILTER_INTRA".
// TODO(huisu): Consider adding FILTER_SMOOTH_PRED to "FILTER_INTRA_MODE".
#if CONFIG_FILTER_INTRA
typedef enum {
FILTER_DC_PRED,
......
......@@ -1055,32 +1055,40 @@ void av1_tm_filter_predictor_c(uint8_t *dst, ptrdiff_t stride, int bs,
filter_intra_predictors_4tap(dst, stride, bs, above, left, TM_PRED);
}
static void filter_intra_predictors(int mode, uint8_t *dst, ptrdiff_t stride,
int bs, const uint8_t *above,
const uint8_t *left) {
static void filter_intra_predictors(FILTER_INTRA_MODE mode, uint8_t *dst,
ptrdiff_t stride, int bs,
const uint8_t *above, const uint8_t *left) {
switch (mode) {
case DC_PRED: av1_dc_filter_predictor(dst, stride, bs, above, left); break;
case V_PRED: av1_v_filter_predictor(dst, stride, bs, above, left); break;
case H_PRED: av1_h_filter_predictor(dst, stride, bs, above, left); break;
case D45_PRED:
case FILTER_DC_PRED:
av1_dc_filter_predictor(dst, stride, bs, above, left);
break;
case FILTER_V_PRED:
av1_v_filter_predictor(dst, stride, bs, above, left);
break;
case FILTER_H_PRED:
av1_h_filter_predictor(dst, stride, bs, above, left);
break;
case FILTER_D45_PRED:
av1_d45_filter_predictor(dst, stride, bs, above, left);
break;
case D135_PRED:
case FILTER_D135_PRED:
av1_d135_filter_predictor(dst, stride, bs, above, left);
break;
case D117_PRED:
case FILTER_D117_PRED:
av1_d117_filter_predictor(dst, stride, bs, above, left);
break;
case D153_PRED:
case FILTER_D153_PRED:
av1_d153_filter_predictor(dst, stride, bs, above, left);
break;
case D207_PRED:
case FILTER_D207_PRED:
av1_d207_filter_predictor(dst, stride, bs, above, left);
break;
case D63_PRED:
case FILTER_D63_PRED:
av1_d63_filter_predictor(dst, stride, bs, above, left);
break;
case TM_PRED: av1_tm_filter_predictor(dst, stride, bs, above, left); break;
case FILTER_TM_PRED:
av1_tm_filter_predictor(dst, stride, bs, above, left);
break;
default: assert(0);
}
}
......@@ -1199,39 +1207,39 @@ void av1_highbd_tm_filter_predictor_c(uint16_t *dst, ptrdiff_t stride, int bs,
bd);
}
static void highbd_filter_intra_predictors(int mode, uint16_t *dst,
ptrdiff_t stride, int bs,
const uint16_t *above,
static void highbd_filter_intra_predictors(FILTER_INTRA_MODE mode,
uint16_t *dst, ptrdiff_t stride,
int bs, const uint16_t *above,
const uint16_t *left, int bd) {
switch (mode) {
case DC_PRED:
case FILTER_DC_PRED:
av1_highbd_dc_filter_predictor(dst, stride, bs, above, left, bd);
break;
case V_PRED:
case FILTER_V_PRED:
av1_highbd_v_filter_predictor(dst, stride, bs, above, left, bd);
break;
case H_PRED:
case FILTER_H_PRED:
av1_highbd_h_filter_predictor(dst, stride, bs, above, left, bd);
break;
case D45_PRED:
case FILTER_D45_PRED:
av1_highbd_d45_filter_predictor(dst, stride, bs, above, left, bd);
break;
case D135_PRED:
case FILTER_D135_PRED:
av1_highbd_d135_filter_predictor(dst, stride, bs, above, left, bd);
break;
case D117_PRED:
case FILTER_D117_PRED:
av1_highbd_d117_filter_predictor(dst, stride, bs, above, left, bd);
break;
case D153_PRED:
case FILTER_D153_PRED:
av1_highbd_d153_filter_predictor(dst, stride, bs, above, left, bd);
break;
case D207_PRED:
case FILTER_D207_PRED:
av1_highbd_d207_filter_predictor(dst, stride, bs, above, left, bd);
break;
case D63_PRED:
case FILTER_D63_PRED:
av1_highbd_d63_filter_predictor(dst, stride, bs, above, left, bd);
break;
case TM_PRED:
case FILTER_TM_PRED:
av1_highbd_tm_filter_predictor(dst, stride, bs, above, left, bd);
break;
default: assert(0);
......
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