From 9ed6c9747f28d07efc5a86cacecf6c9f3428f1ae Mon Sep 17 00:00:00 2001 From: vaclav Date: Thu, 12 Feb 2026 11:23:34 +0100 Subject: [PATCH 1/2] FIX_2432_ISM_SPIKES_16KHZ --- lib_com/options.h | 2 ++ lib_dec/ivas_core_dec_fx.c | 6 ++++++ 2 files changed, 8 insertions(+) diff --git a/lib_com/options.h b/lib_com/options.h index 6f0d8e55e..149ff6fbd 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 5a208446f..6f5415773 100644 --- a/lib_dec/ivas_core_dec_fx.c +++ b/lib_dec/ivas_core_dec_fx.c @@ -1031,7 +1031,13 @@ ivas_error ivas_core_dec_fx( test(); test(); test(); +#ifdef FIX_2432_ISM_SPIKES_16KHZ + 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 ) ) ) && 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 ); } -- GitLab From 91bfd425167803317316cf1db5a9974bb9d0b0ae Mon Sep 17 00:00:00 2001 From: vaclav Date: Thu, 12 Feb 2026 12:02:08 +0100 Subject: [PATCH 2/2] FIX_2432_ISM_SPIKES_16KHZ --- lib_dec/ivas_core_dec_fx.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/lib_dec/ivas_core_dec_fx.c b/lib_dec/ivas_core_dec_fx.c index 6f5415773..ffbdb5ad3 100644 --- a/lib_dec/ivas_core_dec_fx.c +++ b/lib_dec/ivas_core_dec_fx.c @@ -1034,7 +1034,8 @@ ivas_error ivas_core_dec_fx( #ifdef FIX_2432_ISM_SPIKES_16KHZ 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 ) ) ) && flag_bwe_bws == 0 ) + 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 -- GitLab