diff --git a/lib_com/options.h b/lib_com/options.h index 56fb39564a2467ca315c6d8e7611c62334cb8a4e..a8aea80ae813a4411d9bbfe7b80c7cd42310e1d0 100644 --- a/lib_com/options.h +++ b/lib_com/options.h @@ -172,6 +172,7 @@ #define FIX_1576_LCLD_CRASH_DIFFERENT_CODEC_ISAR_FRAME_SIZE /* Dolby: float issue 1576: fix for crash in LCLD mode when codec frame size is less than isar frame size */ #define FIX_BASOP_2442_MASA2TC_TO_MONO_AND_AMBI /* Nokia: BASOP issue 2442: Aligns float with identical diffuse gain limitation to minimize diff */ #define FIX_FMSW_DEC_EXT /* float issue 1566: fix EXT output in format switching */ +#define FIX_BASOP_2612_RESET_DECIM_MEM /* FhG: BASOP #2612: reset (zero) the 16k resampler memory of the secondary channel on DFT->TD stereo switch (otherwise -> fx overshoot) */ /* ##################### End NON-BE switches ########################### */ diff --git a/lib_enc/ivas_stereo_switching_enc.c b/lib_enc/ivas_stereo_switching_enc.c index a1fe5b5224c60aa6c6343b23ba28d29bcecae13e..c42ee23ab1966ae81bba54d804c97c099f220a28 100644 --- a/lib_enc/ivas_stereo_switching_enc.c +++ b/lib_enc/ivas_stereo_switching_enc.c @@ -755,6 +755,9 @@ void stereo_switching_enc( /* no secondary channel in the previous frame -> memory resets */ set_zero( sts[1]->old_inp_12k8, L_INP_MEM ); +#ifdef FIX_BASOP_2612_RESET_DECIM_MEM + set_zero( sts[1]->mem_decim16k, 2 * L_FILT_MAX ); +#endif set_zero( sts[1]->mem_decim, 2 * L_FILT_MAX ); sts[1]->mem_preemph = 0;