Commit aa0d90f0 authored by Yue Chen's avatar Yue Chen

Fix av1_get_tx_scale() for 32x8 and 8x32 tx

Make it 0 to run at higher precision

Change-Id: I51decbf9179efa18a1a06dcc3f0e939d9895a5cd
parent 4268571e
......@@ -21,13 +21,8 @@
#include "av1/common/idct.h"
int av1_get_tx_scale(const TX_SIZE tx_size) {
if (txsize_sqr_up_map[tx_size] == TX_32X32) return 1;
#if CONFIG_TX64X64
else if (txsize_sqr_up_map[tx_size] == TX_64X64)
return 2;
#endif // CONFIG_TX64X64
else
return 0;
const int pels = tx_size_2d[tx_size];
return (pels > 256) + (pels > 1024) + (pels > 4096);
}
// NOTE: The implementation of all inverses need to be aware of the fact
......
......@@ -1928,7 +1928,7 @@ void av1_fht8x32_c(const int16_t *input, tran_low_t *output, int stride,
for (j = 0; j < n4; ++j)
output[i + j * n] = ROUND_POWER_OF_TWO_SIGNED(temp_out[j], 2);
}
// Note: overall scale factor of transform is 4 times unitary
// Note: overall scale factor of transform is 8 times unitary
}
void av1_fht32x8_c(const int16_t *input, tran_low_t *output, int stride,
......@@ -1995,7 +1995,7 @@ void av1_fht32x8_c(const int16_t *input, tran_low_t *output, int stride,
for (j = 0; j < n4; ++j)
output[j + i * n4] = ROUND_POWER_OF_TWO_SIGNED(temp_out[j], 2);
}
// Note: overall scale factor of transform is 4 times unitary
// Note: overall scale factor of transform is 8 times unitary
}
void av1_fht16x32_c(const int16_t *input, tran_low_t *output, int stride,
......
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