Loading lib_com/options.h +1 −0 Original line number Diff line number Diff line Loading @@ -172,6 +172,7 @@ #define FIX_FLOAT_1493_MASA_ENCODE_STABILITY_IMPROVE /* Nokia: float issue 1493: Improves float decision stability in MASA encoding by adjusting reduction code */ #define FIX_2432_ISM_SPIKES_16KHZ /* VA: basop issue 2432: fix spikes in ISM decoding at 16kHz output sampling rate */ #define FIX_FLOAT_1518 /* FhG: fix issue 1518: loudness differences in OSBA decoding to mono or stereo output */ #define FIX_BASOP_2436_REUSED_CLDFB_IN_OMASA_SR /* FhG: basop issue 2436 (related to basop 2283): fix garbage output for >1 object OMASA with extrend as ISAR prerenderer */ /* ##################### End NON-BE switches ########################### */ Loading lib_dec/ivas_cpe_dec.c +8 −1 Original line number Diff line number Diff line Loading @@ -500,7 +500,14 @@ ivas_error ivas_cpe_dec( if ( hCPE->element_mode == IVAS_CPE_MDCT && hCPE->nchan_out == 1 && ( is_DTXrate( ivas_total_brate ) == 0 || ( is_DTXrate( ivas_total_brate ) == 1 && is_DTXrate( st_ivas->hDecoderConfig->last_ivas_total_brate ) == 0 ) ) ) { #ifdef FIX_FLOAT_1518 if ( !( st_ivas->ivas_format == SBA_ISM_FORMAT && st_ivas->ism_mode == ISM_MODE_NONE ) ) { #endif applyDmxMdctStereo( hCPE, output, output_frame ); #ifdef FIX_FLOAT_1518 } #endif } #ifndef DEBUG_STEREO_DFT_OUTRESPRED Loading lib_dec/ivas_dec.c +6 −0 Original line number Diff line number Diff line Loading @@ -443,6 +443,12 @@ ivas_error ivas_dec( ivas_sba_dirac_stereo_dec( st_ivas, &p_output[sba_ch_idx], output_frame ); } #ifdef FIX_FLOAT_1518 else if ( st_ivas->hDecoderConfig->nchan_out == 1 && st_ivas->ism_mode == ISM_MODE_NONE ) { v_multc( p_output[0], 2.0f, p_output[0], output_frame ); } #endif /* HP filtering */ for ( n = 0; n < getNumChanSynthesis( st_ivas ); n++ ) Loading lib_dec/ivas_sba_dirac_stereo_dec.c +4 −0 Original line number Diff line number Diff line Loading @@ -910,7 +910,11 @@ void ivas_sba_dirac_stereo_dec( synchro_synthesis( st_ivas->hDecoderConfig->ivas_total_brate, hCPE, output, output_frame, 1 /*st_ivas->sba_dirac_stereo_flag*/ ); /* output scaling */ #ifdef FIX_FLOAT_1518 if ( !sba_mono_flag && !( st_ivas->ivas_format == SBA_ISM_FORMAT && st_ivas->ism_mode == ISM_MODE_NONE ) ) #else if ( !sba_mono_flag ) #endif { v_multc( output[0], 0.5f, output[0], output_frame ); v_multc( output[1], 0.5f, output[1], output_frame ); Loading lib_dec/ivas_stereo_mdct_core_dec.c +4 −0 Original line number Diff line number Diff line Loading @@ -349,7 +349,11 @@ void stereo_mdct_core_dec( run_min_stats( sts, x ); #ifdef FIX_FLOAT_1518 if ( hCPE->nchan_out == 1 && ( !bfi || ( bfi && sts[0]->core != ACELP_CORE && sts[1]->core != ACELP_CORE ) ) && !( st_ivas->ivas_format == SBA_ISM_FORMAT && st_ivas->ism_mode == ISM_MODE_NONE ) ) #else if ( hCPE->nchan_out == 1 && ( !bfi || ( bfi && sts[0]->core != ACELP_CORE && sts[1]->core != ACELP_CORE ) ) ) #endif { apply_dmx_weights( hCPE, x, sts[0]->transform_type, sts[1]->transform_type ); } Loading Loading
lib_com/options.h +1 −0 Original line number Diff line number Diff line Loading @@ -172,6 +172,7 @@ #define FIX_FLOAT_1493_MASA_ENCODE_STABILITY_IMPROVE /* Nokia: float issue 1493: Improves float decision stability in MASA encoding by adjusting reduction code */ #define FIX_2432_ISM_SPIKES_16KHZ /* VA: basop issue 2432: fix spikes in ISM decoding at 16kHz output sampling rate */ #define FIX_FLOAT_1518 /* FhG: fix issue 1518: loudness differences in OSBA decoding to mono or stereo output */ #define FIX_BASOP_2436_REUSED_CLDFB_IN_OMASA_SR /* FhG: basop issue 2436 (related to basop 2283): fix garbage output for >1 object OMASA with extrend as ISAR prerenderer */ /* ##################### End NON-BE switches ########################### */ Loading
lib_dec/ivas_cpe_dec.c +8 −1 Original line number Diff line number Diff line Loading @@ -500,7 +500,14 @@ ivas_error ivas_cpe_dec( if ( hCPE->element_mode == IVAS_CPE_MDCT && hCPE->nchan_out == 1 && ( is_DTXrate( ivas_total_brate ) == 0 || ( is_DTXrate( ivas_total_brate ) == 1 && is_DTXrate( st_ivas->hDecoderConfig->last_ivas_total_brate ) == 0 ) ) ) { #ifdef FIX_FLOAT_1518 if ( !( st_ivas->ivas_format == SBA_ISM_FORMAT && st_ivas->ism_mode == ISM_MODE_NONE ) ) { #endif applyDmxMdctStereo( hCPE, output, output_frame ); #ifdef FIX_FLOAT_1518 } #endif } #ifndef DEBUG_STEREO_DFT_OUTRESPRED Loading
lib_dec/ivas_dec.c +6 −0 Original line number Diff line number Diff line Loading @@ -443,6 +443,12 @@ ivas_error ivas_dec( ivas_sba_dirac_stereo_dec( st_ivas, &p_output[sba_ch_idx], output_frame ); } #ifdef FIX_FLOAT_1518 else if ( st_ivas->hDecoderConfig->nchan_out == 1 && st_ivas->ism_mode == ISM_MODE_NONE ) { v_multc( p_output[0], 2.0f, p_output[0], output_frame ); } #endif /* HP filtering */ for ( n = 0; n < getNumChanSynthesis( st_ivas ); n++ ) Loading
lib_dec/ivas_sba_dirac_stereo_dec.c +4 −0 Original line number Diff line number Diff line Loading @@ -910,7 +910,11 @@ void ivas_sba_dirac_stereo_dec( synchro_synthesis( st_ivas->hDecoderConfig->ivas_total_brate, hCPE, output, output_frame, 1 /*st_ivas->sba_dirac_stereo_flag*/ ); /* output scaling */ #ifdef FIX_FLOAT_1518 if ( !sba_mono_flag && !( st_ivas->ivas_format == SBA_ISM_FORMAT && st_ivas->ism_mode == ISM_MODE_NONE ) ) #else if ( !sba_mono_flag ) #endif { v_multc( output[0], 0.5f, output[0], output_frame ); v_multc( output[1], 0.5f, output[1], output_frame ); Loading
lib_dec/ivas_stereo_mdct_core_dec.c +4 −0 Original line number Diff line number Diff line Loading @@ -349,7 +349,11 @@ void stereo_mdct_core_dec( run_min_stats( sts, x ); #ifdef FIX_FLOAT_1518 if ( hCPE->nchan_out == 1 && ( !bfi || ( bfi && sts[0]->core != ACELP_CORE && sts[1]->core != ACELP_CORE ) ) && !( st_ivas->ivas_format == SBA_ISM_FORMAT && st_ivas->ism_mode == ISM_MODE_NONE ) ) #else if ( hCPE->nchan_out == 1 && ( !bfi || ( bfi && sts[0]->core != ACELP_CORE && sts[1]->core != ACELP_CORE ) ) ) #endif { apply_dmx_weights( hCPE, x, sts[0]->transform_type, sts[1]->transform_type ); } Loading