tx64x64: Use C version for DCT/IDCT transform. The SSE4 function does not support 64x64 size, and was triggering an assertion failure lowbitdepth is disabled. BUG=aomedia:672 Change-Id: Id14e76b5c180a211a84c2e933b07e8acf72dddbc
diff --git a/av1/common/av1_fwd_txfm2d.c b/av1/common/av1_fwd_txfm2d.c index bbd08e2..90c571e 100644 --- a/av1/common/av1_fwd_txfm2d.c +++ b/av1/common/av1_fwd_txfm2d.c
@@ -24,6 +24,9 @@ case TXFM_TYPE_DCT8: return av1_fdct8_new; case TXFM_TYPE_DCT16: return av1_fdct16_new; case TXFM_TYPE_DCT32: return av1_fdct32_new; +#if CONFIG_TX64X64 + case TXFM_TYPE_DCT64: return av1_fdct64_new; +#endif // CONFIG_TX64X64 case TXFM_TYPE_ADST4: return av1_fadst4_new; case TXFM_TYPE_ADST8: return av1_fadst8_new; case TXFM_TYPE_ADST16: return av1_fadst16_new;
diff --git a/av1/common/av1_inv_txfm2d.c b/av1/common/av1_inv_txfm2d.c index ddcb00f..ba5ae4d 100644 --- a/av1/common/av1_inv_txfm2d.c +++ b/av1/common/av1_inv_txfm2d.c
@@ -22,6 +22,9 @@ case TXFM_TYPE_DCT8: return av1_idct8_new; case TXFM_TYPE_DCT16: return av1_idct16_new; case TXFM_TYPE_DCT32: return av1_idct32_new; +#if CONFIG_TX64X64 + case TXFM_TYPE_DCT64: return av1_idct64_new; +#endif // CONFIG_TX64X64 case TXFM_TYPE_ADST4: return av1_iadst4_new; case TXFM_TYPE_ADST8: return av1_iadst8_new; case TXFM_TYPE_ADST16: return av1_iadst16_new;
diff --git a/av1/common/av1_rtcd_defs.pl b/av1/common/av1_rtcd_defs.pl index dc6a844..999d975 100755 --- a/av1/common/av1_rtcd_defs.pl +++ b/av1/common/av1_rtcd_defs.pl
@@ -412,7 +412,6 @@ add_proto qw/void av1_fwd_txfm2d_32x32/, "const int16_t *input, int32_t *output, int stride, int tx_type, int bd"; specialize qw/av1_fwd_txfm2d_32x32 sse4_1/; add_proto qw/void av1_fwd_txfm2d_64x64/, "const int16_t *input, int32_t *output, int stride, int tx_type, int bd"; -specialize qw/av1_fwd_txfm2d_64x64 sse4_1/; # # Motion search @@ -457,11 +456,6 @@ add_proto qw/int64_t av1_highbd_block_error/, "const tran_low_t *coeff, const tran_low_t *dqcoeff, intptr_t block_size, int64_t *ssz, int bd"; specialize qw/av1_highbd_block_error sse2/; - # fdct functions - if (aom_config("CONFIG_TX64X64") eq "yes") { - add_proto qw/void av1_highbd_fht64x64/, "const int16_t *input, tran_low_t *output, int stride, int tx_type"; - } - add_proto qw/void av1_highbd_temporal_filter_apply/, "uint8_t *frame1, unsigned int stride, uint8_t *frame2, unsigned int block_width, unsigned int block_height, int strength, int filter_weight, unsigned int *accumulator, uint16_t *count"; }