From ca9facaeb08043aacf83216cf4bf0d1d189439d2 Mon Sep 17 00:00:00 2001 From: Markus Multrus Date: Mon, 13 Apr 2026 16:28:18 +0200 Subject: [PATCH 1/9] [cleanup] accept FIX_BASOP_2469_OBJ_EDIT_TD_REND_GAIN --- lib_com/options.h | 1 - lib_rend/ivas_objectRenderer_sources.c | 6 ------ lib_rend/ivas_stat_rend.h | 4 ---- 3 files changed, 11 deletions(-) diff --git a/lib_com/options.h b/lib_com/options.h index c5197b92a..b25f9535e 100644 --- a/lib_com/options.h +++ b/lib_com/options.h @@ -161,7 +161,6 @@ /*#define FIX_I4_OL_PITCH*/ /* fix open-loop pitch used for EVS core switching */ #define TMP_1342_WORKAROUND_DEC_FLUSH_BROKEN_IN_SR /* FhG: Temporary workaround for incorrect implementation of decoder flush with split rendering */ #define NONBE_1122_KEEP_EVS_MODE_UNCHANGED /* FhG: Disables fix for issue 1122 in EVS mode to keep BE tests green. This switch should be removed once the 1122 fix is added to EVS via a CR. */ -#define FIX_BASOP_2469_OBJ_EDIT_TD_REND_GAIN /* Eri: Basop issue 2469: TD renderer gain has wrong Q. In float this is just a synch of the cleanup done in BASOP */ #define FIX_ISSUE_1546_DEAD_CODE /* FhG: remove dead code reported in the issue*/ #define FIX_FLOAT_1544_SBA_META_IMPRECISION_UNSAFE_MATH /* FhG: float issue 1544: imprecision in ivas_get_dirac_sba_max_md_bits() with -funsafe-math-optimizations */ #define FIX_FLOAT_1544_ITD_IMPRECISION_UNSAFE_MATH /* FhG: float issue 1544: Avoid assert() with -funsafe-math-optimizations in stereo_td_itd() */ diff --git a/lib_rend/ivas_objectRenderer_sources.c b/lib_rend/ivas_objectRenderer_sources.c index c7587ad30..30f93f5ee 100644 --- a/lib_rend/ivas_objectRenderer_sources.c +++ b/lib_rend/ivas_objectRenderer_sources.c @@ -269,13 +269,7 @@ static void TDREND_SRC_REND_Init( /* SrcGain */ for ( nC = 0; nC < SPAT_BIN_MAX_INPUT_CHANNELS; nC++ ) { -#ifdef FIX_BASOP_2469_OBJ_EDIT_TD_REND_GAIN SrcRend_p->SrcGain_p[nC] = 1.0f; -#else - SrcRend_p->SrcGainMin_p[nC] = 0.0f; - SrcRend_p->SrcGain_p[nC] = 1.0f; - SrcRend_p->SrcGainMax_p[nC] = 2.0f; -#endif } SrcRend_p->SrcGainUpdated = FALSE; diff --git a/lib_rend/ivas_stat_rend.h b/lib_rend/ivas_stat_rend.h index f24660dd5..9ed6d300e 100644 --- a/lib_rend/ivas_stat_rend.h +++ b/lib_rend/ivas_stat_rend.h @@ -1074,10 +1074,6 @@ typedef struct TDREND_SRC_REND_s /* Gains */ int16_t SrcGainUpdated; float SrcGain_p[SPAT_BIN_MAX_INPUT_CHANNELS]; -#ifndef FIX_BASOP_2469_OBJ_EDIT_TD_REND_GAIN - float SrcGainMin_p[SPAT_BIN_MAX_INPUT_CHANNELS]; - float SrcGainMax_p[SPAT_BIN_MAX_INPUT_CHANNELS]; -#endif float DirGain_p[SPAT_BIN_MAX_INPUT_CHANNELS]; float DistGain_p[SPAT_BIN_MAX_INPUT_CHANNELS]; -- GitLab From 43530d57a901be3cfd9b1adda84da7a0da3c8f0b Mon Sep 17 00:00:00 2001 From: Markus Multrus Date: Mon, 13 Apr 2026 16:29:11 +0200 Subject: [PATCH 2/9] [cleanup] accept FIX_ISSUE_1546_DEAD_CODE --- lib_com/options.h | 1 - lib_enc/swb_bwe_enc.c | 12 ------------ 2 files changed, 13 deletions(-) diff --git a/lib_com/options.h b/lib_com/options.h index b25f9535e..48f6a2ba5 100644 --- a/lib_com/options.h +++ b/lib_com/options.h @@ -161,7 +161,6 @@ /*#define FIX_I4_OL_PITCH*/ /* fix open-loop pitch used for EVS core switching */ #define TMP_1342_WORKAROUND_DEC_FLUSH_BROKEN_IN_SR /* FhG: Temporary workaround for incorrect implementation of decoder flush with split rendering */ #define NONBE_1122_KEEP_EVS_MODE_UNCHANGED /* FhG: Disables fix for issue 1122 in EVS mode to keep BE tests green. This switch should be removed once the 1122 fix is added to EVS via a CR. */ -#define FIX_ISSUE_1546_DEAD_CODE /* FhG: remove dead code reported in the issue*/ #define FIX_FLOAT_1544_SBA_META_IMPRECISION_UNSAFE_MATH /* FhG: float issue 1544: imprecision in ivas_get_dirac_sba_max_md_bits() with -funsafe-math-optimizations */ #define FIX_FLOAT_1544_ITD_IMPRECISION_UNSAFE_MATH /* FhG: float issue 1544: Avoid assert() with -funsafe-math-optimizations in stereo_td_itd() */ #define FIX_FLOAT_1539_G192_FORMAT_SWITCH /* Nokia: reintroduce format switching for g192 bitstreams */ diff --git a/lib_enc/swb_bwe_enc.c b/lib_enc/swb_bwe_enc.c index 4e74fa10b..848334247 100644 --- a/lib_enc/swb_bwe_enc.c +++ b/lib_enc/swb_bwe_enc.c @@ -493,9 +493,6 @@ void swb_bwe_enc( ) { int16_t i, inner_frame, idxGain; -#ifndef FIX_ISSUE_1546_DEAD_CODE - TD_BWE_ENC_HANDLE hBWE_TD; -#endif FD_BWE_ENC_HANDLE hBWE_FD; float *new_input; int32_t inner_Fs; @@ -509,9 +506,6 @@ void swb_bwe_enc( float ener_low, energy_fbe_fb, fb_ener_adjust, ener_adjust_quan; int16_t fb_band_begin; -#ifndef FIX_ISSUE_1546_DEAD_CODE - hBWE_TD = st->hBWE_TD; -#endif hBWE_FD = st->hBWE_FD; ener_adjust_quan = 0.0f; @@ -552,9 +546,6 @@ void swb_bwe_enc( if ( st->element_mode == IVAS_CPE_DFT ) { mvr2r( old_input_12k8 + L_INP_MEM - Sample_Delay_LP, hBWE_FD->old_input_lp, Sample_Delay_LP ); -#ifndef FIX_ISSUE_1546_DEAD_CODE - mvr2r( hBWE_TD->old_speech_shb + L_LOOK_16k + L_SUBFR16k - Sample_Delay_HP, new_input_hp, Sample_Delay_HP ); -#endif } } @@ -580,9 +571,6 @@ void swb_bwe_enc( if ( st->element_mode == IVAS_CPE_DFT ) { mvr2r( old_input_16k + L_INP_MEM - Sample_Delay_LP, hBWE_FD->old_input_lp, Sample_Delay_LP ); -#ifndef FIX_ISSUE_1546_DEAD_CODE - mvr2r( hBWE_TD->old_speech_shb + L_LOOK_16k + L_SUBFR16k - Sample_Delay_HP, new_input_hp, Sample_Delay_HP ); -#endif } } -- GitLab From a466dccb463ae083e302562e4ff0c48b0c617f06 Mon Sep 17 00:00:00 2001 From: Markus Multrus Date: Mon, 13 Apr 2026 16:30:10 +0200 Subject: [PATCH 3/9] [cleanup] accept IX_FLOAT_1544_SBA_META_IMPRECISION_UNSAFE_MATH --- lib_com/ivas_dirac_com.c | 4 ---- lib_com/options.h | 1 - 2 files changed, 5 deletions(-) diff --git a/lib_com/ivas_dirac_com.c b/lib_com/ivas_dirac_com.c index 109437894..4afb38661 100644 --- a/lib_com/ivas_dirac_com.c +++ b/lib_com/ivas_dirac_com.c @@ -385,7 +385,6 @@ void ivas_get_dirac_sba_max_md_bits( *metadata_max_bits = MAX16B; /* no limit */ } -#ifdef FIX_FLOAT_1544_SBA_META_IMPRECISION_UNSAFE_MATH /* original formula was: *metadata_max_bits = (int16_t) min( (float) MAX16B, ceilf( (float) *metadata_max_bits * nbands / 5 ) ); @@ -393,9 +392,6 @@ void ivas_get_dirac_sba_max_md_bits( certain optimizations using -funsafe-math-optimizations */ *metadata_max_bits = (int16_t) min( (float) MAX16B, ceilf( *metadata_max_bits * nbands * 0.2f ) ); -#else - *metadata_max_bits = (int16_t) min( (float) MAX16B, ceilf( (float) *metadata_max_bits * nbands / 5 ) ); -#endif *qmetadata_max_bit_req = QMETADATA_MAXBIT_REQ_SBA >> 1; return; diff --git a/lib_com/options.h b/lib_com/options.h index 48f6a2ba5..9b1654891 100644 --- a/lib_com/options.h +++ b/lib_com/options.h @@ -161,7 +161,6 @@ /*#define FIX_I4_OL_PITCH*/ /* fix open-loop pitch used for EVS core switching */ #define TMP_1342_WORKAROUND_DEC_FLUSH_BROKEN_IN_SR /* FhG: Temporary workaround for incorrect implementation of decoder flush with split rendering */ #define NONBE_1122_KEEP_EVS_MODE_UNCHANGED /* FhG: Disables fix for issue 1122 in EVS mode to keep BE tests green. This switch should be removed once the 1122 fix is added to EVS via a CR. */ -#define FIX_FLOAT_1544_SBA_META_IMPRECISION_UNSAFE_MATH /* FhG: float issue 1544: imprecision in ivas_get_dirac_sba_max_md_bits() with -funsafe-math-optimizations */ #define FIX_FLOAT_1544_ITD_IMPRECISION_UNSAFE_MATH /* FhG: float issue 1544: Avoid assert() with -funsafe-math-optimizations in stereo_td_itd() */ #define FIX_FLOAT_1539_G192_FORMAT_SWITCH /* Nokia: reintroduce format switching for g192 bitstreams */ #define FIX_1527_CMR_BITRATE_IDX /* Fix for incorrect bitrate idx packed in rtp CMR E-byte */ -- GitLab From 89448a7429e088dc54f0fb396beda10202f60bf2 Mon Sep 17 00:00:00 2001 From: Markus Multrus Date: Mon, 13 Apr 2026 16:31:00 +0200 Subject: [PATCH 4/9] [cleanup] accept FIX_FLOAT_1544_ITD_IMPRECISION_UNSAFE_MATH --- lib_com/options.h | 1 - lib_enc/ivas_stereo_dft_td_itd.c | 5 ----- 2 files changed, 6 deletions(-) diff --git a/lib_com/options.h b/lib_com/options.h index 9b1654891..c7232c3c5 100644 --- a/lib_com/options.h +++ b/lib_com/options.h @@ -161,7 +161,6 @@ /*#define FIX_I4_OL_PITCH*/ /* fix open-loop pitch used for EVS core switching */ #define TMP_1342_WORKAROUND_DEC_FLUSH_BROKEN_IN_SR /* FhG: Temporary workaround for incorrect implementation of decoder flush with split rendering */ #define NONBE_1122_KEEP_EVS_MODE_UNCHANGED /* FhG: Disables fix for issue 1122 in EVS mode to keep BE tests green. This switch should be removed once the 1122 fix is added to EVS via a CR. */ -#define FIX_FLOAT_1544_ITD_IMPRECISION_UNSAFE_MATH /* FhG: float issue 1544: Avoid assert() with -funsafe-math-optimizations in stereo_td_itd() */ #define FIX_FLOAT_1539_G192_FORMAT_SWITCH /* Nokia: reintroduce format switching for g192 bitstreams */ #define FIX_1527_CMR_BITRATE_IDX /* Fix for incorrect bitrate idx packed in rtp CMR E-byte */ diff --git a/lib_enc/ivas_stereo_dft_td_itd.c b/lib_enc/ivas_stereo_dft_td_itd.c index 7fc0737bc..ec8aa2c8f 100755 --- a/lib_enc/ivas_stereo_dft_td_itd.c +++ b/lib_enc/ivas_stereo_dft_td_itd.c @@ -291,13 +291,8 @@ void stereo_td_itd( size_ovl = dft_ovl; itd_max = ( STEREO_DFT_ITD_MAX * input_frame ) / L_FRAME32k; -#ifdef FIX_FLOAT_1544_ITD_IMPRECISION_UNSAFE_MATH assert( ( (int16_t) fabsf( hITD->itd[k_offset] ) <= itd_max ) && "ITD value is too high!" ); assert( ( (int16_t) fabsf( hITD->itd[k_offset - 1] ) <= itd_max ) && "ITD value is too high!" ); -#else - assert( ( fabsf( hITD->itd[k_offset] ) <= itd_max ) && "ITD value is too high!" ); - assert( ( fabsf( hITD->itd[k_offset - 1] ) <= itd_max ) && "ITD value is too high!" ); -#endif itd = hITD->td_itd[k_offset]; -- GitLab From a909fd4e8f174db101dddecac87813fac9689a12 Mon Sep 17 00:00:00 2001 From: Markus Multrus Date: Mon, 13 Apr 2026 16:31:58 +0200 Subject: [PATCH 5/9] [cleanup] accept FIX_1543_MID_LSF_BITS --- lib_com/options.h | 1 - lib_enc/acelp_core_enc.c | 2 -- 2 files changed, 3 deletions(-) diff --git a/lib_com/options.h b/lib_com/options.h index c7232c3c5..1388888e8 100644 --- a/lib_com/options.h +++ b/lib_com/options.h @@ -169,7 +169,6 @@ /* #################### Start NON-BE switches ############################ */ /* any switch which is non-be wrt. TS 26.258 V3.0 */ -#define FIX_1543_MID_LSF_BITS /* VA: float issue 1543: Resolve "MSAN: use-of-uninitialized-value in lib_enc/lsf_enc.c:262:5 for EVS encoder" */ #define FIX_1547_ISMDTX_HANDLE /* VA: float issue 1547: fix use of 'hISMDTX' handle */ #define FIX_1540_EXPOSE_PT_IN_RTP_HEADER_API /* Expose Payload Type setting in RTP Header */ #define FIX_1563_FIX_STEREO_SW /* VA: float issue 1563: fix clicks in stereo switching */ diff --git a/lib_enc/acelp_core_enc.c b/lib_enc/acelp_core_enc.c index f4442dc7c..8b7859a6a 100644 --- a/lib_enc/acelp_core_enc.c +++ b/lib_enc/acelp_core_enc.c @@ -371,9 +371,7 @@ ivas_error acelp_core_enc( nb_bits = 0; st->acelp_cfg.FEC_mode = 0; uc_two_stage_flag = 0; -#ifdef FIX_1543_MID_LSF_BITS st->acelp_cfg.mid_lsf_bits = -1; -#endif if ( !nelp_mode && !ppp_mode ) { -- GitLab From 060d846d87b1a09d144c2205d26008295a72ae53 Mon Sep 17 00:00:00 2001 From: Markus Multrus Date: Mon, 13 Apr 2026 16:34:26 +0200 Subject: [PATCH 6/9] [cleanup] accept FIX_1547_ISMDTX_HANDLE --- lib_com/ivas_prot.h | 4 ---- lib_com/options.h | 1 - lib_dec/ivas_dec.c | 8 -------- lib_dec/ivas_ism_metadata_dec.c | 12 ------------ lib_dec/ivas_ism_param_dec.c | 20 -------------------- lib_dec/ivas_omasa_dec.c | 5 ----- lib_dec/ivas_osba_dec.c | 5 ----- 7 files changed, 55 deletions(-) diff --git a/lib_com/ivas_prot.h b/lib_com/ivas_prot.h index 7095a48cb..07acf20d8 100755 --- a/lib_com/ivas_prot.h +++ b/lib_com/ivas_prot.h @@ -1049,11 +1049,7 @@ ivas_error ivas_ism_metadata_dec( const int16_t bfi, /* i : bfi flag */ int16_t nb_bits_metadata[], /* o : number of metadata bits */ ISM_MODE ism_mode, /* i : ISM mode */ -#ifdef FIX_1547_ISMDTX_HANDLE ISM_DTX_DATA_DEC *hISMDTX, /* i/o: ISM DTX handle */ -#else - ISM_DTX_DATA_DEC hISMDTX, /* i/o: ISM DTX structure */ -#endif const PARAM_ISM_CONFIG_HANDLE hParamIsm, /* i : Param ISM Config Handle */ int16_t *ism_extended_metadata_flag, /* i/o: Extended metadata active in renderer */ int16_t *ism_extmeta_cnt, /* i/o: Number of change frames observed */ diff --git a/lib_com/options.h b/lib_com/options.h index 1388888e8..6e85ba09c 100644 --- a/lib_com/options.h +++ b/lib_com/options.h @@ -169,7 +169,6 @@ /* #################### Start NON-BE switches ############################ */ /* any switch which is non-be wrt. TS 26.258 V3.0 */ -#define FIX_1547_ISMDTX_HANDLE /* VA: float issue 1547: fix use of 'hISMDTX' handle */ #define FIX_1540_EXPOSE_PT_IN_RTP_HEADER_API /* Expose Payload Type setting in RTP Header */ #define FIX_1563_FIX_STEREO_SW /* VA: float issue 1563: fix clicks in stereo switching */ #define FIX_1562_DTX_CRASH_DECODER /* VA: float issue 1562: fix crash in stereo decoding in DTX and bitrate switching */ diff --git a/lib_dec/ivas_dec.c b/lib_dec/ivas_dec.c index 0735c9929..4aa3dabc0 100644 --- a/lib_dec/ivas_dec.c +++ b/lib_dec/ivas_dec.c @@ -126,11 +126,7 @@ ivas_error ivas_dec( } else if ( st_ivas->ism_mode == ISM_MODE_PARAM ) { -#ifdef FIX_1547_ISMDTX_HANDLE if ( ( error = ivas_ism_metadata_dec( ivas_total_brate, st_ivas->nchan_ism, &( st_ivas->nchan_transport ), st_ivas->hIsmMetaData, st_ivas->hSCE, st_ivas->bfi, nb_bits_metadata, st_ivas->ism_mode, &( st_ivas->hISMDTX ), st_ivas->hParamIsmDec->hParamIsm, &st_ivas->ism_extmeta_active, &st_ivas->ism_extmeta_cnt, st_ivas->hSCE[0]->hCoreCoder[0] ) ) != IVAS_ERR_OK ) -#else - if ( ( error = ivas_ism_metadata_dec( ivas_total_brate, st_ivas->nchan_ism, &( st_ivas->nchan_transport ), st_ivas->hIsmMetaData, st_ivas->hSCE, st_ivas->bfi, nb_bits_metadata, st_ivas->ism_mode, st_ivas->hISMDTX, st_ivas->hParamIsmDec->hParamIsm, &st_ivas->ism_extmeta_active, &st_ivas->ism_extmeta_cnt, st_ivas->hSCE[0]->hCoreCoder[0] ) ) != IVAS_ERR_OK ) -#endif { return error; } @@ -139,11 +135,7 @@ ivas_error ivas_dec( } else /* ISM_MODE_DISC */ { -#ifdef FIX_1547_ISMDTX_HANDLE if ( ( error = ivas_ism_metadata_dec( ivas_total_brate, st_ivas->nchan_ism, &( st_ivas->nchan_transport ), st_ivas->hIsmMetaData, st_ivas->hSCE, st_ivas->bfi, nb_bits_metadata, st_ivas->ism_mode, &( st_ivas->hISMDTX ), NULL, &st_ivas->ism_extmeta_active, &st_ivas->ism_extmeta_cnt, st_ivas->hSCE[0]->hCoreCoder[0] ) ) != IVAS_ERR_OK ) -#else - if ( ( error = ivas_ism_metadata_dec( ivas_total_brate, st_ivas->nchan_ism, &( st_ivas->nchan_transport ), st_ivas->hIsmMetaData, st_ivas->hSCE, st_ivas->bfi, nb_bits_metadata, st_ivas->ism_mode, st_ivas->hISMDTX, NULL, &st_ivas->ism_extmeta_active, &st_ivas->ism_extmeta_cnt, st_ivas->hSCE[0]->hCoreCoder[0] ) ) != IVAS_ERR_OK ) -#endif { return error; } diff --git a/lib_dec/ivas_ism_metadata_dec.c b/lib_dec/ivas_ism_metadata_dec.c index d3f0c6c7d..4873c85ed 100644 --- a/lib_dec/ivas_ism_metadata_dec.c +++ b/lib_dec/ivas_ism_metadata_dec.c @@ -148,11 +148,7 @@ ivas_error ivas_ism_metadata_dec( const int16_t bfi, /* i : bfi flag */ int16_t nb_bits_metadata[], /* o : number of metadata bits */ ISM_MODE ism_mode, /* i : ISM mode */ -#ifdef FIX_1547_ISMDTX_HANDLE ISM_DTX_DATA_DEC *hISMDTX, /* i/o: ISM DTX handle */ -#else - ISM_DTX_DATA_DEC hISMDTX, /* i/o: ISM DTX structure */ -#endif const PARAM_ISM_CONFIG_HANDLE hParamIsm, /* i : Param ISM Config Handle */ int16_t *ism_extmeta_active, /* i/o: Extended metadata active in renderer */ int16_t *ism_extmeta_cnt, /* i/o: Number of change frames observed */ @@ -533,19 +529,11 @@ ivas_error ivas_ism_metadata_dec( } } -#ifdef FIX_1547_ISMDTX_HANDLE if ( hISMDTX->ism_dtx_hangover_cnt < IVAS_ISM_DTX_HO_MAX ) { ism_metadata_smooth( hIsmMeta, ism_total_brate, nchan_ism ); hISMDTX->ism_dtx_hangover_cnt += 1; } -#else - if ( hISMDTX.ism_dtx_hangover_cnt < IVAS_ISM_DTX_HO_MAX ) - { - ism_metadata_smooth( hIsmMeta, ism_total_brate, nchan_ism ); - hISMDTX.ism_dtx_hangover_cnt += 1; - } -#endif if ( ism_mode == ISM_SBA_MODE_DISC ) { diff --git a/lib_dec/ivas_ism_param_dec.c b/lib_dec/ivas_ism_param_dec.c index 95efa3876..3523ed9bb 100644 --- a/lib_dec/ivas_ism_param_dec.c +++ b/lib_dec/ivas_ism_param_dec.c @@ -199,11 +199,7 @@ static void ivas_param_ism_collect_slot( static void ivas_param_ism_compute_mixing_matrix( const int16_t nchan_ism, /* i : number of ISM channels */ PARAM_ISM_DEC_HANDLE hParamIsmDec, /* i/o: decoder ParamISM handle */ -#ifdef FIX_1547_ISMDTX_HANDLE const ISM_DTX_DATA_DEC *hISMDTX, /* i : ISM DTX handle */ -#else - ISM_DTX_DATA_DEC hISMDTX, /* i : ISM DTX handle */ -#endif float direct_response[MAX_NUM_OBJECTS][PARAM_ISM_MAX_CHAN], const int16_t nchan_transport, const int16_t nchan_out_woLFE, @@ -227,11 +223,7 @@ static void ivas_param_ism_compute_mixing_matrix( assert( ( nchan_ism == 3 ) || ( nchan_ism == 4 ) ); assert( nchan_transport == 2 ); -#ifdef FIX_1547_ISMDTX_HANDLE if ( hParamIsmDec->hParamIsm->flag_noisy_speech || hISMDTX->dtx_flag ) -#else - if ( hParamIsmDec->hParamIsm->flag_noisy_speech || hISMDTX.dtx_flag ) -#endif { num_wave = nchan_ism; } @@ -252,11 +244,7 @@ static void ivas_param_ism_compute_mixing_matrix( { set_zero( cy_diag_tmp[w], nchan_out_woLFE ); -#ifdef FIX_1547_ISMDTX_HANDLE if ( hParamIsmDec->hParamIsm->flag_noisy_speech || hISMDTX->dtx_flag ) -#else - if ( hParamIsmDec->hParamIsm->flag_noisy_speech || hISMDTX.dtx_flag ) -#endif { dir_res_ptr = direct_response[w]; } @@ -276,11 +264,7 @@ static void ivas_param_ism_compute_mixing_matrix( set_zero( cy_diag, nchan_out_woLFE ); for ( w = 0; w < num_wave; w++ ) { -#ifdef FIX_1547_ISMDTX_HANDLE if ( hParamIsmDec->hParamIsm->flag_noisy_speech || hISMDTX->dtx_flag ) -#else - if ( hParamIsmDec->hParamIsm->flag_noisy_speech || hISMDTX.dtx_flag ) -#endif { direct_power[w] = ( 1.0f / nchan_ism ) * ref_power[bin_idx]; } @@ -1006,11 +990,7 @@ void ivas_param_ism_dec_prepare_renderer( } /* Compute mixing matrix */ -#ifdef FIX_1547_ISMDTX_HANDLE ivas_param_ism_compute_mixing_matrix( st_ivas->nchan_ism, hParamIsmDec, &( st_ivas->hISMDTX ), direct_response, nchan_transport, nchan_out_woLFE, cx_diag, ref_power, hParamIsmDec->hParamIsmRendering->mixing_matrix_lin ); -#else - ivas_param_ism_compute_mixing_matrix( st_ivas->nchan_ism, hParamIsmDec, st_ivas->hISMDTX, direct_response, nchan_transport, nchan_out_woLFE, cx_diag, ref_power, hParamIsmDec->hParamIsmRendering->mixing_matrix_lin ); -#endif return; } diff --git a/lib_dec/ivas_omasa_dec.c b/lib_dec/ivas_omasa_dec.c index 55e9addd5..64ba7ae0e 100644 --- a/lib_dec/ivas_omasa_dec.c +++ b/lib_dec/ivas_omasa_dec.c @@ -597,13 +597,8 @@ ivas_error ivas_omasa_ism_metadata_dec( if ( st_ivas->ism_mode == ISM_MASA_MODE_DISC || st_ivas->ism_mode == ISM_MASA_MODE_MASA_ONE_OBJ ) { /* decode ISM metadata */ -#ifdef FIX_1547_ISMDTX_HANDLE if ( ( error = ivas_ism_metadata_dec( ism_total_brate, *nchan_ism, nchan_transport_ism, st_ivas->hIsmMetaData, st_ivas->hSCE, st_ivas->bfi, nb_bits_metadata, st_ivas->ism_mode, &( st_ivas->hISMDTX ), NULL, &st_ivas->ism_extmeta_active, &st_ivas->ism_extmeta_cnt, st_ivas->hSCE[0]->hCoreCoder[0] ) ) != IVAS_ERR_OK ) -#else - if ( ( error = ivas_ism_metadata_dec( ism_total_brate, *nchan_ism, nchan_transport_ism, st_ivas->hIsmMetaData, st_ivas->hSCE, st_ivas->bfi, - nb_bits_metadata, st_ivas->ism_mode, st_ivas->hISMDTX, NULL, &st_ivas->ism_extmeta_active, &st_ivas->ism_extmeta_cnt, st_ivas->hSCE[0]->hCoreCoder[0] ) ) != IVAS_ERR_OK ) -#endif { return error; } diff --git a/lib_dec/ivas_osba_dec.c b/lib_dec/ivas_osba_dec.c index 7ab3c7d84..51d65a093 100644 --- a/lib_dec/ivas_osba_dec.c +++ b/lib_dec/ivas_osba_dec.c @@ -228,13 +228,8 @@ ivas_error ivas_osba_ism_metadata_dec( *nchan_ism = st_ivas->nchan_ism; /* decode ISM metadata */ -#ifdef FIX_1547_ISMDTX_HANDLE if ( ( error = ivas_ism_metadata_dec( ism_total_brate, *nchan_ism, &nchan_transport_ism, st_ivas->hIsmMetaData, NULL, st_ivas->bfi, nb_bits_metadata, st_ivas->ism_mode, &( st_ivas->hISMDTX ), NULL, &st_ivas->ism_extmeta_active, &st_ivas->ism_extmeta_cnt, st_ivas->hCPE[0]->hCoreCoder[0] ) ) != IVAS_ERR_OK ) -#else - if ( ( error = ivas_ism_metadata_dec( ism_total_brate, *nchan_ism, &nchan_transport_ism, st_ivas->hIsmMetaData, NULL, st_ivas->bfi, - nb_bits_metadata, st_ivas->ism_mode, st_ivas->hISMDTX, NULL, &st_ivas->ism_extmeta_active, &st_ivas->ism_extmeta_cnt, st_ivas->hCPE[0]->hCoreCoder[0] ) ) != IVAS_ERR_OK ) -#endif { return error; } -- GitLab From b6c03c90412f3dcec5ad4111b744dfbe976c65d3 Mon Sep 17 00:00:00 2001 From: Markus Multrus Date: Mon, 13 Apr 2026 16:35:18 +0200 Subject: [PATCH 7/9] [cleanup] accept FIX_1563_FIX_STEREO_SW --- lib_com/options.h | 1 - lib_dec/ivas_stereo_switching_dec.c | 2 -- lib_enc/ivas_stereo_switching_enc.c | 2 -- 3 files changed, 5 deletions(-) diff --git a/lib_com/options.h b/lib_com/options.h index 6e85ba09c..9d4f9684c 100644 --- a/lib_com/options.h +++ b/lib_com/options.h @@ -170,7 +170,6 @@ /* any switch which is non-be wrt. TS 26.258 V3.0 */ #define FIX_1540_EXPOSE_PT_IN_RTP_HEADER_API /* Expose Payload Type setting in RTP Header */ -#define FIX_1563_FIX_STEREO_SW /* VA: float issue 1563: fix clicks in stereo switching */ #define FIX_1562_DTX_CRASH_DECODER /* VA: float issue 1562: fix crash in stereo decoding in DTX and bitrate switching */ /* ##################### End NON-BE switches ########################### */ diff --git a/lib_dec/ivas_stereo_switching_dec.c b/lib_dec/ivas_stereo_switching_dec.c index a06345d0e..545c02960 100644 --- a/lib_dec/ivas_stereo_switching_dec.c +++ b/lib_dec/ivas_stereo_switching_dec.c @@ -1563,12 +1563,10 @@ void stereo_switching_dec( mvr2r( sts[0]->delay_buf_out, sts[1]->delay_buf_out, HQ_DELTA_MAX * HQ_DELAY_COMP ); mvr2r( sts[0]->hTcxDec->old_syn_Overl, sts[1]->hTcxDec->old_syn_Overl, 256 ); } -#ifdef FIX_1563_FIX_STEREO_SW else if ( hCPE->element_mode == IVAS_CPE_TD ) { sts[1]->last_core = ACELP_CORE; } -#endif } else if ( hCPE->element_mode == IVAS_CPE_TD && hCPE->last_element_mode == IVAS_CPE_MDCT ) { diff --git a/lib_enc/ivas_stereo_switching_enc.c b/lib_enc/ivas_stereo_switching_enc.c index 318cd9375..1040ca20c 100644 --- a/lib_enc/ivas_stereo_switching_enc.c +++ b/lib_enc/ivas_stereo_switching_enc.c @@ -821,12 +821,10 @@ void stereo_switching_enc( sts[1]->last_coder_type = sts[0]->last_coder_type; sts[1]->last_bwidth = sts[0]->last_bwidth; } -#ifdef FIX_1563_FIX_STEREO_SW else if ( hCPE->element_mode == IVAS_CPE_TD ) { sts[1]->last_core = ACELP_CORE; } -#endif } else if ( hCPE->element_mode == IVAS_CPE_TD && hCPE->last_element_mode == IVAS_CPE_MDCT ) { -- GitLab From d611aaf753a7dd05087382d6b22ca75006bf988c Mon Sep 17 00:00:00 2001 From: Markus Multrus Date: Mon, 13 Apr 2026 16:36:03 +0200 Subject: [PATCH 8/9] [cleanup] accept FIX_1562_DTX_CRASH_DECODER --- lib_com/options.h | 1 - lib_dec/acelp_core_dec.c | 4 ---- 2 files changed, 5 deletions(-) diff --git a/lib_com/options.h b/lib_com/options.h index 9d4f9684c..370a23aae 100644 --- a/lib_com/options.h +++ b/lib_com/options.h @@ -170,7 +170,6 @@ /* any switch which is non-be wrt. TS 26.258 V3.0 */ #define FIX_1540_EXPOSE_PT_IN_RTP_HEADER_API /* Expose Payload Type setting in RTP Header */ -#define FIX_1562_DTX_CRASH_DECODER /* VA: float issue 1562: fix crash in stereo decoding in DTX and bitrate switching */ /* ##################### End NON-BE switches ########################### */ diff --git a/lib_dec/acelp_core_dec.c b/lib_dec/acelp_core_dec.c index deb34161e..32b3d72e6 100644 --- a/lib_dec/acelp_core_dec.c +++ b/lib_dec/acelp_core_dec.c @@ -315,11 +315,7 @@ ivas_error acelp_core_dec( { int16_t dec; -#ifdef FIX_1562_DTX_CRASH_DECODER if ( st->hPFstat != NULL && st->hPFstat->on != 0 ) -#else - if ( st->hPFstat->on != 0 ) -#endif { int16_t mem_syn_r_size_old, mem_syn_r_size_new; -- GitLab From ddc635ebe3e8a14de39280de18f41a723f0b1620 Mon Sep 17 00:00:00 2001 From: Markus Multrus Date: Mon, 13 Apr 2026 16:37:43 +0200 Subject: [PATCH 9/9] formatting --- lib_dec/ivas_ism_metadata_dec.c | 18 +++++++++--------- lib_dec/ivas_ism_param_dec.c | 2 +- 2 files changed, 10 insertions(+), 10 deletions(-) diff --git a/lib_dec/ivas_ism_metadata_dec.c b/lib_dec/ivas_ism_metadata_dec.c index 4873c85ed..55a3eb351 100644 --- a/lib_dec/ivas_ism_metadata_dec.c +++ b/lib_dec/ivas_ism_metadata_dec.c @@ -140,15 +140,15 @@ static void ism_metadata_smooth( *-------------------------------------------------------------------------*/ ivas_error ivas_ism_metadata_dec( - const int32_t ism_total_brate, /* i : ISM total bitrate */ - const int16_t nchan_ism, /* i : number of ISM channels */ - int16_t *nchan_transport, /* o : number of transport channels */ - ISM_METADATA_HANDLE hIsmMeta[], /* i/o: ISM metadata handles */ - SCE_DEC_HANDLE hSCE[], /* i/o: SCE decoder handles */ - const int16_t bfi, /* i : bfi flag */ - int16_t nb_bits_metadata[], /* o : number of metadata bits */ - ISM_MODE ism_mode, /* i : ISM mode */ - ISM_DTX_DATA_DEC *hISMDTX, /* i/o: ISM DTX handle */ + const int32_t ism_total_brate, /* i : ISM total bitrate */ + const int16_t nchan_ism, /* i : number of ISM channels */ + int16_t *nchan_transport, /* o : number of transport channels */ + ISM_METADATA_HANDLE hIsmMeta[], /* i/o: ISM metadata handles */ + SCE_DEC_HANDLE hSCE[], /* i/o: SCE decoder handles */ + const int16_t bfi, /* i : bfi flag */ + int16_t nb_bits_metadata[], /* o : number of metadata bits */ + ISM_MODE ism_mode, /* i : ISM mode */ + ISM_DTX_DATA_DEC *hISMDTX, /* i/o: ISM DTX handle */ const PARAM_ISM_CONFIG_HANDLE hParamIsm, /* i : Param ISM Config Handle */ int16_t *ism_extmeta_active, /* i/o: Extended metadata active in renderer */ int16_t *ism_extmeta_cnt, /* i/o: Number of change frames observed */ diff --git a/lib_dec/ivas_ism_param_dec.c b/lib_dec/ivas_ism_param_dec.c index 3523ed9bb..475e7ad7f 100644 --- a/lib_dec/ivas_ism_param_dec.c +++ b/lib_dec/ivas_ism_param_dec.c @@ -199,7 +199,7 @@ static void ivas_param_ism_collect_slot( static void ivas_param_ism_compute_mixing_matrix( const int16_t nchan_ism, /* i : number of ISM channels */ PARAM_ISM_DEC_HANDLE hParamIsmDec, /* i/o: decoder ParamISM handle */ - const ISM_DTX_DATA_DEC *hISMDTX, /* i : ISM DTX handle */ + const ISM_DTX_DATA_DEC *hISMDTX, /* i : ISM DTX handle */ float direct_response[MAX_NUM_OBJECTS][PARAM_ISM_MAX_CHAN], const int16_t nchan_transport, const int16_t nchan_out_woLFE, -- GitLab