Loading lib_com/ivas_prot_fx.h +2 −2 Original line number Diff line number Diff line Loading @@ -315,8 +315,8 @@ void sns_shape_spectrum_fx( const PsychoacousticParameters *pPsychParams, /* i : psychoacoustic parameters used to get the frequency bands */ const Word32 *scf_int, /* i : already interpolated SNS scalefactors */ const Word16 q_scf_int, /* i : Q of interpolated SNS scalefactors */ const Word16 L_frame /* i : frame length */ ); const Word16 L_frame, /* i : frame length */ Word16 *length ); // ivas_stereo_eclvq_com_fx.c Word32 ECSQ_dequantize_gain_fx( Loading lib_com/ivas_sns_com_fx.c +10 −2 Original line number Diff line number Diff line Loading @@ -284,8 +284,8 @@ void sns_shape_spectrum_fx( const PsychoacousticParameters *pPsychParams, /* i : psychoacoustic parameters used to get the frequency bands */ const Word32 *scf_int, /* i : already interpolated SNS scalefactors */ const Word16 q_scf_int, /* i : Q of interpolated SNS scalefactors */ const Word16 L_frame /* i : frame length */ ) const Word16 L_frame, /* i : frame length */ Word16 *length ) { Word16 i, n, k, tmp_k, bw, q_tmp = 0, shift, min_shift = 63; Word64 L64_tmp[L_FRAME48k]; Loading @@ -311,6 +311,10 @@ void sns_shape_spectrum_fx( } } tmp_k = k; if ( length != NULL ) { *length = k; } q_tmp = sub( add( add( *q_spectrum, q_scf_int ), min_shift ), 32 ); IF( GT_16( q_tmp, 30 ) ) { Loading Loading @@ -340,6 +344,10 @@ void sns_shape_spectrum_fx( } } tmp_k = k; if ( length != NULL ) { *length = k; } q_tmp = sub( add( add( *q_spectrum, q_scf_int ), min_shift ), 32 ); IF( GT_16( q_tmp, 30 ) ) { Loading lib_dec/TonalComponentDetection_fx.c +1 −1 Original line number Diff line number Diff line Loading @@ -101,7 +101,7 @@ void ivas_DetectTonalComponents_fx( } #endif q_pScaledMdctSpectrum = sub( 31, lastMDCTSpectrum_exp ); sns_shape_spectrum_fx( pScaledMdctSpectrum, &q_pScaledMdctSpectrum, psychParamsCurrent, sns_int_scf_fx, 16, nSamplesCore ); sns_shape_spectrum_fx( pScaledMdctSpectrum, &q_pScaledMdctSpectrum, psychParamsCurrent, sns_int_scf_fx, 16, nSamplesCore, NULL ); q_pScaledMdctSpectrum = add( q_pScaledMdctSpectrum, 1 ); Word16 tmp_e = sub( 31, q_pScaledMdctSpectrum ); nBands = psychParamsCurrent->nBands; Loading lib_dec/ivas_mdct_core_dec.c +4 −4 Original line number Diff line number Diff line Loading @@ -2430,7 +2430,7 @@ void ivas_mdct_core_tns_ns_fx( x_e[ch][k] = sub( 31, q_x ); Word16 q_sns_int_scf; Word16 q_2; Word16 q_2, length; q_sns_int_scf = add( 16 - 1, getScaleFactor32( sns_int_scf_fx, FDNS_NPTS ) ); // q_sns_int_scf -= 1; FOR( Word16 c = 0; c < FDNS_NPTS; c++ ) Loading @@ -2438,15 +2438,15 @@ void ivas_mdct_core_tns_ns_fx( sns_int_scf_fx[c] = L_shl( sns_int_scf_fx[c], q_sns_int_scf - 16 ); } q_2 = q_x; sns_shape_spectrum_fx( x_fx[ch][k], &q_x, st->hTcxCfg->psychParamsCurrent, sns_int_scf_fx, q_sns_int_scf, st->hTcxCfg->psychParamsCurrent->nBins ); sns_shape_spectrum_fx( x_fx[ch][k], &q_x, st->hTcxCfg->psychParamsCurrent, sns_int_scf_fx, q_sns_int_scf, st->hTcxCfg->psychParamsCurrent->nBins, &length ); IF( LT_16( q_2, add( q_x, 1 ) ) ) /*scaling to q_2*/ { Scale_sig32( &x_fx[ch][k][0], st->hTcxCfg->psychParamsCurrent->nBins, q_2 - q_x - 1 ); Scale_sig32( &x_fx[ch][k][0], length, q_2 - q_x - 1 ); q_x = q_2; } ELSE /*scaling to q_x+1*/ { Scale_sig32( &x_fx[ch][k][0] + st->hTcxCfg->psychParamsCurrent->nBins, L_spec[ch] - st->hTcxCfg->psychParamsCurrent->nBins, q_x + 1 - q_2 ); Scale_sig32( &x_fx[ch][k][0] + length, L_spec[ch] - length, q_x + 1 - q_2 ); q_x = add( q_x, 1 ); } x_e[ch][k] = sub( 31, q_x ); Loading lib_dec/ivas_stereo_switching_dec.c +1 −0 Original line number Diff line number Diff line Loading @@ -1700,6 +1700,7 @@ ivas_error stereo_memory_dec_fx( IF( EQ_16( hCPE->last_element_mode, IVAS_CPE_TD ) ) { mvl2l( tmpF_buff, st->hTcxDec->old_syn_Overl_32, L_FRAME16k / 2 ); Copy_Scale_sig32_16( st->hTcxDec->old_syn_Overl_32, st->hTcxDec->old_syn_Overl, L_FRAME16k / 2, add( st->Q_syn, 5 ) ); //(st->Qsyn - (11 - 16)) } set16_fx( st->hTcxDec->FBTCXdelayBuf, 0, 111 ); Loading Loading
lib_com/ivas_prot_fx.h +2 −2 Original line number Diff line number Diff line Loading @@ -315,8 +315,8 @@ void sns_shape_spectrum_fx( const PsychoacousticParameters *pPsychParams, /* i : psychoacoustic parameters used to get the frequency bands */ const Word32 *scf_int, /* i : already interpolated SNS scalefactors */ const Word16 q_scf_int, /* i : Q of interpolated SNS scalefactors */ const Word16 L_frame /* i : frame length */ ); const Word16 L_frame, /* i : frame length */ Word16 *length ); // ivas_stereo_eclvq_com_fx.c Word32 ECSQ_dequantize_gain_fx( Loading
lib_com/ivas_sns_com_fx.c +10 −2 Original line number Diff line number Diff line Loading @@ -284,8 +284,8 @@ void sns_shape_spectrum_fx( const PsychoacousticParameters *pPsychParams, /* i : psychoacoustic parameters used to get the frequency bands */ const Word32 *scf_int, /* i : already interpolated SNS scalefactors */ const Word16 q_scf_int, /* i : Q of interpolated SNS scalefactors */ const Word16 L_frame /* i : frame length */ ) const Word16 L_frame, /* i : frame length */ Word16 *length ) { Word16 i, n, k, tmp_k, bw, q_tmp = 0, shift, min_shift = 63; Word64 L64_tmp[L_FRAME48k]; Loading @@ -311,6 +311,10 @@ void sns_shape_spectrum_fx( } } tmp_k = k; if ( length != NULL ) { *length = k; } q_tmp = sub( add( add( *q_spectrum, q_scf_int ), min_shift ), 32 ); IF( GT_16( q_tmp, 30 ) ) { Loading Loading @@ -340,6 +344,10 @@ void sns_shape_spectrum_fx( } } tmp_k = k; if ( length != NULL ) { *length = k; } q_tmp = sub( add( add( *q_spectrum, q_scf_int ), min_shift ), 32 ); IF( GT_16( q_tmp, 30 ) ) { Loading
lib_dec/TonalComponentDetection_fx.c +1 −1 Original line number Diff line number Diff line Loading @@ -101,7 +101,7 @@ void ivas_DetectTonalComponents_fx( } #endif q_pScaledMdctSpectrum = sub( 31, lastMDCTSpectrum_exp ); sns_shape_spectrum_fx( pScaledMdctSpectrum, &q_pScaledMdctSpectrum, psychParamsCurrent, sns_int_scf_fx, 16, nSamplesCore ); sns_shape_spectrum_fx( pScaledMdctSpectrum, &q_pScaledMdctSpectrum, psychParamsCurrent, sns_int_scf_fx, 16, nSamplesCore, NULL ); q_pScaledMdctSpectrum = add( q_pScaledMdctSpectrum, 1 ); Word16 tmp_e = sub( 31, q_pScaledMdctSpectrum ); nBands = psychParamsCurrent->nBands; Loading
lib_dec/ivas_mdct_core_dec.c +4 −4 Original line number Diff line number Diff line Loading @@ -2430,7 +2430,7 @@ void ivas_mdct_core_tns_ns_fx( x_e[ch][k] = sub( 31, q_x ); Word16 q_sns_int_scf; Word16 q_2; Word16 q_2, length; q_sns_int_scf = add( 16 - 1, getScaleFactor32( sns_int_scf_fx, FDNS_NPTS ) ); // q_sns_int_scf -= 1; FOR( Word16 c = 0; c < FDNS_NPTS; c++ ) Loading @@ -2438,15 +2438,15 @@ void ivas_mdct_core_tns_ns_fx( sns_int_scf_fx[c] = L_shl( sns_int_scf_fx[c], q_sns_int_scf - 16 ); } q_2 = q_x; sns_shape_spectrum_fx( x_fx[ch][k], &q_x, st->hTcxCfg->psychParamsCurrent, sns_int_scf_fx, q_sns_int_scf, st->hTcxCfg->psychParamsCurrent->nBins ); sns_shape_spectrum_fx( x_fx[ch][k], &q_x, st->hTcxCfg->psychParamsCurrent, sns_int_scf_fx, q_sns_int_scf, st->hTcxCfg->psychParamsCurrent->nBins, &length ); IF( LT_16( q_2, add( q_x, 1 ) ) ) /*scaling to q_2*/ { Scale_sig32( &x_fx[ch][k][0], st->hTcxCfg->psychParamsCurrent->nBins, q_2 - q_x - 1 ); Scale_sig32( &x_fx[ch][k][0], length, q_2 - q_x - 1 ); q_x = q_2; } ELSE /*scaling to q_x+1*/ { Scale_sig32( &x_fx[ch][k][0] + st->hTcxCfg->psychParamsCurrent->nBins, L_spec[ch] - st->hTcxCfg->psychParamsCurrent->nBins, q_x + 1 - q_2 ); Scale_sig32( &x_fx[ch][k][0] + length, L_spec[ch] - length, q_x + 1 - q_2 ); q_x = add( q_x, 1 ); } x_e[ch][k] = sub( 31, q_x ); Loading
lib_dec/ivas_stereo_switching_dec.c +1 −0 Original line number Diff line number Diff line Loading @@ -1700,6 +1700,7 @@ ivas_error stereo_memory_dec_fx( IF( EQ_16( hCPE->last_element_mode, IVAS_CPE_TD ) ) { mvl2l( tmpF_buff, st->hTcxDec->old_syn_Overl_32, L_FRAME16k / 2 ); Copy_Scale_sig32_16( st->hTcxDec->old_syn_Overl_32, st->hTcxDec->old_syn_Overl, L_FRAME16k / 2, add( st->Q_syn, 5 ) ); //(st->Qsyn - (11 - 16)) } set16_fx( st->hTcxDec->FBTCXdelayBuf, 0, 111 ); Loading