summaryrefslogtreecommitdiffstats
path: root/third_party/aom/av1/common/reconintra.h
diff options
context:
space:
mode:
Diffstat (limited to 'third_party/aom/av1/common/reconintra.h')
-rw-r--r--third_party/aom/av1/common/reconintra.h62
1 files changed, 22 insertions, 40 deletions
diff --git a/third_party/aom/av1/common/reconintra.h b/third_party/aom/av1/common/reconintra.h
index 67e5706d6..42797e310 100644
--- a/third_party/aom/av1/common/reconintra.h
+++ b/third_party/aom/av1/common/reconintra.h
@@ -14,60 +14,34 @@
#include "aom/aom_integer.h"
#include "av1/common/blockd.h"
+#include "av1/common/onyxc_int.h"
#ifdef __cplusplus
extern "C" {
#endif
-#if CONFIG_DPCM_INTRA
-static INLINE int av1_use_dpcm_intra(int plane, PREDICTION_MODE mode,
- TX_TYPE tx_type,
- const MB_MODE_INFO *const mbmi) {
- (void)mbmi;
- (void)plane;
-#if CONFIG_EXT_INTRA
- if (mbmi->sb_type >= BLOCK_8X8 && mbmi->angle_delta[plane != 0]) return 0;
-#endif // CONFIG_EXT_INTRA
- return (mode == V_PRED && (tx_type == IDTX || tx_type == H_DCT)) ||
- (mode == H_PRED && (tx_type == IDTX || tx_type == V_DCT));
-}
-#endif // CONFIG_DPCM_INTRA
-
void av1_init_intra_predictors(void);
-void av1_predict_intra_block_facade(MACROBLOCKD *xd, int plane, int block_idx,
- int blk_col, int blk_row, TX_SIZE tx_size);
-void av1_predict_intra_block(const MACROBLOCKD *xd, int bw, int bh,
- BLOCK_SIZE bsize, PREDICTION_MODE mode,
- const uint8_t *ref, int ref_stride, uint8_t *dst,
- int dst_stride, int aoff, int loff, int plane);
+void av1_predict_intra_block_facade(const AV1_COMMON *cm, MACROBLOCKD *xd,
+ int plane, int block_idx, int blk_col,
+ int blk_row, TX_SIZE tx_size);
+void av1_predict_intra_block(const AV1_COMMON *cm, const MACROBLOCKD *xd,
+ int bw, int bh, BLOCK_SIZE bsize,
+ PREDICTION_MODE mode, const uint8_t *ref,
+ int ref_stride, uint8_t *dst, int dst_stride,
+ int aoff, int loff, int plane);
-#if CONFIG_EXT_INTER && CONFIG_INTERINTRA
+#if CONFIG_INTERINTRA
// Mapping of interintra to intra mode for use in the intra component
static const PREDICTION_MODE interintra_to_intra_mode[INTERINTRA_MODES] = {
- DC_PRED, V_PRED, H_PRED,
-#if CONFIG_ALT_INTRA
- SMOOTH_PRED
-#else
- TM_PRED
-#endif
+ DC_PRED, V_PRED, H_PRED, SMOOTH_PRED
};
// Mapping of intra mode to the interintra mode
static const INTERINTRA_MODE intra_to_interintra_mode[INTRA_MODES] = {
- II_DC_PRED, II_V_PRED, II_H_PRED, II_V_PRED,
-#if CONFIG_ALT_INTRA
- II_SMOOTH_PRED,
-#else
- II_TM_PRED,
-#endif
- II_V_PRED, II_H_PRED, II_H_PRED, II_V_PRED,
-#if CONFIG_ALT_INTRA
- II_SMOOTH_PRED, II_SMOOTH_PRED
-#else
- II_TM_PRED
-#endif
+ II_DC_PRED, II_V_PRED, II_H_PRED, II_V_PRED, II_SMOOTH_PRED, II_V_PRED,
+ II_H_PRED, II_H_PRED, II_V_PRED, II_SMOOTH_PRED, II_SMOOTH_PRED
};
-#endif // CONFIG_EXT_INTER && CONFIG_INTERINTRA
+#endif // CONFIG_INTERINTRA
#if CONFIG_FILTER_INTRA
#define FILTER_INTRA_PREC_BITS 10
@@ -97,6 +71,14 @@ static INLINE int av1_use_angle_delta(BLOCK_SIZE bsize) {
}
#endif // CONFIG_EXT_INTRA
+#if CONFIG_INTRABC
+static INLINE int av1_allow_intrabc(BLOCK_SIZE bsize,
+ const AV1_COMMON *const cm) {
+ return (bsize >= BLOCK_8X8 || bsize == BLOCK_4X4) &&
+ cm->allow_screen_content_tools;
+}
+#endif // CONFIG_INTRABC
+
#ifdef __cplusplus
} // extern "C"
#endif