Loading lib_com/prot_fx.h +2 −1 Original line number Diff line number Diff line Loading @@ -8921,7 +8921,8 @@ void IGFDecApplyStereo( const Word16 *coreMsMask, const Word16 restrict_hopsize, const Word16 bfi, /* i : frame loss == 1, frame good == 0 */ const Word16 bfi_apply_damping ); const Word16 bfi_apply_damping, const Word16 tonalMDCTConcealment_flag); void IGFDecSetMode( const IGF_DEC_INSTANCE_HANDLE hIGFDec, /* o : instance handle of IGF Decoder */ Loading lib_dec/dec_tcx_fx.c +3 −2 Original line number Diff line number Diff line Loading @@ -3643,6 +3643,7 @@ void decoder_tcx_IGF_stereo_fx( Word16 coreMsMask[N_MAX]; STEREO_MDCT_BAND_PARAMETERS *sfbConf; Word16 core, sfb, igfGridIdx, restrict_hopsize; Word16 tonalMDCTConcealment_flag = (sts[0]->hTonalMDCTConc != NULL); core = sts[0]->core; move16(); Loading Loading @@ -3750,7 +3751,7 @@ void decoder_tcx_IGF_stereo_fx( move16(); } IGFDecApplyStereo( sts[0]->hIGFDec, sts[1]->hIGFDec, x_fx[0][k], &x_e[0][k], x_fx[1][k], &x_e[1][k], igfGridIdx, coreMsMask, restrict_hopsize, bfi, MCT_flag ); IGFDecApplyStereo(sts[0]->hIGFDec, sts[1]->hIGFDec, x_fx[0][k], &x_e[0][k], x_fx[1][k], &x_e[1][k], igfGridIdx, coreMsMask, restrict_hopsize, bfi, MCT_flag, tonalMDCTConcealment_flag); x_len[0][k] = sts[0]->hIGFDec->igfData.igfInfo.grid[igfGridIdx].stopLine; move16(); Loading lib_dec/igf_dec_fx.c +5 −3 Original line number Diff line number Diff line Loading @@ -3694,7 +3694,8 @@ void IGFDecApplyStereo( const Word16 *coreMsMask, const Word16 restrict_hopsize, const Word16 bfi, /* i : frame loss == 1, frame good == 0 */ const Word16 bfi_apply_damping ) const Word16 bfi_apply_damping, const Word16 tonalMDCTConcealment_flag) { IGF_DEC_PRIVATE_DATA_HANDLE hPrivateDataL, hPrivateDataR; H_IGF_GRID hGrid; Loading Loading @@ -3793,9 +3794,10 @@ void IGFDecApplyStereo( move16(); } /* skip IGF processing if all IGF levels are zero */ /* skip IGF processing if all IGF levels are zero or tonal MDCT concealment is active*/ test(); IF( !hIGFDecL->infoIGFAllZero || !hIGFDecR->infoIGFAllZero ) IF(!(tonalMDCTConcealment_flag & bfi) && (!hIGFDecL->infoIGFAllZero || !hIGFDecR->infoIGFAllZero)) { FOR( i = 0; i < hGrid->nTiles; i++ ) { Loading Loading
lib_com/prot_fx.h +2 −1 Original line number Diff line number Diff line Loading @@ -8921,7 +8921,8 @@ void IGFDecApplyStereo( const Word16 *coreMsMask, const Word16 restrict_hopsize, const Word16 bfi, /* i : frame loss == 1, frame good == 0 */ const Word16 bfi_apply_damping ); const Word16 bfi_apply_damping, const Word16 tonalMDCTConcealment_flag); void IGFDecSetMode( const IGF_DEC_INSTANCE_HANDLE hIGFDec, /* o : instance handle of IGF Decoder */ Loading
lib_dec/dec_tcx_fx.c +3 −2 Original line number Diff line number Diff line Loading @@ -3643,6 +3643,7 @@ void decoder_tcx_IGF_stereo_fx( Word16 coreMsMask[N_MAX]; STEREO_MDCT_BAND_PARAMETERS *sfbConf; Word16 core, sfb, igfGridIdx, restrict_hopsize; Word16 tonalMDCTConcealment_flag = (sts[0]->hTonalMDCTConc != NULL); core = sts[0]->core; move16(); Loading Loading @@ -3750,7 +3751,7 @@ void decoder_tcx_IGF_stereo_fx( move16(); } IGFDecApplyStereo( sts[0]->hIGFDec, sts[1]->hIGFDec, x_fx[0][k], &x_e[0][k], x_fx[1][k], &x_e[1][k], igfGridIdx, coreMsMask, restrict_hopsize, bfi, MCT_flag ); IGFDecApplyStereo(sts[0]->hIGFDec, sts[1]->hIGFDec, x_fx[0][k], &x_e[0][k], x_fx[1][k], &x_e[1][k], igfGridIdx, coreMsMask, restrict_hopsize, bfi, MCT_flag, tonalMDCTConcealment_flag); x_len[0][k] = sts[0]->hIGFDec->igfData.igfInfo.grid[igfGridIdx].stopLine; move16(); Loading
lib_dec/igf_dec_fx.c +5 −3 Original line number Diff line number Diff line Loading @@ -3694,7 +3694,8 @@ void IGFDecApplyStereo( const Word16 *coreMsMask, const Word16 restrict_hopsize, const Word16 bfi, /* i : frame loss == 1, frame good == 0 */ const Word16 bfi_apply_damping ) const Word16 bfi_apply_damping, const Word16 tonalMDCTConcealment_flag) { IGF_DEC_PRIVATE_DATA_HANDLE hPrivateDataL, hPrivateDataR; H_IGF_GRID hGrid; Loading Loading @@ -3793,9 +3794,10 @@ void IGFDecApplyStereo( move16(); } /* skip IGF processing if all IGF levels are zero */ /* skip IGF processing if all IGF levels are zero or tonal MDCT concealment is active*/ test(); IF( !hIGFDecL->infoIGFAllZero || !hIGFDecR->infoIGFAllZero ) IF(!(tonalMDCTConcealment_flag & bfi) && (!hIGFDecL->infoIGFAllZero || !hIGFDecR->infoIGFAllZero)) { FOR( i = 0; i < hGrid->nTiles; i++ ) { Loading