Loading lib_com/options.h 100644 → 100755 +1 −2 Original line number Diff line number Diff line Loading @@ -160,8 +160,7 @@ #define FIX_VBR_COMPLEXITY /* Issue 234: fix extremely high complexity numbers for IVAS EVS mode */ #define FIX_ISM_INACTIVE_BITS /* Issue 230: fix bitbudget distribution in inactive frames in ISM format */ #define IMPROVE_CMDLINE_ROBUSTNESS /* Issue 233: Improve robustness of command-line parameters */ #define FIX_ITD_CNG /* Eri: Fix for CNG ITD */ #define FIX_MDCT_AND_MC_MONO_ISSUES /* Issue 242: Fix some issues with TCX-LTP and delay alignement for mono output */ /* ################## End DEVELOPMENT switches ######################### */ Loading lib_dec/ivas_cpe_dec.c 100644 → 100755 +13 −0 Original line number Diff line number Diff line Loading @@ -444,10 +444,12 @@ ivas_error ivas_cpe_dec( } } } #ifndef FIX_MDCT_AND_MC_MONO_ISSUES else 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 ) ) ) { applyDmxMdctStereo( hCPE, output, output_frame ); } #endif /*----------------------------------------------------------------* * Update parameters for stereo CNA Loading @@ -461,6 +463,13 @@ ivas_error ivas_cpe_dec( synchro_synthesis( ivas_total_brate, hCPE, output, output_frame, 0 ); #ifdef FIX_MDCT_AND_MC_MONO_ISSUES 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)) ) { applyDmxMdctStereo( hCPE, output, output_frame ); } #endif #ifndef DEBUG_STEREO_DFT_OUTRESPRED /*----------------------------------------------------------------* * IC-BWE: output LB and HB mix in ACELP mode Loading Loading @@ -581,7 +590,11 @@ ivas_error create_cpe_dec( hCPE->lt_es_em = 0.0f; /* Note: nchan_out is considered to be related to the structure. This is nchan_out for CPE and for MASA_format is always 2. */ #ifdef FIX_MDCT_AND_MC_MONO_ISSUES if ( st_ivas->ivas_format == SBA_FORMAT || st_ivas->ivas_format == MASA_FORMAT || st_ivas->ivas_format == MC_FORMAT ) #else if ( st_ivas->ivas_format == SBA_FORMAT || st_ivas->ivas_format == MASA_FORMAT || ( st_ivas->ivas_format == MC_FORMAT && st_ivas->mc_mode == MC_MODE_MCMASA ) ) #endif { hCPE->nchan_out = CPE_CHANNELS; } Loading lib_dec/ivas_stereo_switching_dec.c 100644 → 100755 +8 −0 Original line number Diff line number Diff line Loading @@ -975,6 +975,9 @@ void synchro_synthesis( int16_t dft_mono_brate_switch; int16_t delay_diff; float tmpF; #ifdef FIX_MDCT_AND_MC_MONO_ISSUES int16_t nChannels; #endif sts = hCPE->hCoreCoder; output_Fs = sts[0]->output_Fs; Loading Loading @@ -1222,7 +1225,12 @@ void synchro_synthesis( } } #ifdef FIX_MDCT_AND_MC_MONO_ISSUES nChannels = ( hCPE->element_mode == IVAS_CPE_MDCT ) ? 2 : hCPE->nchan_out; for ( n = 0; n < nChannels; n++ ) #else for ( n = 0; n < hCPE->nchan_out; n++ ) #endif { if ( hCPE->element_mode == IVAS_CPE_MDCT ) { Loading Loading
lib_com/options.h 100644 → 100755 +1 −2 Original line number Diff line number Diff line Loading @@ -160,8 +160,7 @@ #define FIX_VBR_COMPLEXITY /* Issue 234: fix extremely high complexity numbers for IVAS EVS mode */ #define FIX_ISM_INACTIVE_BITS /* Issue 230: fix bitbudget distribution in inactive frames in ISM format */ #define IMPROVE_CMDLINE_ROBUSTNESS /* Issue 233: Improve robustness of command-line parameters */ #define FIX_ITD_CNG /* Eri: Fix for CNG ITD */ #define FIX_MDCT_AND_MC_MONO_ISSUES /* Issue 242: Fix some issues with TCX-LTP and delay alignement for mono output */ /* ################## End DEVELOPMENT switches ######################### */ Loading
lib_dec/ivas_cpe_dec.c 100644 → 100755 +13 −0 Original line number Diff line number Diff line Loading @@ -444,10 +444,12 @@ ivas_error ivas_cpe_dec( } } } #ifndef FIX_MDCT_AND_MC_MONO_ISSUES else 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 ) ) ) { applyDmxMdctStereo( hCPE, output, output_frame ); } #endif /*----------------------------------------------------------------* * Update parameters for stereo CNA Loading @@ -461,6 +463,13 @@ ivas_error ivas_cpe_dec( synchro_synthesis( ivas_total_brate, hCPE, output, output_frame, 0 ); #ifdef FIX_MDCT_AND_MC_MONO_ISSUES 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)) ) { applyDmxMdctStereo( hCPE, output, output_frame ); } #endif #ifndef DEBUG_STEREO_DFT_OUTRESPRED /*----------------------------------------------------------------* * IC-BWE: output LB and HB mix in ACELP mode Loading Loading @@ -581,7 +590,11 @@ ivas_error create_cpe_dec( hCPE->lt_es_em = 0.0f; /* Note: nchan_out is considered to be related to the structure. This is nchan_out for CPE and for MASA_format is always 2. */ #ifdef FIX_MDCT_AND_MC_MONO_ISSUES if ( st_ivas->ivas_format == SBA_FORMAT || st_ivas->ivas_format == MASA_FORMAT || st_ivas->ivas_format == MC_FORMAT ) #else if ( st_ivas->ivas_format == SBA_FORMAT || st_ivas->ivas_format == MASA_FORMAT || ( st_ivas->ivas_format == MC_FORMAT && st_ivas->mc_mode == MC_MODE_MCMASA ) ) #endif { hCPE->nchan_out = CPE_CHANNELS; } Loading
lib_dec/ivas_stereo_switching_dec.c 100644 → 100755 +8 −0 Original line number Diff line number Diff line Loading @@ -975,6 +975,9 @@ void synchro_synthesis( int16_t dft_mono_brate_switch; int16_t delay_diff; float tmpF; #ifdef FIX_MDCT_AND_MC_MONO_ISSUES int16_t nChannels; #endif sts = hCPE->hCoreCoder; output_Fs = sts[0]->output_Fs; Loading Loading @@ -1222,7 +1225,12 @@ void synchro_synthesis( } } #ifdef FIX_MDCT_AND_MC_MONO_ISSUES nChannels = ( hCPE->element_mode == IVAS_CPE_MDCT ) ? 2 : hCPE->nchan_out; for ( n = 0; n < nChannels; n++ ) #else for ( n = 0; n < hCPE->nchan_out; n++ ) #endif { if ( hCPE->element_mode == IVAS_CPE_MDCT ) { Loading