Move vp9_coef_con_tree to common/
This tree should be defined in common/, as it is needed for both encoder and decoder. Change-Id: I4f5cbc80025cf2ced14182c98f7c82dc7d0f87db
This commit is contained in:
Родитель
9b99eb2e12
Коммит
302e24cb3e
|
@ -15,6 +15,18 @@
|
|||
#include "vpx_mem/vpx_mem.h"
|
||||
#include "vpx/vpx_integer.h"
|
||||
|
||||
// Unconstrained Node Tree
|
||||
const vp9_tree_index vp9_coef_con_tree[TREE_SIZE(ENTROPY_TOKENS)] = {
|
||||
2, 6, // 0 = LOW_VAL
|
||||
-TWO_TOKEN, 4, // 1 = TWO
|
||||
-THREE_TOKEN, -FOUR_TOKEN, // 2 = THREE
|
||||
8, 10, // 3 = HIGH_LOW
|
||||
-CATEGORY1_TOKEN, -CATEGORY2_TOKEN, // 4 = CAT_ONE
|
||||
12, 14, // 5 = CAT_THREEFOUR
|
||||
-CATEGORY3_TOKEN, -CATEGORY4_TOKEN, // 6 = CAT_THREE
|
||||
-CATEGORY5_TOKEN, -CATEGORY6_TOKEN // 7 = CAT_FIVE
|
||||
};
|
||||
|
||||
const vp9_prob vp9_cat1_prob[] = { 159 };
|
||||
const vp9_prob vp9_cat2_prob[] = { 165, 145 };
|
||||
const vp9_prob vp9_cat3_prob[] = { 173, 148, 140 };
|
||||
|
|
|
@ -173,6 +173,7 @@ static INLINE const uint8_t *get_band_translate(TX_SIZE tx_size) {
|
|||
#define PIVOT_NODE 2 // which node is pivot
|
||||
|
||||
#define MODEL_NODES (ENTROPY_NODES - UNCONSTRAINED_NODES)
|
||||
extern const vp9_tree_index vp9_coef_con_tree[TREE_SIZE(ENTROPY_TOKENS)];
|
||||
extern const vp9_prob vp9_pareto8_full[COEFF_PROB_MODELS][MODEL_NODES];
|
||||
|
||||
typedef vp9_prob vp9_coeff_probs_model[REF_TYPES][COEF_BANDS]
|
||||
|
|
|
@ -45,17 +45,6 @@ static INLINE int read_coeff(const vp9_prob *probs, int n, vp9_reader *r) {
|
|||
return val;
|
||||
}
|
||||
|
||||
static const vp9_tree_index coeff_subtree_high[TREE_SIZE(ENTROPY_TOKENS)] = {
|
||||
2, 6, /* 0 = LOW_VAL */
|
||||
-TWO_TOKEN, 4, /* 1 = TWO */
|
||||
-THREE_TOKEN, -FOUR_TOKEN, /* 2 = THREE */
|
||||
8, 10, /* 3 = HIGH_LOW */
|
||||
-CATEGORY1_TOKEN, -CATEGORY2_TOKEN, /* 4 = CAT_ONE */
|
||||
12, 14, /* 5 = CAT_THREEFOUR */
|
||||
-CATEGORY3_TOKEN, -CATEGORY4_TOKEN, /* 6 = CAT_THREE */
|
||||
-CATEGORY5_TOKEN, -CATEGORY6_TOKEN /* 7 = CAT_FIVE */
|
||||
};
|
||||
|
||||
static int decode_coefs(VP9_COMMON *cm, const MACROBLOCKD *xd,
|
||||
FRAME_COUNTS *counts, PLANE_TYPE type,
|
||||
tran_low_t *dqcoeff, TX_SIZE tx_size, const int16_t *dq,
|
||||
|
@ -147,7 +136,7 @@ static int decode_coefs(VP9_COMMON *cm, const MACROBLOCKD *xd,
|
|||
val = 1;
|
||||
} else {
|
||||
INCREMENT_COUNT(TWO_TOKEN);
|
||||
token = vp9_read_tree(r, coeff_subtree_high,
|
||||
token = vp9_read_tree(r, vp9_coef_con_tree,
|
||||
vp9_pareto8_full[prob[PIVOT_NODE] - 1]);
|
||||
switch (token) {
|
||||
case TWO_TOKEN:
|
||||
|
|
|
@ -65,18 +65,6 @@ const vp9_tree_index vp9_coef_tree[TREE_SIZE(ENTROPY_TOKENS)] = {
|
|||
-CATEGORY5_TOKEN, -CATEGORY6_TOKEN // 10 = CAT_FIVE
|
||||
};
|
||||
|
||||
// Unconstrained Node Tree
|
||||
const vp9_tree_index vp9_coef_con_tree[TREE_SIZE(ENTROPY_TOKENS)] = {
|
||||
2, 6, // 0 = LOW_VAL
|
||||
-TWO_TOKEN, 4, // 1 = TWO
|
||||
-THREE_TOKEN, -FOUR_TOKEN, // 2 = THREE
|
||||
8, 10, // 3 = HIGH_LOW
|
||||
-CATEGORY1_TOKEN, -CATEGORY2_TOKEN, // 4 = CAT_ONE
|
||||
12, 14, // 5 = CAT_THREEFOUR
|
||||
-CATEGORY3_TOKEN, -CATEGORY4_TOKEN, // 6 = CAT_THREE
|
||||
-CATEGORY5_TOKEN, -CATEGORY6_TOKEN // 7 = CAT_FIVE
|
||||
};
|
||||
|
||||
static const vp9_tree_index cat1[2] = {0, 0};
|
||||
static const vp9_tree_index cat2[4] = {2, 2, 0, 0};
|
||||
static const vp9_tree_index cat3[6] = {2, 2, 4, 4, 0, 0};
|
||||
|
|
Загрузка…
Ссылка в новой задаче