Loading lib_dec/cng_dec_fx.c +1 −1 Original line number Diff line number Diff line Loading @@ -1025,7 +1025,7 @@ static void shb_CNG_decod_fx( } } GenSHBSynth_fx( shb_syn16k_fx, shb_synth_fx, hBWE_TD->genSHBsynth_Hilbert_Mem_fx, hBWE_TD->genSHBsynth_state_lsyn_filt_shb_local_fx, st_fx->L_frame, &(hBWE_TD->syn_dm_phase_fx) ); GenSHBSynth_fx( shb_syn16k_fx, shb_synth_fx, hBWE_TD->genSHBsynth_Hilbert_Mem_fx, hBWE_TD->genSHBsynth_state_lsyn_filt_shb_local_fx, st_fx->L_frame, &(hBWE_TD->syn_dm_phase) ); IF ( EQ_32(st_fx->output_Fs,48000)) { Loading lib_dec/core_switching_dec_fx.c +8 −8 Original line number Diff line number Diff line Loading @@ -1373,15 +1373,15 @@ ivas_error core_switching_post_dec_fx( move16(); if( NE_16(st_fx->last_extl, WB_BWE)) { hBWE_FD->prev_mode_fx = NORMAL; hBWE_FD->prev_mode = NORMAL; move16(); } hBWE_FD->prev_Energy_fx = 0; move16(); hBWE_FD->prev_L_swb_norm_fx = 8; hBWE_FD->prev_L_swb_norm = 8; move16(); hBWE_FD->prev_frica_flag_fx = 0; hBWE_FD->prev_frica_flag = 0; move16(); set16_fx(hBWE_FD->mem_imdct_fx, 0, L_FRAME48k ); hBWE_FD->prev_td_energy_fx = 0; Loading @@ -1401,15 +1401,15 @@ ivas_error core_switching_post_dec_fx( test(); if ( NE_16(st_fx->last_extl, SWB_BWE)&&NE_16(st_fx->last_extl,FB_BWE)) { hBWE_FD->prev_mode_fx = NORMAL; hBWE_FD->prev_mode = NORMAL; move16(); } hBWE_FD->prev_Energy_wb_fx = 0; move16(); hBWE_FD->prev_L_swb_norm_fx = 8; hBWE_FD->prev_L_swb_norm = 8; move16(); set16_fx(hBWE_FD->mem_imdct_fx, 0, L_FRAME48k ); hBWE_FD->prev_flag_fx = 0; hBWE_FD->prev_flag = 0; move16(); } Loading Loading @@ -1948,13 +1948,13 @@ ivas_error core_switching_post_dec_ivas_fx( move16(); IF( NE_16( st_fx->last_extl, WB_BWE ) ) { hBWE_FD->prev_mode_fx = NORMAL; hBWE_FD->prev_mode = NORMAL; move16(); } hBWE_FD->prev_Energy_fx = 0; move16(); hBWE_FD->prev_L_swb_norm_fx = 8; hBWE_FD->prev_L_swb_norm = 8; move16(); hBWE_FD->prev_frica_flag = 0; move16(); Loading lib_dec/evs_dec_fx.c +1 −1 Original line number Diff line number Diff line Loading @@ -916,7 +916,7 @@ ivas_error evs_dec_fx( GenTransition_fx(hBWE_TD->syn_overlap_fx, hBWE_TD->old_tbe_synth_fx, 2*NS2SA(st_fx->output_Fs, DELAY_BWE_TOTAL_NS), hb_synth_fx, hBWE_TD->genSHBsynth_Hilbert_Mem_fx, hBWE_TD->genSHBsynth_state_lsyn_filt_shb_local_fx, hBWE_TD->mem_resamp_HB_32k_fx, &(hBWE_TD->syn_dm_phase_fx), st_fx->output_Fs, hBWE_TD->int_3_over_2_tbemem_dec_fx, st_fx->rf_flag, st_fx->total_brate ); &(hBWE_TD->syn_dm_phase), st_fx->output_Fs, hBWE_TD->int_3_over_2_tbemem_dec_fx, st_fx->rf_flag, st_fx->total_brate ); hb_synth_fx_exp = st_fx->prev_Q_bwe_syn2; move16(); Loading lib_dec/hq_hr_dec_fx.c +2 −2 Original line number Diff line number Diff line Loading @@ -379,7 +379,7 @@ void ivas_hq_hr_dec_fx( &hHQ_core->no_att_hangover_fx, &hHQ_core->energy_lt_fx, &hHQ_core->hq_generic_seed_fx, hq_generic_exc_clas, core_sfm, *hqswb_clas, noise_level, st_fx->core_brate, hHQ_core->prev_noise_level_fx, &hHQ_core->prev_R_fx, hHQ_core->prev_coeff_out_fx, peak_idx, Npeaks, pulses, hHQ_core->old_is_transient_fx[0], hHQ_core->prev_normq_fx, hHQ_core->prev_env_fx, st_fx->prev_bfi, sfmsize, sfm_start, sfm_end, &st_fx->hBWE_FD->prev_L_swb_norm_fx, hHQ_core->prev_hqswb_clas_fx, num_sfm, hHQ_core->prev_env_Q, num_env_bands, st_fx->element_mode ); &st_fx->hBWE_FD->prev_L_swb_norm, hHQ_core->prev_hqswb_clas_fx, num_sfm, hHQ_core->prev_env_Q, num_env_bands, st_fx->element_mode ); enforce_zero_for_min_envelope_fx( *hqswb_clas, ynrm, t_audio_q, nb_sfm, sfm_start, sfm_end ); Loading Loading @@ -642,7 +642,7 @@ void hq_hr_dec_fx( &hHQ_core->no_att_hangover_fx, &hHQ_core->energy_lt_fx, &hHQ_core->hq_generic_seed_fx, hq_generic_exc_clas, core_sfm, *hqswb_clas, noise_level, st_fx->core_brate, hHQ_core->prev_noise_level_fx, &hHQ_core->prev_R_fx, hHQ_core->prev_coeff_out_fx, peak_idx, Npeaks, pulses, hHQ_core->old_is_transient_fx[0], hHQ_core->prev_normq_fx, hHQ_core->prev_env_fx, st_fx->prev_bfi, sfmsize, sfm_start, sfm_end, &st_fx->hBWE_FD->prev_L_swb_norm_fx, hHQ_core->prev_hqswb_clas_fx, num_sfm, hHQ_core->prev_env_Q, num_env_bands &st_fx->hBWE_FD->prev_L_swb_norm, hHQ_core->prev_hqswb_clas_fx, num_sfm, hHQ_core->prev_env_Q, num_env_bands ,st_fx->element_mode); enforce_zero_for_min_envelope_fx( *hqswb_clas, ynrm, t_audio_q, nb_sfm, sfm_start, sfm_end ); Loading lib_dec/ivas_core_dec.c +0 −64 Original line number Diff line number Diff line Loading @@ -889,7 +889,6 @@ ivas_error ivas_core_dec( hHQ_core->wmold_hb_fx = (Word16) floatToFixed( hHQ_core->wmold_hb, Q15 ); hHQ_core->mean_prev_hb_fx = floatToFixed( hHQ_core->mean_prev_hb, 0 ); hHQ_core->memfilt_lb_fx = (Word16) floatToFixed( hHQ_core->memfilt_lb, 0 ); st->hBWE_FD->prev_L_swb_norm_fx = st->hBWE_FD->prev_L_swb_norm; hHQ_core->HqVoicing_fx = hHQ_core->HqVoicing; hHQ_core->ph_ecu_HqVoicing_fx = hHQ_core->ph_ecu_HqVoicing; hHQ_core->prev_hqswb_clas_fx = hHQ_core->prev_hqswb_clas; Loading Loading @@ -956,7 +955,6 @@ ivas_error ivas_core_dec( hHQ_core->wmold_hb = fixedToFloat( hHQ_core->wmold_hb_fx, Q15 ); hHQ_core->mean_prev_hb = fixedToFloat( hHQ_core->mean_prev_hb_fx, 0 ); hHQ_core->memfilt_lb = fixedToFloat( hHQ_core->memfilt_lb_fx, 0 ); st->hBWE_FD->prev_L_swb_norm = st->hBWE_FD->prev_L_swb_norm_fx; hHQ_core->HqVoicing = hHQ_core->HqVoicing_fx; hHQ_core->ph_ecu_HqVoicing = hHQ_core->ph_ecu_HqVoicing_fx; hHQ_core->prev_hqswb_clas = hHQ_core->prev_hqswb_clas_fx; Loading Loading @@ -1615,14 +1613,7 @@ ivas_error ivas_core_dec( { fixedToFloat_arrL( st->hBWE_FD->L_old_wtda_swb_fx, st->hBWE_FD->old_wtda_swb, 0, output_frame ); IF( NE_16( st->last_extl, WB_BWE ) ) { st->hBWE_FD->prev_mode = st->hBWE_FD->prev_mode_fx; } st->hBWE_FD->prev_Energy = fixedToFloat( st->hBWE_FD->prev_Energy_fx, 0 ); // setting to zero st->hBWE_FD->prev_L_swb_norm = st->hBWE_FD->prev_L_swb_norm_fx; // fixed st->hBWE_FD->prev_frica_flag = st->hBWE_FD->prev_frica_flag; // fixed st->hBWE_FD->prev_td_energy = st->hBWE_FD->prev_td_energy_fx; // setting to zero st->hBWE_FD->prev_weight = fixedToFloat( st->hBWE_FD->prev_weight_fx, 15 ); // 6554; /*0.2 in Q15*/ st->hBWE_FD->prev_fb_ener_adjust = fixedToFloat( st->prev_fb_ener_adjust_fx, 0 ); // setting to zero Loading @@ -1636,13 +1627,7 @@ ivas_error ivas_core_dec( // set16_fx( st->hBWE_FD->L_old_wtda_swb_fx, 0, output_frame ); fixedToFloat_arrL( st->hBWE_FD->L_old_wtda_swb_fx, st->hBWE_FD->old_wtda_swb, 0, output_frame ); IF( NE_16( st->last_extl, SWB_BWE ) && NE_16( st->last_extl, FB_BWE ) ) { st->hBWE_FD->prev_mode = st->hBWE_FD->prev_mode; } st->hBWE_FD->prev_Energy_wb = st->hBWE_FD->prev_Energy_wb_fx; st->hBWE_FD->prev_L_swb_norm = st->hBWE_FD->prev_L_swb_norm; st->hBWE_FD->prev_flag = st->hBWE_FD->prev_flag; fixedToFloat_arr( st->hBWE_FD->mem_imdct_fx, st->hBWE_FD->mem_imdct, 0, L_FRAME48k ); // setting to zero } Loading Loading @@ -1867,11 +1852,9 @@ ivas_error ivas_core_dec( floatToFixed_arr( synth[n], synth_fx_16[n], st->Q_syn, L_FRAME48k ); st->prev_tilt_code_dec_fx = (Word16) floatToFixed( st->prev_tilt_code_dec, Q15 ); st->bws_cnt = st->bws_cnt; floatToFixed_arr( pitch_buf[n], pitch_buf_fx[n], Q6, NB_SUBFR16k ); st->prev_coder_type = st->prev_coder_type; st->tilt_wb_fx = (Word16) floatToFixed( st->tilt_wb, Q11 ); } Loading @@ -1879,21 +1862,6 @@ ivas_error ivas_core_dec( { floatToFixed_arr( hBWE_TD->lsp_prevfrm, hBWE_TD->lsp_prevfrm_fx, Q15, LPC_SHB_ORDER ); hBWE_TD->GainFrame_prevfrm_fx = floatToFixed( hBWE_TD->GainFrame_prevfrm, Q18 ); hBWE_TD->gFrame_WB_fx = hBWE_TD->gFrame_WB; hBWE_TD->idxSubGains_fx = hBWE_TD->idxSubGains; hBWE_TD->idxFrameGain_fx = hBWE_TD->idxFrameGain; hBWE_TD->idx_shb_fr_gain_fx = hBWE_TD->idx_shb_fr_gain; FOR( i = 0; i < NB_SUBFR16k; ++i ) { hBWE_TD->idx_res_gs_fx[i] = hBWE_TD->idx_res_gs[i]; } hBWE_TD->idx_mixFac_fx = hBWE_TD->idx_mixFac; FOR( i = 0; i < NUM_Q_LSF; ++i ) { hBWE_TD->lsf_idx_fx[i] = hBWE_TD->lsf_idx[i]; } hBWE_TD->m_idx_fx = hBWE_TD->m_idx; hBWE_TD->grid_idx_fx = hBWE_TD->grid_idx; hBWE_TD->GainAttn_fx = (Word16) floatToFixed( hBWE_TD->GainAttn, Q15 ); floatToFixed_arr( hBWE_TD->state_syn_shbexc, hBWE_TD->state_syn_shbexc_fx, ( st->prev_Q_bwe_exc - 16 ), L_SHB_LAHEAD / 4 ); floatToFixed_arr( hBWE_TD->old_bwe_exc_extended, hBWE_TD->old_bwe_exc_extended_fx, 0, NL_BUFF_OFFSET ); Loading @@ -1901,10 +1869,6 @@ ivas_error ivas_core_dec( floatToFixed_arr( hBWE_TD->mem_genSHBexc_filt_down_wb2, hBWE_TD->mem_genSHBexc_filt_down_wb2_fx, ( st->prev_Q_bwe_exc - 16 ), 2 * ALLPASSSECTIONS_STEEP + 1 ); floatToFixed_arr( hBWE_TD->mem_genSHBexc_filt_down_wb3, hBWE_TD->mem_genSHBexc_filt_down_wb3_fx, ( st->prev_Q_bwe_exc - 16 ), 2 * ALLPASSSECTIONS_STEEP + 1 ); floatToFixed_arrL( hBWE_TD->mem_csfilt, hBWE_TD->mem_csfilt_fx, st->prev_Q_bwe_exc, 2 ); FOR( i = 0; i < 2; ++i ) { hBWE_TD->bwe_seed_fx[i] = hBWE_TD->bwe_seed[i]; } floatToFixed_arr( hBWE_TD->syn_overlap, hBWE_TD->syn_overlap_fx, st->Q_syn, L_SHB_LAHEAD ); hBWE_TD->prev_wb_bwe_frame_pow_fx = floatToFixed( hBWE_TD->prev_wb_bwe_frame_pow, Q22 ); floatToFixed_arr( hBWE_TD->state_lsyn_filt_shb, hBWE_TD->state_lsyn_filt_shb_fx, st->prev_Qx, 2 * ALLPASSSECTIONS_STEEP ); Loading @@ -1923,10 +1887,6 @@ ivas_error ivas_core_dec( floatToFixed_arr( hBWE_FD->prev_SWB_fenv, st->prev_SWB_fenv_fx, Q1, SWB_FENV ); floatToFixed_arr( hBWE_FD->mem_imdct, hBWE_FD->mem_imdct_fx, hBWE_FD->mem_imdct_exp_fx, L_FRAME48k ); hBWE_FD->prev_Energy_wb_fx = floatToFixed( hBWE_FD->prev_Energy_wb, st->prev_Q_synth ); hBWE_FD->prev_L_swb_norm_fx = hBWE_FD->prev_L_swb_norm; hBWE_FD->Seed_fx = hBWE_FD->Seed; hBWE_FD->prev_flag_fx = hBWE_FD->prev_flag; st->coder_type = st->coder_type; } #endif test(); Loading Loading @@ -1962,7 +1922,6 @@ ivas_error ivas_core_dec( st->prev_tilt_code_dec = fixedToFloat( st->prev_tilt_code_dec_fx, Q15 ); fixedToFloat_arr( pitch_buf_fx[n], pitch_buf[n], Q6, NB_SUBFR16k ); st->prev_coder_type = st->prev_coder_type; st->tilt_wb = fixedToFloat( st->tilt_wb_fx, Q11 ); } Loading @@ -1972,10 +1931,6 @@ ivas_error ivas_core_dec( hBWE_TD->GainAttn = fixedToFloat( hBWE_TD->GainAttn_fx, Q15); hBWE_TD->prev_wb_bwe_frame_pow = fixedToFloat( hBWE_TD->prev_wb_bwe_frame_pow_fx, Q22 ); fixedToFloat_arrL( hBWE_TD->mem_csfilt_fx, hBWE_TD->mem_csfilt, st->prev_Q_bwe_exc, 2 ); FOR( i = 0; i < 2; ++i ) { hBWE_TD->bwe_seed[i] = hBWE_TD->bwe_seed_fx[i]; } fixedToFloat_arr( hBWE_TD->syn_overlap_fx, hBWE_TD->syn_overlap, st->Q_syn, L_SHB_LAHEAD ); fixedToFloat_arr( hBWE_TD->mem_genSHBexc_filt_down_shb_fx, hBWE_TD->mem_genSHBexc_filt_down_shb, ( st->prev_Q_bwe_exc - 16 ), 2 * ALLPASSSECTIONS_STEEP + 1 ); Loading @@ -1997,13 +1952,9 @@ ivas_error ivas_core_dec( { hBWE_FD->last_wb_bwe_ener = fixedToFloat( st->last_wb_bwe_ener_fx, Q3 ); fixedToFloat_arr( st->prev_SWB_fenv_fx, hBWE_FD->prev_SWB_fenv, Q1, SWB_FENV ); hBWE_FD->prev_L_swb_norm = hBWE_FD->prev_L_swb_norm_fx; hBWE_FD->Seed = hBWE_FD->Seed_fx; hBWE_FD->prev_flag = hBWE_FD->prev_flag_fx; fixedToFloat_arr( hBWE_FD->mem_imdct_fx, hBWE_FD->mem_imdct, hBWE_FD->mem_imdct_exp_fx, L_FRAME48k ); fixedToFloat_arr( hBWE_FD->L_old_wtda_swb_fx, hBWE_FD->old_wtda_swb, hBWE_FD->old_wtda_swb_fx_exp, L_FRAME48k ); hBWE_FD->prev_Energy_wb = fixedToFloat( hBWE_FD->prev_Energy_wb_fx, st->prev_Q_synth ); st->coder_type = st->coder_type; } #endif #else Loading Loading @@ -2072,7 +2023,6 @@ ivas_error ivas_core_dec( hBWE_TD->fbbwe_hpf_mem_fx_Q[1] = norm_arr_l(hBWE_TD->fbbwe_hpf_mem[1], 4); hBWE_TD->fbbwe_hpf_mem_fx_Q[2] = norm_arr_l(hBWE_TD->fbbwe_hpf_mem[2], 4); hBWE_TD->fbbwe_hpf_mem_fx_Q[3] = norm_arr_l(hBWE_TD->fbbwe_hpf_mem[3], 4); hBWE_TD->idxGain_fx = hBWE_TD->idxGain; hBWE_TD->prev_fbbwe_ratio_fx = floatToFixed( hBWE_TD->prev_fbbwe_ratio, 0 ); floatToFixed_arrL( hBWE_TD->fbbwe_hpf_mem[0], hBWE_TD->fbbwe_hpf_mem_fx[0], hBWE_TD->fbbwe_hpf_mem_fx_Q[0], 4 ); floatToFixed_arrL( hBWE_TD->fbbwe_hpf_mem[1], hBWE_TD->fbbwe_hpf_mem_fx[1], hBWE_TD->fbbwe_hpf_mem_fx_Q[1], 4 ); Loading @@ -2091,7 +2041,6 @@ ivas_error ivas_core_dec( fixedToFloat_arrL( hb_synth_32[n], hb_synth[n], st->Q_syn, L_FRAME48k ); if ( hBWE_TD != NULL ) { hBWE_TD->idxGain = hBWE_TD->idxGain_fx; hBWE_TD->prev_fbbwe_ratio = fixedToFloat(hBWE_TD->prev_fbbwe_ratio_fx, 0); for ( int lp = 0; lp < 4; lp++ ) { Loading Loading @@ -2135,15 +2084,9 @@ ivas_error ivas_core_dec( for (int i = 0; i < 14; i++) st->hBWE_FD->prev_SWB_fenv_fx[i] = (Word16)(st->hBWE_FD->prev_SWB_fenv[i] * (1 << 1)); st->bws_cnt = st->bws_cnt; st->bws_cnt1 = st->bws_cnt1; st->hBWE_FD->prev_mode_fx = st->hBWE_FD->prev_mode; st->hBWE_FD->prev_Energy_fx = (Word16)(st->hBWE_FD->prev_Energy * (1 << 3)); st->hBWE_FD->prev_L_swb_norm_fx = st->hBWE_FD->prev_L_swb_norm; st->tilt_wb_fx = (Word16)(st->tilt_wb * (1 << 11)); st->hBWE_FD->Seed_fx = st->hBWE_FD->Seed; st->hBWE_FD->prev_weight_fx = (Word16)(st->hBWE_FD->prev_weight*(1 << 15)); st->hBWE_FD->prev_frica_flag_fx = st->hBWE_FD->prev_frica_flag; st->hBWE_FD->prev_td_energy_fx = (Word16)st->hBWE_FD->prev_td_energy; st->attenu_fx = (Word16)(st->attenu1 * (1 << 15)); Loading @@ -2154,19 +2097,12 @@ ivas_error ivas_core_dec( st->prev_ener_shb = (float)st->prev_ener_shb_fx / 2; st->attenu1 = (float)st->attenu_fx / (1 << 15); st->hBWE_FD->prev_frica_flag = st->hBWE_FD->prev_frica_flag_fx; st->hBWE_FD->prev_mode = st->hBWE_FD->prev_mode_fx; st->hBWE_FD->prev_Energy = ((float)st->hBWE_FD->prev_Energy_fx / (1 << 3)); st->hBWE_FD->prev_L_swb_norm = st->hBWE_FD->prev_L_swb_norm_fx; st->tilt_wb = ((float)st->tilt_wb_fx / (1 << 11)); st->hBWE_FD->Seed = st->hBWE_FD->Seed_fx; st->hBWE_FD->prev_weight = ((float)st->hBWE_FD->prev_weight_fx / (1 << 15)); st->hBWE_FD->prev_td_energy_fx = (Word16)st->hBWE_FD->prev_td_energy; for (int i = 0; i < 14; i++) st->hBWE_FD->prev_SWB_fenv[i] = ((float)st->hBWE_FD->prev_SWB_fenv_fx[i] / (1 << 1)); Loading Loading
lib_dec/cng_dec_fx.c +1 −1 Original line number Diff line number Diff line Loading @@ -1025,7 +1025,7 @@ static void shb_CNG_decod_fx( } } GenSHBSynth_fx( shb_syn16k_fx, shb_synth_fx, hBWE_TD->genSHBsynth_Hilbert_Mem_fx, hBWE_TD->genSHBsynth_state_lsyn_filt_shb_local_fx, st_fx->L_frame, &(hBWE_TD->syn_dm_phase_fx) ); GenSHBSynth_fx( shb_syn16k_fx, shb_synth_fx, hBWE_TD->genSHBsynth_Hilbert_Mem_fx, hBWE_TD->genSHBsynth_state_lsyn_filt_shb_local_fx, st_fx->L_frame, &(hBWE_TD->syn_dm_phase) ); IF ( EQ_32(st_fx->output_Fs,48000)) { Loading
lib_dec/core_switching_dec_fx.c +8 −8 Original line number Diff line number Diff line Loading @@ -1373,15 +1373,15 @@ ivas_error core_switching_post_dec_fx( move16(); if( NE_16(st_fx->last_extl, WB_BWE)) { hBWE_FD->prev_mode_fx = NORMAL; hBWE_FD->prev_mode = NORMAL; move16(); } hBWE_FD->prev_Energy_fx = 0; move16(); hBWE_FD->prev_L_swb_norm_fx = 8; hBWE_FD->prev_L_swb_norm = 8; move16(); hBWE_FD->prev_frica_flag_fx = 0; hBWE_FD->prev_frica_flag = 0; move16(); set16_fx(hBWE_FD->mem_imdct_fx, 0, L_FRAME48k ); hBWE_FD->prev_td_energy_fx = 0; Loading @@ -1401,15 +1401,15 @@ ivas_error core_switching_post_dec_fx( test(); if ( NE_16(st_fx->last_extl, SWB_BWE)&&NE_16(st_fx->last_extl,FB_BWE)) { hBWE_FD->prev_mode_fx = NORMAL; hBWE_FD->prev_mode = NORMAL; move16(); } hBWE_FD->prev_Energy_wb_fx = 0; move16(); hBWE_FD->prev_L_swb_norm_fx = 8; hBWE_FD->prev_L_swb_norm = 8; move16(); set16_fx(hBWE_FD->mem_imdct_fx, 0, L_FRAME48k ); hBWE_FD->prev_flag_fx = 0; hBWE_FD->prev_flag = 0; move16(); } Loading Loading @@ -1948,13 +1948,13 @@ ivas_error core_switching_post_dec_ivas_fx( move16(); IF( NE_16( st_fx->last_extl, WB_BWE ) ) { hBWE_FD->prev_mode_fx = NORMAL; hBWE_FD->prev_mode = NORMAL; move16(); } hBWE_FD->prev_Energy_fx = 0; move16(); hBWE_FD->prev_L_swb_norm_fx = 8; hBWE_FD->prev_L_swb_norm = 8; move16(); hBWE_FD->prev_frica_flag = 0; move16(); Loading
lib_dec/evs_dec_fx.c +1 −1 Original line number Diff line number Diff line Loading @@ -916,7 +916,7 @@ ivas_error evs_dec_fx( GenTransition_fx(hBWE_TD->syn_overlap_fx, hBWE_TD->old_tbe_synth_fx, 2*NS2SA(st_fx->output_Fs, DELAY_BWE_TOTAL_NS), hb_synth_fx, hBWE_TD->genSHBsynth_Hilbert_Mem_fx, hBWE_TD->genSHBsynth_state_lsyn_filt_shb_local_fx, hBWE_TD->mem_resamp_HB_32k_fx, &(hBWE_TD->syn_dm_phase_fx), st_fx->output_Fs, hBWE_TD->int_3_over_2_tbemem_dec_fx, st_fx->rf_flag, st_fx->total_brate ); &(hBWE_TD->syn_dm_phase), st_fx->output_Fs, hBWE_TD->int_3_over_2_tbemem_dec_fx, st_fx->rf_flag, st_fx->total_brate ); hb_synth_fx_exp = st_fx->prev_Q_bwe_syn2; move16(); Loading
lib_dec/hq_hr_dec_fx.c +2 −2 Original line number Diff line number Diff line Loading @@ -379,7 +379,7 @@ void ivas_hq_hr_dec_fx( &hHQ_core->no_att_hangover_fx, &hHQ_core->energy_lt_fx, &hHQ_core->hq_generic_seed_fx, hq_generic_exc_clas, core_sfm, *hqswb_clas, noise_level, st_fx->core_brate, hHQ_core->prev_noise_level_fx, &hHQ_core->prev_R_fx, hHQ_core->prev_coeff_out_fx, peak_idx, Npeaks, pulses, hHQ_core->old_is_transient_fx[0], hHQ_core->prev_normq_fx, hHQ_core->prev_env_fx, st_fx->prev_bfi, sfmsize, sfm_start, sfm_end, &st_fx->hBWE_FD->prev_L_swb_norm_fx, hHQ_core->prev_hqswb_clas_fx, num_sfm, hHQ_core->prev_env_Q, num_env_bands, st_fx->element_mode ); &st_fx->hBWE_FD->prev_L_swb_norm, hHQ_core->prev_hqswb_clas_fx, num_sfm, hHQ_core->prev_env_Q, num_env_bands, st_fx->element_mode ); enforce_zero_for_min_envelope_fx( *hqswb_clas, ynrm, t_audio_q, nb_sfm, sfm_start, sfm_end ); Loading Loading @@ -642,7 +642,7 @@ void hq_hr_dec_fx( &hHQ_core->no_att_hangover_fx, &hHQ_core->energy_lt_fx, &hHQ_core->hq_generic_seed_fx, hq_generic_exc_clas, core_sfm, *hqswb_clas, noise_level, st_fx->core_brate, hHQ_core->prev_noise_level_fx, &hHQ_core->prev_R_fx, hHQ_core->prev_coeff_out_fx, peak_idx, Npeaks, pulses, hHQ_core->old_is_transient_fx[0], hHQ_core->prev_normq_fx, hHQ_core->prev_env_fx, st_fx->prev_bfi, sfmsize, sfm_start, sfm_end, &st_fx->hBWE_FD->prev_L_swb_norm_fx, hHQ_core->prev_hqswb_clas_fx, num_sfm, hHQ_core->prev_env_Q, num_env_bands &st_fx->hBWE_FD->prev_L_swb_norm, hHQ_core->prev_hqswb_clas_fx, num_sfm, hHQ_core->prev_env_Q, num_env_bands ,st_fx->element_mode); enforce_zero_for_min_envelope_fx( *hqswb_clas, ynrm, t_audio_q, nb_sfm, sfm_start, sfm_end ); Loading
lib_dec/ivas_core_dec.c +0 −64 Original line number Diff line number Diff line Loading @@ -889,7 +889,6 @@ ivas_error ivas_core_dec( hHQ_core->wmold_hb_fx = (Word16) floatToFixed( hHQ_core->wmold_hb, Q15 ); hHQ_core->mean_prev_hb_fx = floatToFixed( hHQ_core->mean_prev_hb, 0 ); hHQ_core->memfilt_lb_fx = (Word16) floatToFixed( hHQ_core->memfilt_lb, 0 ); st->hBWE_FD->prev_L_swb_norm_fx = st->hBWE_FD->prev_L_swb_norm; hHQ_core->HqVoicing_fx = hHQ_core->HqVoicing; hHQ_core->ph_ecu_HqVoicing_fx = hHQ_core->ph_ecu_HqVoicing; hHQ_core->prev_hqswb_clas_fx = hHQ_core->prev_hqswb_clas; Loading Loading @@ -956,7 +955,6 @@ ivas_error ivas_core_dec( hHQ_core->wmold_hb = fixedToFloat( hHQ_core->wmold_hb_fx, Q15 ); hHQ_core->mean_prev_hb = fixedToFloat( hHQ_core->mean_prev_hb_fx, 0 ); hHQ_core->memfilt_lb = fixedToFloat( hHQ_core->memfilt_lb_fx, 0 ); st->hBWE_FD->prev_L_swb_norm = st->hBWE_FD->prev_L_swb_norm_fx; hHQ_core->HqVoicing = hHQ_core->HqVoicing_fx; hHQ_core->ph_ecu_HqVoicing = hHQ_core->ph_ecu_HqVoicing_fx; hHQ_core->prev_hqswb_clas = hHQ_core->prev_hqswb_clas_fx; Loading Loading @@ -1615,14 +1613,7 @@ ivas_error ivas_core_dec( { fixedToFloat_arrL( st->hBWE_FD->L_old_wtda_swb_fx, st->hBWE_FD->old_wtda_swb, 0, output_frame ); IF( NE_16( st->last_extl, WB_BWE ) ) { st->hBWE_FD->prev_mode = st->hBWE_FD->prev_mode_fx; } st->hBWE_FD->prev_Energy = fixedToFloat( st->hBWE_FD->prev_Energy_fx, 0 ); // setting to zero st->hBWE_FD->prev_L_swb_norm = st->hBWE_FD->prev_L_swb_norm_fx; // fixed st->hBWE_FD->prev_frica_flag = st->hBWE_FD->prev_frica_flag; // fixed st->hBWE_FD->prev_td_energy = st->hBWE_FD->prev_td_energy_fx; // setting to zero st->hBWE_FD->prev_weight = fixedToFloat( st->hBWE_FD->prev_weight_fx, 15 ); // 6554; /*0.2 in Q15*/ st->hBWE_FD->prev_fb_ener_adjust = fixedToFloat( st->prev_fb_ener_adjust_fx, 0 ); // setting to zero Loading @@ -1636,13 +1627,7 @@ ivas_error ivas_core_dec( // set16_fx( st->hBWE_FD->L_old_wtda_swb_fx, 0, output_frame ); fixedToFloat_arrL( st->hBWE_FD->L_old_wtda_swb_fx, st->hBWE_FD->old_wtda_swb, 0, output_frame ); IF( NE_16( st->last_extl, SWB_BWE ) && NE_16( st->last_extl, FB_BWE ) ) { st->hBWE_FD->prev_mode = st->hBWE_FD->prev_mode; } st->hBWE_FD->prev_Energy_wb = st->hBWE_FD->prev_Energy_wb_fx; st->hBWE_FD->prev_L_swb_norm = st->hBWE_FD->prev_L_swb_norm; st->hBWE_FD->prev_flag = st->hBWE_FD->prev_flag; fixedToFloat_arr( st->hBWE_FD->mem_imdct_fx, st->hBWE_FD->mem_imdct, 0, L_FRAME48k ); // setting to zero } Loading Loading @@ -1867,11 +1852,9 @@ ivas_error ivas_core_dec( floatToFixed_arr( synth[n], synth_fx_16[n], st->Q_syn, L_FRAME48k ); st->prev_tilt_code_dec_fx = (Word16) floatToFixed( st->prev_tilt_code_dec, Q15 ); st->bws_cnt = st->bws_cnt; floatToFixed_arr( pitch_buf[n], pitch_buf_fx[n], Q6, NB_SUBFR16k ); st->prev_coder_type = st->prev_coder_type; st->tilt_wb_fx = (Word16) floatToFixed( st->tilt_wb, Q11 ); } Loading @@ -1879,21 +1862,6 @@ ivas_error ivas_core_dec( { floatToFixed_arr( hBWE_TD->lsp_prevfrm, hBWE_TD->lsp_prevfrm_fx, Q15, LPC_SHB_ORDER ); hBWE_TD->GainFrame_prevfrm_fx = floatToFixed( hBWE_TD->GainFrame_prevfrm, Q18 ); hBWE_TD->gFrame_WB_fx = hBWE_TD->gFrame_WB; hBWE_TD->idxSubGains_fx = hBWE_TD->idxSubGains; hBWE_TD->idxFrameGain_fx = hBWE_TD->idxFrameGain; hBWE_TD->idx_shb_fr_gain_fx = hBWE_TD->idx_shb_fr_gain; FOR( i = 0; i < NB_SUBFR16k; ++i ) { hBWE_TD->idx_res_gs_fx[i] = hBWE_TD->idx_res_gs[i]; } hBWE_TD->idx_mixFac_fx = hBWE_TD->idx_mixFac; FOR( i = 0; i < NUM_Q_LSF; ++i ) { hBWE_TD->lsf_idx_fx[i] = hBWE_TD->lsf_idx[i]; } hBWE_TD->m_idx_fx = hBWE_TD->m_idx; hBWE_TD->grid_idx_fx = hBWE_TD->grid_idx; hBWE_TD->GainAttn_fx = (Word16) floatToFixed( hBWE_TD->GainAttn, Q15 ); floatToFixed_arr( hBWE_TD->state_syn_shbexc, hBWE_TD->state_syn_shbexc_fx, ( st->prev_Q_bwe_exc - 16 ), L_SHB_LAHEAD / 4 ); floatToFixed_arr( hBWE_TD->old_bwe_exc_extended, hBWE_TD->old_bwe_exc_extended_fx, 0, NL_BUFF_OFFSET ); Loading @@ -1901,10 +1869,6 @@ ivas_error ivas_core_dec( floatToFixed_arr( hBWE_TD->mem_genSHBexc_filt_down_wb2, hBWE_TD->mem_genSHBexc_filt_down_wb2_fx, ( st->prev_Q_bwe_exc - 16 ), 2 * ALLPASSSECTIONS_STEEP + 1 ); floatToFixed_arr( hBWE_TD->mem_genSHBexc_filt_down_wb3, hBWE_TD->mem_genSHBexc_filt_down_wb3_fx, ( st->prev_Q_bwe_exc - 16 ), 2 * ALLPASSSECTIONS_STEEP + 1 ); floatToFixed_arrL( hBWE_TD->mem_csfilt, hBWE_TD->mem_csfilt_fx, st->prev_Q_bwe_exc, 2 ); FOR( i = 0; i < 2; ++i ) { hBWE_TD->bwe_seed_fx[i] = hBWE_TD->bwe_seed[i]; } floatToFixed_arr( hBWE_TD->syn_overlap, hBWE_TD->syn_overlap_fx, st->Q_syn, L_SHB_LAHEAD ); hBWE_TD->prev_wb_bwe_frame_pow_fx = floatToFixed( hBWE_TD->prev_wb_bwe_frame_pow, Q22 ); floatToFixed_arr( hBWE_TD->state_lsyn_filt_shb, hBWE_TD->state_lsyn_filt_shb_fx, st->prev_Qx, 2 * ALLPASSSECTIONS_STEEP ); Loading @@ -1923,10 +1887,6 @@ ivas_error ivas_core_dec( floatToFixed_arr( hBWE_FD->prev_SWB_fenv, st->prev_SWB_fenv_fx, Q1, SWB_FENV ); floatToFixed_arr( hBWE_FD->mem_imdct, hBWE_FD->mem_imdct_fx, hBWE_FD->mem_imdct_exp_fx, L_FRAME48k ); hBWE_FD->prev_Energy_wb_fx = floatToFixed( hBWE_FD->prev_Energy_wb, st->prev_Q_synth ); hBWE_FD->prev_L_swb_norm_fx = hBWE_FD->prev_L_swb_norm; hBWE_FD->Seed_fx = hBWE_FD->Seed; hBWE_FD->prev_flag_fx = hBWE_FD->prev_flag; st->coder_type = st->coder_type; } #endif test(); Loading Loading @@ -1962,7 +1922,6 @@ ivas_error ivas_core_dec( st->prev_tilt_code_dec = fixedToFloat( st->prev_tilt_code_dec_fx, Q15 ); fixedToFloat_arr( pitch_buf_fx[n], pitch_buf[n], Q6, NB_SUBFR16k ); st->prev_coder_type = st->prev_coder_type; st->tilt_wb = fixedToFloat( st->tilt_wb_fx, Q11 ); } Loading @@ -1972,10 +1931,6 @@ ivas_error ivas_core_dec( hBWE_TD->GainAttn = fixedToFloat( hBWE_TD->GainAttn_fx, Q15); hBWE_TD->prev_wb_bwe_frame_pow = fixedToFloat( hBWE_TD->prev_wb_bwe_frame_pow_fx, Q22 ); fixedToFloat_arrL( hBWE_TD->mem_csfilt_fx, hBWE_TD->mem_csfilt, st->prev_Q_bwe_exc, 2 ); FOR( i = 0; i < 2; ++i ) { hBWE_TD->bwe_seed[i] = hBWE_TD->bwe_seed_fx[i]; } fixedToFloat_arr( hBWE_TD->syn_overlap_fx, hBWE_TD->syn_overlap, st->Q_syn, L_SHB_LAHEAD ); fixedToFloat_arr( hBWE_TD->mem_genSHBexc_filt_down_shb_fx, hBWE_TD->mem_genSHBexc_filt_down_shb, ( st->prev_Q_bwe_exc - 16 ), 2 * ALLPASSSECTIONS_STEEP + 1 ); Loading @@ -1997,13 +1952,9 @@ ivas_error ivas_core_dec( { hBWE_FD->last_wb_bwe_ener = fixedToFloat( st->last_wb_bwe_ener_fx, Q3 ); fixedToFloat_arr( st->prev_SWB_fenv_fx, hBWE_FD->prev_SWB_fenv, Q1, SWB_FENV ); hBWE_FD->prev_L_swb_norm = hBWE_FD->prev_L_swb_norm_fx; hBWE_FD->Seed = hBWE_FD->Seed_fx; hBWE_FD->prev_flag = hBWE_FD->prev_flag_fx; fixedToFloat_arr( hBWE_FD->mem_imdct_fx, hBWE_FD->mem_imdct, hBWE_FD->mem_imdct_exp_fx, L_FRAME48k ); fixedToFloat_arr( hBWE_FD->L_old_wtda_swb_fx, hBWE_FD->old_wtda_swb, hBWE_FD->old_wtda_swb_fx_exp, L_FRAME48k ); hBWE_FD->prev_Energy_wb = fixedToFloat( hBWE_FD->prev_Energy_wb_fx, st->prev_Q_synth ); st->coder_type = st->coder_type; } #endif #else Loading Loading @@ -2072,7 +2023,6 @@ ivas_error ivas_core_dec( hBWE_TD->fbbwe_hpf_mem_fx_Q[1] = norm_arr_l(hBWE_TD->fbbwe_hpf_mem[1], 4); hBWE_TD->fbbwe_hpf_mem_fx_Q[2] = norm_arr_l(hBWE_TD->fbbwe_hpf_mem[2], 4); hBWE_TD->fbbwe_hpf_mem_fx_Q[3] = norm_arr_l(hBWE_TD->fbbwe_hpf_mem[3], 4); hBWE_TD->idxGain_fx = hBWE_TD->idxGain; hBWE_TD->prev_fbbwe_ratio_fx = floatToFixed( hBWE_TD->prev_fbbwe_ratio, 0 ); floatToFixed_arrL( hBWE_TD->fbbwe_hpf_mem[0], hBWE_TD->fbbwe_hpf_mem_fx[0], hBWE_TD->fbbwe_hpf_mem_fx_Q[0], 4 ); floatToFixed_arrL( hBWE_TD->fbbwe_hpf_mem[1], hBWE_TD->fbbwe_hpf_mem_fx[1], hBWE_TD->fbbwe_hpf_mem_fx_Q[1], 4 ); Loading @@ -2091,7 +2041,6 @@ ivas_error ivas_core_dec( fixedToFloat_arrL( hb_synth_32[n], hb_synth[n], st->Q_syn, L_FRAME48k ); if ( hBWE_TD != NULL ) { hBWE_TD->idxGain = hBWE_TD->idxGain_fx; hBWE_TD->prev_fbbwe_ratio = fixedToFloat(hBWE_TD->prev_fbbwe_ratio_fx, 0); for ( int lp = 0; lp < 4; lp++ ) { Loading Loading @@ -2135,15 +2084,9 @@ ivas_error ivas_core_dec( for (int i = 0; i < 14; i++) st->hBWE_FD->prev_SWB_fenv_fx[i] = (Word16)(st->hBWE_FD->prev_SWB_fenv[i] * (1 << 1)); st->bws_cnt = st->bws_cnt; st->bws_cnt1 = st->bws_cnt1; st->hBWE_FD->prev_mode_fx = st->hBWE_FD->prev_mode; st->hBWE_FD->prev_Energy_fx = (Word16)(st->hBWE_FD->prev_Energy * (1 << 3)); st->hBWE_FD->prev_L_swb_norm_fx = st->hBWE_FD->prev_L_swb_norm; st->tilt_wb_fx = (Word16)(st->tilt_wb * (1 << 11)); st->hBWE_FD->Seed_fx = st->hBWE_FD->Seed; st->hBWE_FD->prev_weight_fx = (Word16)(st->hBWE_FD->prev_weight*(1 << 15)); st->hBWE_FD->prev_frica_flag_fx = st->hBWE_FD->prev_frica_flag; st->hBWE_FD->prev_td_energy_fx = (Word16)st->hBWE_FD->prev_td_energy; st->attenu_fx = (Word16)(st->attenu1 * (1 << 15)); Loading @@ -2154,19 +2097,12 @@ ivas_error ivas_core_dec( st->prev_ener_shb = (float)st->prev_ener_shb_fx / 2; st->attenu1 = (float)st->attenu_fx / (1 << 15); st->hBWE_FD->prev_frica_flag = st->hBWE_FD->prev_frica_flag_fx; st->hBWE_FD->prev_mode = st->hBWE_FD->prev_mode_fx; st->hBWE_FD->prev_Energy = ((float)st->hBWE_FD->prev_Energy_fx / (1 << 3)); st->hBWE_FD->prev_L_swb_norm = st->hBWE_FD->prev_L_swb_norm_fx; st->tilt_wb = ((float)st->tilt_wb_fx / (1 << 11)); st->hBWE_FD->Seed = st->hBWE_FD->Seed_fx; st->hBWE_FD->prev_weight = ((float)st->hBWE_FD->prev_weight_fx / (1 << 15)); st->hBWE_FD->prev_td_energy_fx = (Word16)st->hBWE_FD->prev_td_energy; for (int i = 0; i < 14; i++) st->hBWE_FD->prev_SWB_fenv[i] = ((float)st->hBWE_FD->prev_SWB_fenv_fx[i] / (1 << 1)); Loading