diff --git a/lib_com/options.h b/lib_com/options.h index 6f0d8e55eecabd7851829ca66e771ef0e0d4ba91..149ff6fbd1b193bbfab004e6505274cb65fcd459 100644 --- a/lib_com/options.h +++ b/lib_com/options.h @@ -98,6 +98,8 @@ /* #################### Start NON-BE switches ############################ */ /* any switch which is non-be wrt. TS 26.251 V3.0 */ +#define FIX_2432_ISM_SPIKES_16KHZ /* VA: basop issue 2432: fix spikes in ISM decoding at 16kHz output sampling rate */ + /* ##################### End NON-BE switches ########################### */ diff --git a/lib_dec/ivas_core_dec_fx.c b/lib_dec/ivas_core_dec_fx.c index 5a208446f04a1724fe1d1493f14478cdbf6b1217..ffbdb5ad30e3148e50108148c48190a0142a12b1 100644 --- a/lib_dec/ivas_core_dec_fx.c +++ b/lib_dec/ivas_core_dec_fx.c @@ -1031,7 +1031,14 @@ ivas_error ivas_core_dec_fx( test(); test(); test(); +#ifdef FIX_2432_ISM_SPIKES_16KHZ + test(); + test(); + test(); + IF( ( st->core == ACELP_CORE && ( EQ_16( st->extl, -1 ) || EQ_16( st->extl, SWB_CNG ) || ( EQ_16( st->extl, WB_BWE ) && st->bws_cnt > 0 && flaf_swb_tbe == 0 ) ) ) && flag_bwe_bws == 0 ) +#else IF( ( st->core == ACELP_CORE && ( EQ_16( st->extl, -1 ) || EQ_16( st->extl, SWB_CNG ) ) ) && flag_bwe_bws == 0 ) +#endif { set32_fx( hb_synth_32_fx[n], 0, L_FRAME48k ); }