Commit 1919a01f authored by Mohammadreza Naghibzadeh's avatar Mohammadreza Naghibzadeh
Browse files

Adjust the exponent of hFdCngCom->olapBufferSynth2 in generate_masking_noise_ivas_fx()

parent bfde19ea
Loading
Loading
Loading
Loading
Loading
+2 −1
Original line number Diff line number Diff line
@@ -91,7 +91,8 @@
#define HARM_2456_APPLY_SCALE                           /* FhG basop issue 2456: Harmonize apply_scale_ind(), apply_scale_ivas_fx() */
#define HARM_2454_TCX_RES_Q_SPEC                        /* FhG: harmonization of tcx_res_Q_spec_fx() and tcx_res_Q_spec_ivas_fx() */
#define FIX_FLOAT_1535_ARI_RES_Q_CLEANUP                /* FhG: remove dead code from tcx_ari_res_Q_spec() */
#define FIX_REMOVE_SYNTH2_FX
#define FIX_REMOVE_SYNTH2_FX                            /* FhG: Replace 32bit olapBufferSynth2_fx with 16bit olapBufferSynth2 buffer */

/* #################### End BE switches ################################## */

/* #################### Start NON-BE switches ############################ */
+15 −12
Original line number Diff line number Diff line
@@ -4523,6 +4523,9 @@ void generate_masking_noise_ivas_fx(
    Word16 *seed = &( hFdCngCom->seed );
    Word32 scale_fx;
    Word16 shift;
#ifdef FIX_REMOVE_SYNTH2_FX
    Word32 olapBufferSynth2_32[FFTLEN];
#endif
    scale_fx = 0x40000000; // 1.0 in Q30
    move32();
    startBand = hFdCngCom->startBand; /*Q0*/
@@ -4645,10 +4648,9 @@ void generate_masking_noise_ivas_fx(
    ELSE
    {
#ifdef FIX_REMOVE_SYNTH2_FX
        Word32 olapBufferSynth2_fx[FFTLEN];
        Copy_Scale_sig_16_32_no_sat( hFdCngCom->olapBufferSynth2, olapBufferSynth2_fx, FFTLEN, Q15 );
        SynthesisSTFT_fx( fftBuffer_fx, maskingNoise_fx, olapBufferSynth2_fx, hFdCngCom->olapWinSyn_fx, 0, hFdCngCom, element_mode, nchan_out );
        Copy_Scale_sig_32_16( olapBufferSynth2_fx, hFdCngCom->olapBufferSynth2, FFTLEN, -Q15 );
        Copy_Scale_sig_16_32_no_sat( hFdCngCom->olapBufferSynth2, olapBufferSynth2_32, FFTLEN, Q8 );
        SynthesisSTFT_fx( fftBuffer_fx, maskingNoise_fx, olapBufferSynth2_32, hFdCngCom->olapWinSyn_fx, 0, hFdCngCom, element_mode, nchan_out );
        Copy_Scale_sig_32_16( olapBufferSynth2_32, hFdCngCom->olapBufferSynth2, FFTLEN, -Q8 );
#else
        SynthesisSTFT_fx( fftBuffer_fx, maskingNoise_fx, hFdCngCom->olapBufferSynth2_fx, hFdCngCom->olapWinSyn_fx, 0, hFdCngCom, element_mode, nchan_out );
#endif
@@ -4926,6 +4928,9 @@ void generate_masking_noise_lb_dirac_fx(
        Word16 cur_subframe_start_outfs;
        Word16 cur_subframe_start_cngfs;
        Word16 slot_size_cng;
#ifdef FIX_REMOVE_SYNTH2_FX
        Word32 olapBufferSynth2_32[FFTLEN];
#endif

        WHILE( n_samples_out > 0 )
        {
@@ -4981,10 +4986,9 @@ void generate_masking_noise_lb_dirac_fx(

                /* Perform STFT synthesis */
#ifdef FIX_REMOVE_SYNTH2_FX
                Word32 olapBufferSynth2_fx[FFTLEN];
                Copy_Scale_sig_16_32_no_sat( hFdCngCom->olapBufferSynth2, olapBufferSynth2_fx, FFTLEN, Q8 );
                SynthesisSTFT_dirac_fx( fftBuffer, tdBuffer + n_samples_start, olapBufferSynth2_fx, hFdCngCom->olapWinSyn_fx, n_samples_out_loop, hFdCngCom );
                Copy_Scale_sig_32_16( olapBufferSynth2_fx, hFdCngCom->olapBufferSynth2, FFTLEN, -Q8 );
                Copy_Scale_sig_16_32_no_sat( hFdCngCom->olapBufferSynth2, olapBufferSynth2_32, FFTLEN, Q8 );
                SynthesisSTFT_dirac_fx( fftBuffer, tdBuffer + n_samples_start, olapBufferSynth2_32, hFdCngCom->olapWinSyn_fx, n_samples_out_loop, hFdCngCom );
                Copy_Scale_sig_32_16( olapBufferSynth2_32, hFdCngCom->olapBufferSynth2, FFTLEN, -Q8 );
#else
                SynthesisSTFT_dirac_fx( fftBuffer, tdBuffer + n_samples_start, hFdCngCom->olapBufferSynth2_fx, hFdCngCom->olapWinSyn_fx, n_samples_out_loop, hFdCngCom );
#endif
@@ -4999,10 +5003,9 @@ void generate_masking_noise_lb_dirac_fx(
                set32_fx( fftBuffer, 0, hFdCngCom->fftlen );
                /* Perform STFT synthesis */
#ifdef FIX_REMOVE_SYNTH2_FX
                Word32 olapBufferSynth2_fx[FFTLEN];
                Copy_Scale_sig_16_32_no_sat( hFdCngCom->olapBufferSynth2, olapBufferSynth2_fx, FFTLEN, Q8 );
                SynthesisSTFT_dirac_fx( fftBuffer, tdBuffer + n_samples_start, olapBufferSynth2_fx, hFdCngCom->olapWinSyn_fx, n_samples_out_loop, hFdCngCom );
                Copy_Scale_sig_32_16( olapBufferSynth2_fx, hFdCngCom->olapBufferSynth2, FFTLEN, -Q8 );
                Copy_Scale_sig_16_32_no_sat( hFdCngCom->olapBufferSynth2, olapBufferSynth2_32, FFTLEN, Q8 );
                SynthesisSTFT_dirac_fx( fftBuffer, tdBuffer + n_samples_start, olapBufferSynth2_32, hFdCngCom->olapWinSyn_fx, n_samples_out_loop, hFdCngCom );
                Copy_Scale_sig_32_16( olapBufferSynth2_32, hFdCngCom->olapBufferSynth2, FFTLEN, -Q8 );
#else
                SynthesisSTFT_dirac_fx( fftBuffer, tdBuffer + n_samples_start, hFdCngCom->olapBufferSynth2_fx, hFdCngCom->olapWinSyn_fx, n_samples_out_loop, hFdCngCom );
#endif