Commit 5e2edf84 authored by vaclav's avatar vaclav
Browse files

fix

parent ee29e329
Loading
Loading
Loading
Loading
Loading
+8 −0
Original line number Diff line number Diff line
@@ -374,7 +374,11 @@ ivas_error amr_wb_dec_fx(
        IF( EQ_32( st_fx->core_brate, FRAME_NO_DATA ) || EQ_32( st_fx->core_brate, SID_1k75 ) )
        {
            /* decode CNG parameters */
#ifdef REMOVE_EVS_DUPLICATES2
            CNG_dec_ivas_fx( st_fx, EVS_MONO, Aq_fx, lsp_new_fx, lsf_new_fx, &allow_cn_step, &sid_bw, q_env );
#else
            CNG_dec_fx( st_fx, EVS_MONO, Aq_fx, lsp_new_fx, lsf_new_fx, &allow_cn_step, &sid_bw, q_env );
#endif

            /* comfort noise generation */
            CNG_exc_fx( st_fx->core_brate, L_FRAME, &st_fx->hTdCngDec->Enew_fx, &st_fx->hTdCngDec->cng_seed, exc_fx, exc2_fx, &st_fx->lp_ener_fx, st_fx->last_core_brate,
@@ -795,8 +799,12 @@ ivas_error amr_wb_dec_fx(
#ifdef IVAS_CODE_CNG_FIX185_PLC_FADEOUT
        PMT( "Fixed point not done here " )
        ApplyFdCng_fx( syn, NULL, NULL, NULL, st, 0, 0 );
#else
#ifdef REMOVE_EVS_DUPLICATES2
        ApplyFdCng_ivas_fx( syn_fx, st_fx->Q_syn, NULL, 0, NULL, NULL, NULL, st_fx, 0, 0 );
#else
        ApplyFdCng_fx( syn_fx, st_fx->Q_syn, NULL, NULL, NULL, st_fx, 0, 0 );
#endif
#endif
        st_fx->hFdCngDec->hFdCngCom->frame_type_previous = st_fx->m_frame_type;
        move16();
+4 −0
Original line number Diff line number Diff line
@@ -999,8 +999,12 @@ ivas_error evs_dec_fx(
                move32();
#ifdef IVAS_CODE_CNG_FIX185_PLC_FADEOUT
                ApplyFdCng_fx( output, NULL, realBuffer, imagBuffer, st, concealWholeFrame, 0 );
#else
#ifdef REMOVE_EVS_DUPLICATES2
                ApplyFdCng_ivas_fx( output_sp, 0, NULL, 0, realBuffer, imagBuffer, &st_fx->scaleFactor.hb_scale, st_fx, concealWholeFrame, 0 );
#else
                ApplyFdCng_fx( output_sp, 0, realBuffer, imagBuffer, &st_fx->scaleFactor.hb_scale, st_fx, concealWholeFrame, 0 );
#endif
#endif
                /* Generate additional comfort noise to mask potential coding artefacts */
                test();
+26 −4
Original line number Diff line number Diff line
@@ -1276,6 +1276,13 @@ Word16 ApplyFdCng_ivas_fx(

                /* Update the shaping parameters */
                test();
#ifdef REMOVE_EVS_DUPLICATES2
                IF( EQ_16( st->element_mode, EVS_MONO ) )
                {
                    scalebands( hFdCngDec->msNoiseEst, hFdCngDec->part_shaping, hFdCngDec->nFFTpart_shaping, hFdCngDec->midband_shaping, hFdCngDec->nFFTpart_shaping, nBins, hFdCngDec->bandNoiseShape, 1 );
                }
                ELSE
#endif
                    IF( NE_16( st->element_mode, IVAS_CPE_TD ) && NE_16( st->element_mode, IVAS_CPE_DFT ) )
                {
                    scalebands_fx( hFdCngDec->msNoiseEst, hFdCngDec->part_shaping, hFdCngDec->nFFTpart_shaping, hFdCngDec->midband_shaping, hFdCngDec->nFFTpart_shaping, nBins, hFdCngDec->bandNoiseShape, 1 );
@@ -1596,6 +1603,13 @@ Word16 ApplyFdCng_ivas_fx(
                /* Update the shaping parameters */

                test();
#ifdef REMOVE_EVS_DUPLICATES2
                IF( EQ_16( st->element_mode, EVS_MONO ) )
                {
                    scalebands( hFdCngDec->msNoiseEst, hFdCngDec->part_shaping, hFdCngDec->nFFTpart_shaping, hFdCngDec->midband_shaping, hFdCngDec->nFFTpart_shaping, sub( hFdCngCom->stopFFTbin, hFdCngCom->startBand ), hFdCngDec->bandNoiseShape, 1 );
                }
                ELSE
#endif
                    IF( NE_16( st->element_mode, IVAS_CPE_TD ) && NE_16( st->element_mode, IVAS_CPE_DFT ) )
                {
                    scalebands_fx( hFdCngDec->msNoiseEst, hFdCngDec->part_shaping, hFdCngDec->nFFTpart_shaping, hFdCngDec->midband_shaping, hFdCngDec->nFFTpart_shaping, sub( hFdCngCom->stopFFTbin, hFdCngCom->startBand ), hFdCngDec->bandNoiseShape, 1 );
@@ -1675,8 +1689,16 @@ Word16 ApplyFdCng_ivas_fx(
                IF( LT_32( hFdCngCom->msFrCnt_init_counter, L_deposit_l( hFdCngCom->msFrCnt_init_thresh ) ) )
                {
                    /* At initialization, interpolate the bin/band-wise levels from the partition levels */
                    scalebands_fx( hFdCngCom->sidNoiseEst, hFdCngCom->part, hFdCngCom->npart, hFdCngCom->midband,
                                   hFdCngCom->nFFTpart, sub( hFdCngCom->stopBand, hFdCngCom->startBand ), cngNoiseLevel, 1 );
#ifdef REMOVE_EVS_DUPLICATES2
                    IF( EQ_16( st->element_mode, EVS_MONO ) )
                    {
                        scalebands( hFdCngCom->sidNoiseEst, hFdCngCom->part, hFdCngCom->npart, hFdCngCom->midband, hFdCngCom->nFFTpart, sub( hFdCngCom->stopBand, hFdCngCom->startBand ), cngNoiseLevel, 1 );
                    }
                    ELSE
#endif
                    {
                        scalebands_fx( hFdCngCom->sidNoiseEst, hFdCngCom->part, hFdCngCom->npart, hFdCngCom->midband, hFdCngCom->nFFTpart, sub( hFdCngCom->stopBand, hFdCngCom->startBand ), cngNoiseLevel, 1 );
                    }
                    *cngNoiseLevel_exp = hFdCngCom->sidNoiseEstExp;
                    move16();
                }