From 288585afd1ba1998746cf61cf0d37d9d9fd48d74 Mon Sep 17 00:00:00 2001 From: Sandesh Venkatesh Date: Sat, 11 May 2024 11:07:45 +0530 Subject: [PATCH] Fix for crash issues observered for SBA format with LTV set LTV crash for below cases are fixed: [SBA at 24.4 kbps, 32kHz in, 32kHz out, STEREO out] [SBA at 32 kbps, 48kHz in, 48kHz out, MONO out, DTX, bandwidth switching] --- lib_com/float_to_fix_ops.c | 10 +++++----- lib_dec/ivas_sba_dirac_stereo_dec_fx.c | 2 +- 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/lib_com/float_to_fix_ops.c b/lib_com/float_to_fix_ops.c index 3de3c441a..902b03787 100644 --- a/lib_com/float_to_fix_ops.c +++ b/lib_com/float_to_fix_ops.c @@ -789,11 +789,11 @@ void stereo_tcx_dec_mode_switch_reconf_To_fixed_2( //st->hFdCngDec->msPeriodog_ST_fx[p] = (Word32) ( st->hFdCngDec->msPeriodog_ST[p] * ( 1u << ( 31 - st->hFdCngDec->msPeriodog_ST_exp ) ) ); } - st->hFdCngDec->hFdCngCom->cngNoiseLevelExp = 31 - Q4; // Q4 - for ( int p = 0; p < FFTCLDFBLEN; p++ ) - { - st->hFdCngDec->hFdCngCom->cngNoiseLevel[p] = (Word32) ( st->hFdCngDec->hFdCngCom->cngNoiseLevel_flt[p] * ( 1u << ( 31 - st->hFdCngDec->hFdCngCom->cngNoiseLevelExp ) ) ); - } + // st->hFdCngDec->hFdCngCom->cngNoiseLevelExp = 31 - Q4; // Q4 + //for ( int p = 0; p < FFTCLDFBLEN; p++ ) + //{ + // st->hFdCngDec->hFdCngCom->cngNoiseLevel[p] = (Word32) ( st->hFdCngDec->hFdCngCom->cngNoiseLevel_flt[p] * ( 1u << ( 31 - st->hFdCngDec->hFdCngCom->cngNoiseLevelExp ) ) ); + //} //st->hFdCngDec->hFdCngCom->sidNoiseEstExp = 31 - Q4; //st->hFdCngDec->partNoiseShape_exp = 31 - Q4; //for ( int p = 0; p < NPART; p++ ) diff --git a/lib_dec/ivas_sba_dirac_stereo_dec_fx.c b/lib_dec/ivas_sba_dirac_stereo_dec_fx.c index 1aadd2881..d13d7eab9 100644 --- a/lib_dec/ivas_sba_dirac_stereo_dec_fx.c +++ b/lib_dec/ivas_sba_dirac_stereo_dec_fx.c @@ -1195,7 +1195,7 @@ void ivas_sba_dirac_stereo_smooth_parameters_fx( move16(); // The Q format of mixer_mat_prev_fx is Q30 so applying the left shift. hStereoDft->mixer_mat_smooth_fx[i][j][b + k * IVAS_MAX_NUM_BANDS] = - L_add(Mpy_32_16_1(hStereoDft->mixer_mat_smooth_fx[i][j][b + k * IVAS_MAX_NUM_BANDS], beta), + L_add_sat(Mpy_32_16_1(hStereoDft->mixer_mat_smooth_fx[i][j][b + k * IVAS_MAX_NUM_BANDS], beta), L_shl(Mpy_32_16_1(hMdDec->mixer_mat_prev_fx[i_hist][i][j][b], sub((Word16)0x7FFF, beta)), Q1)); move32(); } -- GitLab