diff --git a/vp10/common/blockd.h b/vp10/common/blockd.h index bc2c417fb..25fb56937 100644 --- a/vp10/common/blockd.h +++ b/vp10/common/blockd.h @@ -484,6 +484,15 @@ static const int ext_tx_used_inter[EXT_TX_SETS_INTER][TX_TYPES] = { {1, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0}, }; +// 1D Transforms used in inter set, this needs to be changed if +// ext_tx_used_inter is changed +static const int ext_tx_used_inter_1D[EXT_TX_SETS_INTER][TX_TYPES_1D] = { + {1, 0, 0, 0}, + {1, 1, 1, 1}, + {1, 1, 1, 1}, + {1, 0, 0, 1}, +}; + static INLINE int get_ext_tx_types(TX_SIZE tx_size, BLOCK_SIZE bs, int is_inter) { const int set = get_ext_tx_set(tx_size, bs, is_inter); diff --git a/vp10/common/enums.h b/vp10/common/enums.h index ee9e22686..3b2ef2973 100644 --- a/vp10/common/enums.h +++ b/vp10/common/enums.h @@ -156,6 +156,15 @@ typedef enum { TX_MODES = 5, } TX_MODE; +// 1D tx types +typedef enum { + DCT_1D = 0, + ADST_1D = 1, + FLIPADST_1D = 2, + IDTX_1D = 3, + TX_TYPES_1D = 4, +} TX_TYPE_1D; + typedef enum { DCT_DCT = 0, // DCT in both horizontal and vertical ADST_DCT = 1, // ADST in vertical, DCT in horizontal diff --git a/vp10/encoder/rdopt.c b/vp10/encoder/rdopt.c index 532b3345f..dc9e69026 100644 --- a/vp10/encoder/rdopt.c +++ b/vp10/encoder/rdopt.c @@ -363,14 +363,6 @@ static void swap_block_ptr(MACROBLOCK *x, PICK_MODE_CONTEXT *ctx, #define FAST_EXT_TX_CORR_MARGIN 0.3 #define FAST_EXT_TX_EDST_MARGIN 0.5 -typedef enum { - DCT_1D = 0, - ADST_1D = 1, - FLIPADST_1D = 2, - IDTX_1D = 3, - TX_TYPES_1D = 4, -} TX_TYPE_1D; - static void get_energy_distribution_fine(const VP10_COMP *cpi, BLOCK_SIZE bsize, uint8_t *src, int src_stride,