diff --git a/lib_com/options.h b/lib_com/options.h index c2ef6ee92df12446e5cf7b1ff95c4dabd7dc7b71..7d1fcb92fe14345ddd770b3738ce0e3dc0ce0cb7 100755 --- a/lib_com/options.h +++ b/lib_com/options.h @@ -157,6 +157,7 @@ #define FIX_IGF_NOISE_REPETITION /* Issue 182: fix repetition of same noise in IGF */ #define FIX_126_MDFT_FB_STATIC_MEM /* Issue 126: reduce static mem consumption of the MDFT FB for non-SBA formats */ #define FIX_I214_CLIPPING_STANDALONE_REND /* Issue 214: TD standalone renderer does not handle clipping */ +#define FIX_I218_PARAMISM_NOISY_SPEECH /* Issue 218: Fix noisy speech buffer in ParamISM */ /* ################## End DEVELOPMENT switches ######################### */ /* clang-format on */ diff --git a/lib_enc/ivas_ism_enc.c b/lib_enc/ivas_ism_enc.c index 3c8a1f04b38e7b69cc37cdd3928c3d0177da7d65..6f63b9b7a9e6624508422adc2ae987a67bf0d0f3 100644 --- a/lib_enc/ivas_ism_enc.c +++ b/lib_enc/ivas_ism_enc.c @@ -175,7 +175,11 @@ ivas_error ivas_ism_enc( /* For the current frame, make a decision based on some core-coder flags */ if ( st_ivas->hSCE[0]->hCoreCoder[0]->flag_noisy_speech_snr && st_ivas->hSCE[1]->hCoreCoder[0]->flag_noisy_speech_snr ) { +#ifdef FIX_I218_PARAMISM_NOISY_SPEECH + if ( st_ivas->hSCE[0]->hCoreCoder[0]->vad_flag || st_ivas->hSCE[1]->hCoreCoder[0]->vad_flag ) +#else if ( st_ivas->hSCE[0]->hCoreCoder[0]->vad_flag && st_ivas->hSCE[1]->hCoreCoder[0]->vad_flag ) +#endif { st_ivas->hDirAC->hParamIsm->noisy_speech_buffer[i] = 0; }