Merge changes I67543d36,I763f2924 into nextgenv2
* changes: Reduce shift in txfm8x8 Let txfm's constant bit be the same for each stage
This commit is contained in:
@@ -32,11 +32,11 @@ static const TXFM_2D_CFG fwd_txfm_2d_cfg_dct_dct_4 = {
|
||||
TXFM_TYPE_DCT4}; // .txfm_type_row
|
||||
|
||||
// ---------------- config fwd_dct_dct_8 ----------------
|
||||
static const int8_t fwd_shift_dct_dct_8[3] = {3, -1, -1};
|
||||
static const int8_t fwd_stage_range_col_dct_dct_8[6] = {16, 17, 18, 19, 19, 19};
|
||||
static const int8_t fwd_stage_range_row_dct_dct_8[6] = {18, 19, 20, 20, 20, 20};
|
||||
static const int8_t fwd_shift_dct_dct_8[3] = {2, -1, 0};
|
||||
static const int8_t fwd_stage_range_col_dct_dct_8[6] = {15, 16, 17, 18, 18, 18};
|
||||
static const int8_t fwd_stage_range_row_dct_dct_8[6] = {17, 18, 19, 19, 19, 19};
|
||||
static const int8_t fwd_cos_bit_col_dct_dct_8[6] = {13, 13, 13, 13, 13, 13};
|
||||
static const int8_t fwd_cos_bit_row_dct_dct_8[6] = {13, 13, 12, 12, 12, 12};
|
||||
static const int8_t fwd_cos_bit_row_dct_dct_8[6] = {13, 13, 13, 13, 13, 13};
|
||||
|
||||
static const TXFM_2D_CFG fwd_txfm_2d_cfg_dct_dct_8 = {
|
||||
8, // .txfm_size
|
||||
@@ -59,7 +59,7 @@ static const int8_t fwd_stage_range_row_dct_dct_16[8] = {17, 18, 19, 20,
|
||||
20, 20, 20, 20};
|
||||
static const int8_t fwd_cos_bit_col_dct_dct_16[8] = {13, 13, 13, 13,
|
||||
13, 13, 13, 13};
|
||||
static const int8_t fwd_cos_bit_row_dct_dct_16[8] = {13, 13, 13, 12,
|
||||
static const int8_t fwd_cos_bit_row_dct_dct_16[8] = {12, 12, 12, 12,
|
||||
12, 12, 12, 12};
|
||||
|
||||
static const TXFM_2D_CFG fwd_txfm_2d_cfg_dct_dct_16 = {
|
||||
@@ -81,9 +81,9 @@ static const int8_t fwd_stage_range_col_dct_dct_32[10] = {15, 16, 17, 18, 19,
|
||||
20, 20, 20, 20, 20};
|
||||
static const int8_t fwd_stage_range_row_dct_dct_32[10] = {16, 17, 18, 19, 20,
|
||||
20, 20, 20, 20, 20};
|
||||
static const int8_t fwd_cos_bit_col_dct_dct_32[10] = {13, 13, 13, 13, 13,
|
||||
static const int8_t fwd_cos_bit_col_dct_dct_32[10] = {12, 12, 12, 12, 12,
|
||||
12, 12, 12, 12, 12};
|
||||
static const int8_t fwd_cos_bit_row_dct_dct_32[10] = {13, 13, 13, 13, 12,
|
||||
static const int8_t fwd_cos_bit_row_dct_dct_32[10] = {12, 12, 12, 12, 12,
|
||||
12, 12, 12, 12, 12};
|
||||
|
||||
static const TXFM_2D_CFG fwd_txfm_2d_cfg_dct_dct_32 = {
|
||||
@@ -144,14 +144,14 @@ static const TXFM_2D_CFG fwd_txfm_2d_cfg_dct_adst_4 = {
|
||||
TXFM_TYPE_ADST4}; // .txfm_type_row
|
||||
|
||||
// ---------------- config fwd_dct_adst_8 ----------------
|
||||
static const int8_t fwd_shift_dct_adst_8[3] = {3, -1, -1};
|
||||
static const int8_t fwd_stage_range_col_dct_adst_8[6] = {16, 17, 18,
|
||||
19, 19, 19};
|
||||
static const int8_t fwd_stage_range_row_dct_adst_8[8] = {18, 18, 18, 19,
|
||||
19, 20, 20, 20};
|
||||
static const int8_t fwd_shift_dct_adst_8[3] = {2, -1, 0};
|
||||
static const int8_t fwd_stage_range_col_dct_adst_8[6] = {15, 16, 17,
|
||||
18, 18, 18};
|
||||
static const int8_t fwd_stage_range_row_dct_adst_8[8] = {17, 17, 17, 18,
|
||||
18, 19, 19, 19};
|
||||
static const int8_t fwd_cos_bit_col_dct_adst_8[6] = {13, 13, 13, 13, 13, 13};
|
||||
static const int8_t fwd_cos_bit_row_dct_adst_8[8] = {13, 13, 13, 13,
|
||||
13, 12, 12, 12};
|
||||
13, 13, 13, 13};
|
||||
|
||||
static const TXFM_2D_CFG fwd_txfm_2d_cfg_dct_adst_8 = {
|
||||
8, // .txfm_size
|
||||
@@ -174,8 +174,8 @@ static const int8_t fwd_stage_range_row_dct_adst_16[10] = {17, 17, 17, 18, 18,
|
||||
19, 19, 20, 20, 20};
|
||||
static const int8_t fwd_cos_bit_col_dct_adst_16[8] = {13, 13, 13, 13,
|
||||
13, 13, 13, 13};
|
||||
static const int8_t fwd_cos_bit_row_dct_adst_16[10] = {13, 13, 13, 13, 13,
|
||||
13, 13, 12, 12, 12};
|
||||
static const int8_t fwd_cos_bit_row_dct_adst_16[10] = {12, 12, 12, 12, 12,
|
||||
12, 12, 12, 12, 12};
|
||||
|
||||
static const TXFM_2D_CFG fwd_txfm_2d_cfg_dct_adst_16 = {
|
||||
16, // .txfm_size
|
||||
@@ -196,10 +196,10 @@ static const int8_t fwd_stage_range_col_dct_adst_32[10] = {15, 16, 17, 18, 19,
|
||||
20, 20, 20, 20, 20};
|
||||
static const int8_t fwd_stage_range_row_dct_adst_32[12] = {
|
||||
16, 16, 16, 17, 17, 18, 18, 19, 19, 20, 20, 20};
|
||||
static const int8_t fwd_cos_bit_col_dct_adst_32[10] = {13, 13, 13, 13, 13,
|
||||
static const int8_t fwd_cos_bit_col_dct_adst_32[10] = {12, 12, 12, 12, 12,
|
||||
12, 12, 12, 12, 12};
|
||||
static const int8_t fwd_cos_bit_row_dct_adst_32[12] = {13, 13, 13, 13, 13, 13,
|
||||
13, 13, 13, 12, 12, 12};
|
||||
static const int8_t fwd_cos_bit_row_dct_adst_32[12] = {12, 12, 12, 12, 12, 12,
|
||||
12, 12, 12, 12, 12, 12};
|
||||
|
||||
static const TXFM_2D_CFG fwd_txfm_2d_cfg_dct_adst_32 = {
|
||||
32, // .txfm_size
|
||||
@@ -236,15 +236,15 @@ static const TXFM_2D_CFG fwd_txfm_2d_cfg_adst_adst_4 = {
|
||||
TXFM_TYPE_ADST4}; // .txfm_type_row
|
||||
|
||||
// ---------------- config fwd_adst_adst_8 ----------------
|
||||
static const int8_t fwd_shift_adst_adst_8[3] = {3, -1, -1};
|
||||
static const int8_t fwd_stage_range_col_adst_adst_8[8] = {16, 16, 17, 18,
|
||||
static const int8_t fwd_shift_adst_adst_8[3] = {2, -1, 0};
|
||||
static const int8_t fwd_stage_range_col_adst_adst_8[8] = {15, 15, 16, 17,
|
||||
17, 18, 18, 18};
|
||||
static const int8_t fwd_stage_range_row_adst_adst_8[8] = {17, 17, 17, 18,
|
||||
18, 19, 19, 19};
|
||||
static const int8_t fwd_stage_range_row_adst_adst_8[8] = {18, 18, 18, 19,
|
||||
19, 20, 20, 20};
|
||||
static const int8_t fwd_cos_bit_col_adst_adst_8[8] = {13, 13, 13, 13,
|
||||
13, 13, 13, 13};
|
||||
static const int8_t fwd_cos_bit_row_adst_adst_8[8] = {13, 13, 13, 13,
|
||||
13, 12, 12, 12};
|
||||
13, 13, 13, 13};
|
||||
|
||||
static const TXFM_2D_CFG fwd_txfm_2d_cfg_adst_adst_8 = {
|
||||
8, // .txfm_size
|
||||
@@ -267,8 +267,8 @@ static const int8_t fwd_stage_range_row_adst_adst_16[10] = {17, 17, 17, 18, 18,
|
||||
19, 19, 20, 20, 20};
|
||||
static const int8_t fwd_cos_bit_col_adst_adst_16[10] = {13, 13, 13, 13, 13,
|
||||
13, 13, 13, 13, 13};
|
||||
static const int8_t fwd_cos_bit_row_adst_adst_16[10] = {13, 13, 13, 13, 13,
|
||||
13, 13, 12, 12, 12};
|
||||
static const int8_t fwd_cos_bit_row_adst_adst_16[10] = {12, 12, 12, 12, 12,
|
||||
12, 12, 12, 12, 12};
|
||||
|
||||
static const TXFM_2D_CFG fwd_txfm_2d_cfg_adst_adst_16 = {
|
||||
16, // .txfm_size
|
||||
@@ -289,10 +289,10 @@ static const int8_t fwd_stage_range_col_adst_adst_32[12] = {
|
||||
15, 15, 16, 17, 17, 18, 18, 19, 19, 20, 20, 20};
|
||||
static const int8_t fwd_stage_range_row_adst_adst_32[12] = {
|
||||
16, 16, 16, 17, 17, 18, 18, 19, 19, 20, 20, 20};
|
||||
static const int8_t fwd_cos_bit_col_adst_adst_32[12] = {13, 13, 13, 13, 13, 13,
|
||||
13, 13, 13, 12, 12, 12};
|
||||
static const int8_t fwd_cos_bit_row_adst_adst_32[12] = {13, 13, 13, 13, 13, 13,
|
||||
13, 13, 13, 12, 12, 12};
|
||||
static const int8_t fwd_cos_bit_col_adst_adst_32[12] = {12, 12, 12, 12, 12, 12,
|
||||
12, 12, 12, 12, 12, 12};
|
||||
static const int8_t fwd_cos_bit_row_adst_adst_32[12] = {12, 12, 12, 12, 12, 12,
|
||||
12, 12, 12, 12, 12, 12};
|
||||
|
||||
static const TXFM_2D_CFG fwd_txfm_2d_cfg_adst_adst_32 = {
|
||||
32, // .txfm_size
|
||||
@@ -329,14 +329,14 @@ static const TXFM_2D_CFG fwd_txfm_2d_cfg_adst_dct_4 = {
|
||||
TXFM_TYPE_DCT4}; // .txfm_type_row
|
||||
|
||||
// ---------------- config fwd_adst_dct_8 ----------------
|
||||
static const int8_t fwd_shift_adst_dct_8[3] = {3, -1, -1};
|
||||
static const int8_t fwd_stage_range_col_adst_dct_8[8] = {16, 16, 17, 18,
|
||||
18, 19, 19, 19};
|
||||
static const int8_t fwd_stage_range_row_adst_dct_8[6] = {18, 19, 20,
|
||||
20, 20, 20};
|
||||
static const int8_t fwd_shift_adst_dct_8[3] = {2, -1, 0};
|
||||
static const int8_t fwd_stage_range_col_adst_dct_8[8] = {15, 15, 16, 17,
|
||||
17, 18, 18, 18};
|
||||
static const int8_t fwd_stage_range_row_adst_dct_8[6] = {17, 18, 19,
|
||||
19, 19, 19};
|
||||
static const int8_t fwd_cos_bit_col_adst_dct_8[8] = {13, 13, 13, 13,
|
||||
13, 13, 13, 13};
|
||||
static const int8_t fwd_cos_bit_row_adst_dct_8[6] = {13, 13, 12, 12, 12, 12};
|
||||
static const int8_t fwd_cos_bit_row_adst_dct_8[6] = {13, 13, 13, 13, 13, 13};
|
||||
|
||||
static const TXFM_2D_CFG fwd_txfm_2d_cfg_adst_dct_8 = {
|
||||
8, // .txfm_size
|
||||
@@ -359,7 +359,7 @@ static const int8_t fwd_stage_range_row_adst_dct_16[8] = {17, 18, 19, 20,
|
||||
20, 20, 20, 20};
|
||||
static const int8_t fwd_cos_bit_col_adst_dct_16[10] = {13, 13, 13, 13, 13,
|
||||
13, 13, 13, 13, 13};
|
||||
static const int8_t fwd_cos_bit_row_adst_dct_16[8] = {13, 13, 13, 12,
|
||||
static const int8_t fwd_cos_bit_row_adst_dct_16[8] = {12, 12, 12, 12,
|
||||
12, 12, 12, 12};
|
||||
|
||||
static const TXFM_2D_CFG fwd_txfm_2d_cfg_adst_dct_16 = {
|
||||
@@ -381,9 +381,9 @@ static const int8_t fwd_stage_range_col_adst_dct_32[12] = {
|
||||
15, 15, 16, 17, 17, 18, 18, 19, 19, 20, 20, 20};
|
||||
static const int8_t fwd_stage_range_row_adst_dct_32[10] = {16, 17, 18, 19, 20,
|
||||
20, 20, 20, 20, 20};
|
||||
static const int8_t fwd_cos_bit_col_adst_dct_32[12] = {13, 13, 13, 13, 13, 13,
|
||||
13, 13, 13, 12, 12, 12};
|
||||
static const int8_t fwd_cos_bit_row_adst_dct_32[10] = {13, 13, 13, 13, 12,
|
||||
static const int8_t fwd_cos_bit_col_adst_dct_32[12] = {12, 12, 12, 12, 12, 12,
|
||||
12, 12, 12, 12, 12, 12};
|
||||
static const int8_t fwd_cos_bit_row_adst_dct_32[10] = {12, 12, 12, 12, 12,
|
||||
12, 12, 12, 12, 12};
|
||||
|
||||
static const TXFM_2D_CFG fwd_txfm_2d_cfg_adst_dct_32 = {
|
||||
|
||||
@@ -32,10 +32,10 @@ static const TXFM_2D_CFG inv_txfm_2d_cfg_dct_dct_4 = {
|
||||
TXFM_TYPE_DCT4}; // .txfm_type_row
|
||||
|
||||
// ---------------- config inv_dct_dct_8 ----------------
|
||||
static const int8_t inv_shift_dct_dct_8[2] = {1, -6};
|
||||
static const int8_t inv_stage_range_col_dct_dct_8[6] = {20, 20, 20, 20, 19, 19};
|
||||
static const int8_t inv_shift_dct_dct_8[2] = {0, -5};
|
||||
static const int8_t inv_stage_range_col_dct_dct_8[6] = {19, 19, 19, 19, 18, 18};
|
||||
static const int8_t inv_stage_range_row_dct_dct_8[6] = {19, 19, 19, 19, 19, 19};
|
||||
static const int8_t inv_cos_bit_col_dct_dct_8[6] = {12, 12, 12, 12, 12, 13};
|
||||
static const int8_t inv_cos_bit_col_dct_dct_8[6] = {13, 13, 13, 13, 13, 13};
|
||||
static const int8_t inv_cos_bit_row_dct_dct_8[6] = {13, 13, 13, 13, 13, 13};
|
||||
|
||||
static const TXFM_2D_CFG inv_txfm_2d_cfg_dct_dct_8 = {
|
||||
@@ -106,7 +106,7 @@ static const int8_t inv_stage_range_col_dct_dct_64[12] = {
|
||||
static const int8_t inv_stage_range_row_dct_dct_64[12] = {
|
||||
20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20};
|
||||
static const int8_t inv_cos_bit_col_dct_dct_64[12] = {13, 13, 13, 13, 13, 13,
|
||||
13, 13, 13, 13, 13, 14};
|
||||
13, 13, 13, 13, 13, 13};
|
||||
static const int8_t inv_cos_bit_row_dct_dct_64[12] = {12, 12, 12, 12, 12, 12,
|
||||
12, 12, 12, 12, 12, 12};
|
||||
|
||||
@@ -144,12 +144,12 @@ static const TXFM_2D_CFG inv_txfm_2d_cfg_dct_adst_4 = {
|
||||
TXFM_TYPE_ADST4}; // .txfm_type_row
|
||||
|
||||
// ---------------- config inv_dct_adst_8 ----------------
|
||||
static const int8_t inv_shift_dct_adst_8[2] = {1, -6};
|
||||
static const int8_t inv_stage_range_col_dct_adst_8[6] = {20, 20, 20,
|
||||
20, 19, 19};
|
||||
static const int8_t inv_shift_dct_adst_8[2] = {0, -5};
|
||||
static const int8_t inv_stage_range_col_dct_adst_8[6] = {19, 19, 19,
|
||||
19, 18, 18};
|
||||
static const int8_t inv_stage_range_row_dct_adst_8[8] = {19, 19, 19, 19,
|
||||
19, 19, 19, 19};
|
||||
static const int8_t inv_cos_bit_col_dct_adst_8[6] = {12, 12, 12, 12, 12, 13};
|
||||
static const int8_t inv_cos_bit_col_dct_adst_8[6] = {13, 13, 13, 13, 13, 13};
|
||||
static const int8_t inv_cos_bit_row_dct_adst_8[8] = {13, 13, 13, 13,
|
||||
13, 13, 13, 13};
|
||||
|
||||
@@ -237,13 +237,13 @@ static const TXFM_2D_CFG inv_txfm_2d_cfg_adst_adst_4 = {
|
||||
TXFM_TYPE_ADST4}; // .txfm_type_row
|
||||
|
||||
// ---------------- config inv_adst_adst_8 ----------------
|
||||
static const int8_t inv_shift_adst_adst_8[2] = {1, -6};
|
||||
static const int8_t inv_stage_range_col_adst_adst_8[8] = {20, 20, 20, 20,
|
||||
20, 20, 19, 19};
|
||||
static const int8_t inv_shift_adst_adst_8[2] = {0, -5};
|
||||
static const int8_t inv_stage_range_col_adst_adst_8[8] = {19, 19, 19, 19,
|
||||
19, 19, 18, 18};
|
||||
static const int8_t inv_stage_range_row_adst_adst_8[8] = {19, 19, 19, 19,
|
||||
19, 19, 19, 19};
|
||||
static const int8_t inv_cos_bit_col_adst_adst_8[8] = {12, 12, 12, 12,
|
||||
12, 12, 12, 13};
|
||||
static const int8_t inv_cos_bit_col_adst_adst_8[8] = {13, 13, 13, 13,
|
||||
13, 13, 13, 13};
|
||||
static const int8_t inv_cos_bit_row_adst_adst_8[8] = {13, 13, 13, 13,
|
||||
13, 13, 13, 13};
|
||||
|
||||
@@ -330,13 +330,13 @@ static const TXFM_2D_CFG inv_txfm_2d_cfg_adst_dct_4 = {
|
||||
TXFM_TYPE_DCT4}; // .txfm_type_row
|
||||
|
||||
// ---------------- config inv_adst_dct_8 ----------------
|
||||
static const int8_t inv_shift_adst_dct_8[2] = {1, -6};
|
||||
static const int8_t inv_stage_range_col_adst_dct_8[8] = {20, 20, 20, 20,
|
||||
20, 20, 19, 19};
|
||||
static const int8_t inv_shift_adst_dct_8[2] = {0, -5};
|
||||
static const int8_t inv_stage_range_col_adst_dct_8[8] = {19, 19, 19, 19,
|
||||
19, 19, 18, 18};
|
||||
static const int8_t inv_stage_range_row_adst_dct_8[6] = {19, 19, 19,
|
||||
19, 19, 19};
|
||||
static const int8_t inv_cos_bit_col_adst_dct_8[8] = {12, 12, 12, 12,
|
||||
12, 12, 12, 13};
|
||||
static const int8_t inv_cos_bit_col_adst_dct_8[8] = {13, 13, 13, 13,
|
||||
13, 13, 13, 13};
|
||||
static const int8_t inv_cos_bit_row_adst_dct_8[6] = {13, 13, 13, 13, 13, 13};
|
||||
|
||||
static const TXFM_2D_CFG inv_txfm_2d_cfg_adst_dct_8 = {
|
||||
|
||||
Reference in New Issue
Block a user