Loading lib_com/prot_fx.h +15 −3 Original line number Diff line number Diff line Loading @@ -8900,6 +8900,7 @@ void decoder_tcx_post_ivas_fx( Word16 bfi, Word16 MCT_flag ); #ifndef HARMONIZE_2446_CON_TCX_FX void con_tcx_ivas_fx( Decoder_State* st, /* i/o: coder memory state */ Word16 synth[], /* i/o: synth[] Q0 */ Loading @@ -8908,6 +8909,17 @@ void con_tcx_ivas_fx( const Word16 only_left, /* i : TD-PLC only in left channel */ const Word16* A_cng /* i : CNG LP filter coefficients */ ); #else void con_tcx_ivas_fx( Decoder_State* st, /* i/o: coder memory state */ Word16 synth[], /* i/o: synth[] Q0 */ const Word16 coh, /* i : coherence of stereo signal */ Word16* noise_seed, /* i/o: noise seed for stereo */ const Word16 only_left, /* i : TD-PLC only in left channel */ const Word16* A_cng, /* i : CNG LP filter coefficients */ const leg_flag ); #endif // !HARMONIZE_2446_CON_TCX_FX void ivas_mdct_core_reconstruct_fx( CPE_DEC_HANDLE hCPE, /* i/o: CPE decoder structure */ Loading lib_dec/er_dec_tcx_fx.c +17 −9 Original line number Diff line number Diff line Loading @@ -944,7 +944,17 @@ void con_tcx_fx( return; } #ifdef HARMONIZE_2446_CON_TCX_FX void con_tcx_ivas_fx( Decoder_State* st, /* i/o: coder memory state */ Word16 synth[], /* i/o: synth[] Q0 */ const Word16 coh, /* i : coherence of stereo signal Q14*/ Word16* noise_seed, /* i/o: noise seed for stereo Q0 */ const Word16 only_left, /* i : TD-PLC only in left channel Q0 */ const Word16* A_cng, /* i : CNG LP filter coefficients Q14*/ const Word16 leg_flag ) #else void con_tcx_ivas_fx( Decoder_State* st, /* i/o: coder memory state */ Word16 synth[], /* i/o: synth[] Q0 */ Loading @@ -953,6 +963,8 @@ void con_tcx_ivas_fx( const Word16 only_left, /* i : TD-PLC only in left channel Q0 */ const Word16* A_cng /* i : CNG LP filter coefficients Q14*/ ) #endif // HARMONIZE_2446_CON_TCX_FX { Word16 i, s, c, L_frame, L_subfr, fLowPassFilter, T0; Word16 n, mem_syn_r_size_old, mem_syn_r_size_new; Loading Loading @@ -984,11 +996,7 @@ void con_tcx_ivas_fx( Word16 offset; HQ_DEC_HANDLE hHQ_core; TCX_LTP_DEC_HANDLE hTcxLtpDec; TCX_DEC_HANDLE hTcxDec; #ifdef HARMONIZE_2446_CON_TCX_FX int leg_flag; leg_flag = EQ_16( st->element_mode, EVS_MONO ) || EQ_16( st->element_mode, IVAS_SCE ); /* || LT_32( st->element_brate, 48000 );*/ #endif // HARMONIZE_2446_CON_TCX_FX TCX_DEC_HANDLE hTcxDec; // HARMONIZE_2446_CON_TCX_FX hTcxLtpDec = st->hTcxLtpDec; hHQ_core = st->hHQ_core; Loading lib_dec/ivas_mdct_core_dec_fx.c +18 −5 Original line number Diff line number Diff line Loading @@ -1297,17 +1297,30 @@ void ivas_mdct_core_reconstruct_fx( /* PLC: [TCX: TD PLC] */ IF( MCT_flag != 0 ) { #ifndef HARMONIZE_2446_CON_TCX_FX con_tcx_ivas_fx(st, &synthFB_fx[0], -16384, NULL, 0, NULL); //-1.Q14 = -16384 #else con_tcx_ivas_fx(st, &synthFB_fx[0], -16384, NULL, 0, NULL, 0); //-1.Q14 = -16384 #endif // !HARMONIZE_2446_CON_TCX_FX } ELSE { IF( sts[1]->core != ACELP_CORE ) { #ifndef HARMONIZE_2446_CON_TCX_FX con_tcx_ivas_fx(st, &synthFB_fx[0], hCPE->hStereoMdct->lastCoh_fx, &sts[0]->seed_acelp, 1, &st->hFdCngDec->hFdCngCom->A_cng[0]); #else con_tcx_ivas_fx(st, &synthFB_fx[0], hCPE->hStereoMdct->lastCoh_fx, &sts[0]->seed_acelp, 1, &st->hFdCngDec->hFdCngCom->A_cng[0], 0); #endif // !HARMONIZE_2446_CON_TCX_FX } ELSE { #ifndef HARMONIZE_2446_CON_TCX_FX con_tcx_ivas_fx(st, &synthFB_fx[0], hCPE->hStereoMdct->lastCoh_fx, &sts[0]->seed_acelp, 0, &st->hFdCngDec->hFdCngCom->A_cng[0]); #else con_tcx_ivas_fx(st, &synthFB_fx[0], hCPE->hStereoMdct->lastCoh_fx, &sts[0]->seed_acelp, 0, &st->hFdCngDec->hFdCngCom->A_cng[0], 0); #endif // !HARMONIZE_2446_CON_TCX_FX } } st->hHQ_core->Q_old_wtda = add( st->hHQ_core->Q_old_wtda, q_syn ); Loading lib_dec/ivas_tcx_core_dec_fx.c +1 −1 Original line number Diff line number Diff line Loading @@ -492,7 +492,7 @@ void stereo_tcx_core_dec_fx( #ifndef HARMONIZE_2446_CON_TCX_FX con_tcx_fx( st, &synthFB_fx[0] /*, -1.f, NULL, 0, NULL */ ); #else con_tcx_ivas_fx( st, &synthFB_fx[0], -16384, NULL, 0, NULL ); con_tcx_ivas_fx( st, &synthFB_fx[0], -16384, NULL, 0, NULL, 1 ); #endif // !HARMONIZE_2446_CON_TCX_FX test(); IF( ( EQ_16( st->nbLostCmpt, 1 ) ) || hTcxDec->tcxConceal_recalc_exc ) Loading Loading
lib_com/prot_fx.h +15 −3 Original line number Diff line number Diff line Loading @@ -8900,6 +8900,7 @@ void decoder_tcx_post_ivas_fx( Word16 bfi, Word16 MCT_flag ); #ifndef HARMONIZE_2446_CON_TCX_FX void con_tcx_ivas_fx( Decoder_State* st, /* i/o: coder memory state */ Word16 synth[], /* i/o: synth[] Q0 */ Loading @@ -8908,6 +8909,17 @@ void con_tcx_ivas_fx( const Word16 only_left, /* i : TD-PLC only in left channel */ const Word16* A_cng /* i : CNG LP filter coefficients */ ); #else void con_tcx_ivas_fx( Decoder_State* st, /* i/o: coder memory state */ Word16 synth[], /* i/o: synth[] Q0 */ const Word16 coh, /* i : coherence of stereo signal */ Word16* noise_seed, /* i/o: noise seed for stereo */ const Word16 only_left, /* i : TD-PLC only in left channel */ const Word16* A_cng, /* i : CNG LP filter coefficients */ const leg_flag ); #endif // !HARMONIZE_2446_CON_TCX_FX void ivas_mdct_core_reconstruct_fx( CPE_DEC_HANDLE hCPE, /* i/o: CPE decoder structure */ Loading
lib_dec/er_dec_tcx_fx.c +17 −9 Original line number Diff line number Diff line Loading @@ -944,7 +944,17 @@ void con_tcx_fx( return; } #ifdef HARMONIZE_2446_CON_TCX_FX void con_tcx_ivas_fx( Decoder_State* st, /* i/o: coder memory state */ Word16 synth[], /* i/o: synth[] Q0 */ const Word16 coh, /* i : coherence of stereo signal Q14*/ Word16* noise_seed, /* i/o: noise seed for stereo Q0 */ const Word16 only_left, /* i : TD-PLC only in left channel Q0 */ const Word16* A_cng, /* i : CNG LP filter coefficients Q14*/ const Word16 leg_flag ) #else void con_tcx_ivas_fx( Decoder_State* st, /* i/o: coder memory state */ Word16 synth[], /* i/o: synth[] Q0 */ Loading @@ -953,6 +963,8 @@ void con_tcx_ivas_fx( const Word16 only_left, /* i : TD-PLC only in left channel Q0 */ const Word16* A_cng /* i : CNG LP filter coefficients Q14*/ ) #endif // HARMONIZE_2446_CON_TCX_FX { Word16 i, s, c, L_frame, L_subfr, fLowPassFilter, T0; Word16 n, mem_syn_r_size_old, mem_syn_r_size_new; Loading Loading @@ -984,11 +996,7 @@ void con_tcx_ivas_fx( Word16 offset; HQ_DEC_HANDLE hHQ_core; TCX_LTP_DEC_HANDLE hTcxLtpDec; TCX_DEC_HANDLE hTcxDec; #ifdef HARMONIZE_2446_CON_TCX_FX int leg_flag; leg_flag = EQ_16( st->element_mode, EVS_MONO ) || EQ_16( st->element_mode, IVAS_SCE ); /* || LT_32( st->element_brate, 48000 );*/ #endif // HARMONIZE_2446_CON_TCX_FX TCX_DEC_HANDLE hTcxDec; // HARMONIZE_2446_CON_TCX_FX hTcxLtpDec = st->hTcxLtpDec; hHQ_core = st->hHQ_core; Loading
lib_dec/ivas_mdct_core_dec_fx.c +18 −5 Original line number Diff line number Diff line Loading @@ -1297,17 +1297,30 @@ void ivas_mdct_core_reconstruct_fx( /* PLC: [TCX: TD PLC] */ IF( MCT_flag != 0 ) { #ifndef HARMONIZE_2446_CON_TCX_FX con_tcx_ivas_fx(st, &synthFB_fx[0], -16384, NULL, 0, NULL); //-1.Q14 = -16384 #else con_tcx_ivas_fx(st, &synthFB_fx[0], -16384, NULL, 0, NULL, 0); //-1.Q14 = -16384 #endif // !HARMONIZE_2446_CON_TCX_FX } ELSE { IF( sts[1]->core != ACELP_CORE ) { #ifndef HARMONIZE_2446_CON_TCX_FX con_tcx_ivas_fx(st, &synthFB_fx[0], hCPE->hStereoMdct->lastCoh_fx, &sts[0]->seed_acelp, 1, &st->hFdCngDec->hFdCngCom->A_cng[0]); #else con_tcx_ivas_fx(st, &synthFB_fx[0], hCPE->hStereoMdct->lastCoh_fx, &sts[0]->seed_acelp, 1, &st->hFdCngDec->hFdCngCom->A_cng[0], 0); #endif // !HARMONIZE_2446_CON_TCX_FX } ELSE { #ifndef HARMONIZE_2446_CON_TCX_FX con_tcx_ivas_fx(st, &synthFB_fx[0], hCPE->hStereoMdct->lastCoh_fx, &sts[0]->seed_acelp, 0, &st->hFdCngDec->hFdCngCom->A_cng[0]); #else con_tcx_ivas_fx(st, &synthFB_fx[0], hCPE->hStereoMdct->lastCoh_fx, &sts[0]->seed_acelp, 0, &st->hFdCngDec->hFdCngCom->A_cng[0], 0); #endif // !HARMONIZE_2446_CON_TCX_FX } } st->hHQ_core->Q_old_wtda = add( st->hHQ_core->Q_old_wtda, q_syn ); Loading
lib_dec/ivas_tcx_core_dec_fx.c +1 −1 Original line number Diff line number Diff line Loading @@ -492,7 +492,7 @@ void stereo_tcx_core_dec_fx( #ifndef HARMONIZE_2446_CON_TCX_FX con_tcx_fx( st, &synthFB_fx[0] /*, -1.f, NULL, 0, NULL */ ); #else con_tcx_ivas_fx( st, &synthFB_fx[0], -16384, NULL, 0, NULL ); con_tcx_ivas_fx( st, &synthFB_fx[0], -16384, NULL, 0, NULL, 1 ); #endif // !HARMONIZE_2446_CON_TCX_FX test(); IF( ( EQ_16( st->nbLostCmpt, 1 ) ) || hTcxDec->tcxConceal_recalc_exc ) Loading