Commit 37df1dac authored by bayers's avatar bayers
Browse files

fix #931: run the TCX core noise filling substitution for the Stereo IGF...

fix #931: run the TCX core noise filling substitution for the Stereo IGF decoder on the correct spectra in case of no IGF whitening
parent 2c21b46c
Loading
Loading
Loading
Loading
Loading
+1 −0
Original line number Diff line number Diff line
@@ -184,6 +184,7 @@
#define NONBE_FIX_855_JBM_FLUSH_OFFSET                        /* FhG: issue #855: add missing switch here for the code in JBM flushing                 */
#define NONBE_FIX_926_OSBA_DECODER_CRASH_PLANAR_SBA           /* FhG: issue 926: crash in OSBA decoding with planar FOA */
#define NONBE_FIX_908_OSBA_BR_SWITCHING_CRASH                 /* FhG: issue 908: fix crash in OSBA BR switching with long test vectors */
#define NONBE_FIX_931_IGF_STEREO_DEC_NOISE	                  /* FhG: issue #931: fix noise substitution in the stereo IGF decoder      */

/* ##################### End NON-BE switches ########################### */

+16 −0
Original line number Diff line number Diff line
@@ -490,7 +490,11 @@ static void IGF_prepStereo(
            {
                if ( hPrivateDataL->n_noise_bands_off )
                {
#ifdef NONBE_FIX_931_IGF_STEREO_DEC_NOISE
                    IGF_replaceTCXNoise_2_new( src_specL, TCXNoiseL, strt_cpy, stop, hPrivateDataL->totalNoiseNrg_off, hPrivateDataL->n_noise_bands_off, hInfoL->nfSeed );
#else
                    IGF_replaceTCXNoise_2_new( igf_specL, TCXNoiseL, strt_cpy, stop, hPrivateDataL->totalNoiseNrg_off, hPrivateDataL->n_noise_bands_off, hInfoL->nfSeed );
#endif
                }
                sel_specL = src_specL;
            }
@@ -507,7 +511,11 @@ static void IGF_prepStereo(
            {
                if ( hPrivateDataR->n_noise_bands_off )
                {
#ifdef NONBE_FIX_931_IGF_STEREO_DEC_NOISE
                    IGF_replaceTCXNoise_2_new( src_specR, TCXNoiseR, strt_cpy, stop, hPrivateDataR->totalNoiseNrg_off, hPrivateDataR->n_noise_bands_off, hInfoR->nfSeed );
#else
                    IGF_replaceTCXNoise_2_new( igf_specR, TCXNoiseR, strt_cpy, stop, hPrivateDataR->totalNoiseNrg_off, hPrivateDataR->n_noise_bands_off, hInfoR->nfSeed );
#endif
                }
                sel_specR = src_specR;
            }
@@ -574,7 +582,11 @@ static void IGF_prepStereo(
                {
                    if ( hPrivateDataL->n_noise_bands_off )
                    {
#ifdef NONBE_FIX_931_IGF_STEREO_DEC_NOISE
                        IGF_replaceTCXNoise_2_new( src_specL, TCXNoiseL, strt_cpy, stop, hPrivateDataL->totalNoiseNrg_off, hPrivateDataL->n_noise_bands_off, hInfoL->nfSeed );
#else
                        IGF_replaceTCXNoise_2_new( igf_specL, TCXNoiseL, strt_cpy, stop, hPrivateDataL->totalNoiseNrg_off, hPrivateDataL->n_noise_bands_off, hInfoL->nfSeed );
#endif
                    }
                    sel_specL = src_specL;
                }
@@ -591,7 +603,11 @@ static void IGF_prepStereo(
                {
                    if ( hPrivateDataR->n_noise_bands_off )
                    {
#ifdef NONBE_FIX_931_IGF_STEREO_DEC_NOISE
                        IGF_replaceTCXNoise_2_new( src_specR, TCXNoiseR, strt_cpy, stop, hPrivateDataR->totalNoiseNrg_off, hPrivateDataR->n_noise_bands_off, hInfoR->nfSeed );
#else
                        IGF_replaceTCXNoise_2_new( igf_specR, TCXNoiseR, strt_cpy, stop, hPrivateDataR->totalNoiseNrg_off, hPrivateDataR->n_noise_bands_off, hInfoR->nfSeed );
#endif
                    }
                    sel_specR = src_specR;
                }