From 4b27dbecd8178b480c850fbc88d82737f3aa5175 Mon Sep 17 00:00:00 2001 From: vaclav Date: Fri, 16 Jan 2026 11:37:52 +0100 Subject: [PATCH 1/2] FIX_2344_ALIGN_PREPROC --- lib_com/ivas_prot.h | 12 ++++++ lib_com/options.h | 1 + lib_enc/ivas_core_enc.c | 4 ++ lib_enc/ivas_core_pre_proc.c | 64 +++++++++++++++++++++++++----- lib_enc/ivas_core_pre_proc_front.c | 17 +++++++- lib_enc/ivas_cpe_enc.c | 13 ++++-- lib_enc/ivas_ism_enc.c | 13 ++++-- lib_enc/ivas_sce_enc.c | 15 ++++--- 8 files changed, 116 insertions(+), 23 deletions(-) diff --git a/lib_com/ivas_prot.h b/lib_com/ivas_prot.h index f42a7b8f7a..ee753771c8 100644 --- a/lib_com/ivas_prot.h +++ b/lib_com/ivas_prot.h @@ -160,7 +160,11 @@ ivas_error ivas_mct_enc( const int16_t nb_bits_metadata /* i : number of metadata bits */ ); +#ifdef FIX_2344_ALIGN_PREPROC +void pre_proc_front_ivas( +#else ivas_error pre_proc_front_ivas( +#endif SCE_ENC_HANDLE hSCE, /* i/o: SCE encoder structure */ CPE_ENC_HANDLE hCPE, /* i/o: CPE encoder structure */ const int32_t element_brate, /* i : SCE/CPE element bitrate */ @@ -207,7 +211,11 @@ ivas_error pre_proc_front_ivas( const int32_t ivas_total_brate /* i : IVAS total bitrate */ ); +#ifdef FIX_2344_ALIGN_PREPROC +void pre_proc_ivas( +#else ivas_error pre_proc_ivas( +#endif Encoder_State *st, /* i/o: encoder state structure */ const int16_t last_element_mode, /* i : last element mode */ const int32_t element_brate, /* i : element bitrate */ @@ -235,7 +243,11 @@ ivas_error pre_proc_ivas( const int16_t flag_16k_smc /* i : flag to indicate if the OL SMC is run at 16 kHz */ ); +#ifdef FIX_2344_ALIGN_PREPROC +void ivas_compute_core_buffers( +#else ivas_error ivas_compute_core_buffers( +#endif Encoder_State *st, /* i/o: encoder state structure */ float **inp16k_out, /* o : ptr. to inp. signal in the current frame*/ float *old_inp_16k, /* i/o: buffer of old input signal @ 16kHz */ diff --git a/lib_com/options.h b/lib_com/options.h index 3c65fe2f4b..91abf92135 100644 --- a/lib_com/options.h +++ b/lib_com/options.h @@ -181,6 +181,7 @@ #define FIX_1478_UNINIT_ON_BFI /* VA: Fix issue 1478 where a vector is partly un-initialized during bfi */ #define FIX_1827_REMOVE_UNUSED_PSNOISEGEN_ISAR /* Dolby: remove unused noise generator from ISAR */ #define FIX_1487_ACCESS_OF_UNINIT_VAL_FROM_ARR_ISM_DTX /* FhG/VA: init nb_bits_metadata to zero */ +#define FIX_2344_ALIGN_PREPROC /* VA: basop issue 2344: Align pre_proc_ivas() between FLP and BASOP */ /* #################### End BE switches ################################## */ diff --git a/lib_enc/ivas_core_enc.c b/lib_enc/ivas_core_enc.c index 35ac987a06..7e56a37dad 100644 --- a/lib_enc/ivas_core_enc.c +++ b/lib_enc/ivas_core_enc.c @@ -174,10 +174,14 @@ ivas_error ivas_core_enc( * Pre-processing, incl. Decision matrix *---------------------------------------------------------------------*/ +#ifdef FIX_2344_ALIGN_PREPROC + pre_proc_ivas( st, last_element_mode, element_brate, ivas_format == SBA_FORMAT ? last_element_brate : element_brate, input_frame, old_inp_12k8[n], old_inp_16k[n], &inp[n], &ener[n], A[n], Aw[n], epsP[n], lsp_new[n], lsp_mid[n], new_inp_resamp16k[n], &Voicing_flag[n], old_wsp[n], loc_harm[n], cor_map_sum[n], vad_flag_dtx[n], enerBuffer[n], fft_buff[n], MCT_flag, vad_hover_flag[n], flag_16k_smc ); +#else if ( ( error = pre_proc_ivas( st, last_element_mode, element_brate, ivas_format == SBA_FORMAT ? last_element_brate : element_brate, input_frame, old_inp_12k8[n], old_inp_16k[n], &inp[n], &ener[n], A[n], Aw[n], epsP[n], lsp_new[n], lsp_mid[n], new_inp_resamp16k[n], &Voicing_flag[n], old_wsp[n], loc_harm[n], cor_map_sum[n], vad_flag_dtx[n], enerBuffer[n], fft_buff[n], MCT_flag, vad_hover_flag[n], flag_16k_smc ) ) != IVAS_ERR_OK ) { return error; } +#endif if ( st->element_mode == IVAS_CPE_MDCT || st->element_mode == IVAS_SCE ) { diff --git a/lib_enc/ivas_core_pre_proc.c b/lib_enc/ivas_core_pre_proc.c index 969e02235a..f55d3b3d5d 100644 --- a/lib_enc/ivas_core_pre_proc.c +++ b/lib_enc/ivas_core_pre_proc.c @@ -51,7 +51,11 @@ * Decision matrix, Preprocessing at other Fs, core switching decision, ...) *--------------------------------------------------------------------*/ +#ifdef FIX_2344_ALIGN_PREPROC +void pre_proc_ivas( +#else ivas_error pre_proc_ivas( +#endif Encoder_State *st, /* i/o: encoder state structure */ const int16_t last_element_mode, /* i : last element mode */ const int32_t element_brate, /* i : element bitrate */ @@ -83,12 +87,15 @@ ivas_error pre_proc_ivas( float *inp_12k8, *new_inp_12k8, *inp_16k; /* pointers to current frame and new data */ const float *wsp; /* weighted input signal buffer */ int32_t sr_core_tmp, total_brate_tmp; +#ifndef FIX_2344_ALIGN_PREPROC ivas_error error; +#endif push_wmops( "pre_proc" ); +#ifndef FIX_2344_ALIGN_PREPROC error = IVAS_ERR_OK; - +#endif /*----------------------------------------------------------------* * Initialization *----------------------------------------------------------------*/ @@ -213,7 +220,6 @@ ivas_error pre_proc_ivas( st->coder_type = INACTIVE; } - /*---------------------------------------------------------------------* * Decision matrix (selection of technologies) *---------------------------------------------------------------------*/ @@ -294,7 +300,6 @@ ivas_error pre_proc_ivas( } } - /*-----------------------------------------------------------------* * Update of ACELP harmonicity counter (used in ACELP transform codebook @32kbps) *-----------------------------------------------------------------*/ @@ -354,12 +359,13 @@ ivas_error pre_proc_ivas( } } +#ifndef FIX_2344_ALIGN_PREPROC /* channel-aware mode - due to lack of signaling bit, sharpFlag is 1 always in RF mode */ if ( st->rf_mode && ( st->coder_type == VOICED || st->coder_type == GENERIC ) ) { st->sharpFlag = 1; } - +#endif /* TD stereo, secondary channel - due to lack of signaling bits, sharpFlag is always 1 */ if ( element_mode == IVAS_CPE_TD && st->idchan == 1 ) { @@ -395,11 +401,15 @@ ivas_error pre_proc_ivas( if ( !flag_16k_smc ) { +#ifdef FIX_2344_ALIGN_PREPROC + ivas_compute_core_buffers( st, &inp_16k, old_inp_16k, new_inp_resamp16k, input_frame, last_element_mode, sr_core_tmp, ener, A, Aw, epsP, lsp_new, lsp_mid ); +#else error = ivas_compute_core_buffers( st, &inp_16k, old_inp_16k, new_inp_resamp16k, input_frame, last_element_mode, sr_core_tmp, ener, A, Aw, epsP, lsp_new, lsp_mid ); if ( error != IVAS_ERR_OK ) { return error; } +#endif } if ( !( st->L_frame == L_FRAME16k && element_mode != IVAS_CPE_MDCT ) ) @@ -439,7 +449,6 @@ ivas_error pre_proc_ivas( /* update old weighted speech buffer - for OL pitch analysis */ mvr2r( &old_wsp[L_FRAME], st->old_wsp, L_WSP_MEM ); - /* set the pointer of the current frame for the ACELP core */ if ( st->L_frame == L_FRAME ) { @@ -473,7 +482,11 @@ ivas_error pre_proc_ivas( #endif pop_wmops(); +#ifdef FIX_2344_ALIGN_PREPROC + return; +#else return error; +#endif } @@ -483,7 +496,11 @@ ivas_error pre_proc_ivas( * Compute core-coder buffers at internal sampling rate *--------------------------------------------------------------------*/ +#ifdef FIX_2344_ALIGN_PREPROC +void ivas_compute_core_buffers( +#else ivas_error ivas_compute_core_buffers( +#endif Encoder_State *st, /* i/o: encoder state structure */ float **inp16k_out, /* o : ptr. to inp. signal in the current frame */ float *old_inp_16k, /* i/o: buffer of old input signal @ 16kHz */ @@ -596,12 +613,20 @@ ivas_error ivas_compute_core_buffers( modify_Fs( signal_in - lMemRecalc - length_inp, length_inp, input_Fs, new_inp_16k - lMemRecalc_16k - length_16k, sr_core, st->mem_decim16k, 0 ); } +#ifdef FIX_2344_ALIGN_PREPROC + modify_Fs( signal_in - lMemRecalc, input_frame, input_Fs, new_inp_16k - lMemRecalc_16k, sr_core, st->mem_decim16k, 0 ); +#else modify_Fs( signal_in - lMemRecalc, input_frame, input_Fs, new_inp_16k - ( lMemRecalc * sr_core ) / st->input_Fs, sr_core, st->mem_decim16k, 0 ); +#endif mvr2r( st->mem_decim16k, mem_decim16k_dummy, 2 * L_FILT_MAX ); if ( lMemRecalc > 0 ) { +#ifdef FIX_2344_ALIGN_PREPROC + modify_Fs( signal_in - lMemRecalc + input_frame, lMemRecalc, input_Fs, new_inp_16k + NS2SA( sr_core, FRAME_SIZE_NS ) - lMemRecalc_16k, sr_core, mem_decim16k_dummy, 0 ); +#else modify_Fs( signal_in - lMemRecalc + input_frame, lMemRecalc, input_Fs, new_inp_16k + NS2SA( sr_core, FRAME_SIZE_NS ) - ( lMemRecalc * sr_core ) / st->input_Fs, sr_core, mem_decim16k_dummy, 0 ); +#endif } set_f( temp1F_icatdmResampBuf, 0, L_FILT_MAX ); @@ -672,14 +697,16 @@ ivas_error ivas_compute_core_buffers( * Perform fixed preemphasis (16kHz signal) through 1 - g*z^-1 *-----------------------------------------------------------------*/ - if ( - st->tcxonly == 0 && - !( ( element_mode == IVAS_CPE_TD && st->idchan == 1 ) || element_mode == IVAS_CPE_MDCT ) ) + if ( st->tcxonly == 0 && !( ( element_mode == IVAS_CPE_TD && st->idchan == 1 ) || element_mode == IVAS_CPE_MDCT ) ) { st->mem_preemph_enc = new_inp_16k[L_frame_tmp - 1]; } +#ifdef FIX_2344_ALIGN_PREPROC + if ( sr_core == INT_FS_16k && element_mode != IVAS_CPE_MDCT ) +#else if ( input_Fs > 8000 && sr_core == INT_FS_16k && element_mode != IVAS_CPE_MDCT ) +#endif { if ( element_mode == IVAS_CPE_DFT ) { @@ -729,8 +756,13 @@ ivas_error ivas_compute_core_buffers( preemph( new_inp_16k + L_FRAME16k, PREEMPH_FAC_16k, L_FILT16k, &tmp ); } } +#ifdef FIX_2344_ALIGN_PREPROC + else /* keep memory up-to-date in case of bitrate switching */ +#else else if ( input_Fs > 8000 ) /* keep memory up-to-date in case of bitrate switching */ +#endif { +#ifndef FIX_2344_ALIGN_PREPROC if ( element_mode == IVAS_CPE_DFT ) { st->mem_preemph16k = new_inp_16k[L_frame_tmp - STEREO_DFT_OVL_16k - 1]; @@ -739,7 +771,9 @@ ivas_error ivas_compute_core_buffers( { st->mem_preemph16k = new_inp_16k[L_frame_tmp - lMemRecalc_16k - 1]; } - else if ( element_mode == IVAS_CPE_MDCT ) + else +#endif + if ( element_mode == IVAS_CPE_MDCT ) { st->mem_preemph16k = 0; } @@ -800,11 +834,19 @@ ivas_error ivas_compute_core_buffers( { set_f( st->old_inp_16k, 0, L_INP_MEM ); } +#ifdef FIX_2344_ALIGN_PREPROC + else if ( sr_core == INT_FS_16k ) +#else else if ( input_Fs > 8000 && sr_core == INT_FS_16k ) +#endif { mvr2r( &old_inp_16k[L_frame_tmp], st->old_inp_16k, L_INP_MEM ); } +#ifdef FIX_2344_ALIGN_PREPROC + else +#else else if ( input_Fs > 8000 ) +#endif { lerp( st->old_inp_12k8 + L_INP_MEM - L_INP_MEM * 4 / 5, st->old_inp_16k, L_INP_MEM, L_INP_MEM * 4 / 5 ); } @@ -819,5 +861,9 @@ ivas_error ivas_compute_core_buffers( mvr2r( new_inp_resamp16k, new_inp_resamp16k_out, L_FRAME16k ); } +#ifdef FIX_2344_ALIGN_PREPROC + return; +#else return IVAS_ERR_OK; +#endif } diff --git a/lib_enc/ivas_core_pre_proc_front.c b/lib_enc/ivas_core_pre_proc_front.c index 597275de1e..5ce3c9c40a 100644 --- a/lib_enc/ivas_core_pre_proc_front.c +++ b/lib_enc/ivas_core_pre_proc_front.c @@ -67,7 +67,11 @@ static void calculate_energy_buffer( CPE_ENC_HANDLE hCPE, float enerBuffer_dft[] * (resampling, spectral analysis, LP analysis, VAD, OL pitch calculation, classification) *--------------------------------------------------------------------*/ +#ifdef FIX_2344_ALIGN_PREPROC +void pre_proc_front_ivas( +#else ivas_error pre_proc_front_ivas( +#endif SCE_ENC_HANDLE hSCE, /* i/o: SCE encoder structure */ CPE_ENC_HANDLE hCPE, /* i/o: CPE encoder structure */ const int32_t element_brate, /* i : SCE/CPE element bitrate */ @@ -164,7 +168,9 @@ ivas_error pre_proc_front_ivas( float temp1F_icatdmResampBuf[L_FILT_MAX]; /* temp buffers for ICA TDM resamplers */ int16_t old_pitch1; /* previous frame OL pitch[1] @12.8 kHz */ int16_t LR_localVAD; +#ifndef FIX_2344_ALIGN_PREPROC ivas_error error; +#endif push_wmops( "pre_proc_front" ); @@ -172,8 +178,9 @@ ivas_error pre_proc_front_ivas( * Initialization *------------------------------------------------------------------*/ +#ifndef FIX_2344_ALIGN_PREPROC error = IVAS_ERR_OK; - +#endif tmpS = 0; tdm_SM_last_clas = &tmpS; set_f( tmpF, 0, STEREO_DFT_BAND_MAX ); @@ -806,11 +813,15 @@ ivas_error pre_proc_front_ivas( if ( flag_16k_smc ) { /* Compute core-coder buffers at internal sampling rate */ +#ifdef FIX_2344_ALIGN_PREPROC + ivas_compute_core_buffers( st, NULL, old_inp_16k, NULL, input_frame, IVAS_SCE /*last_element_mode*/, INT_FS_16k /*sr_core_tmp*/, ener, A, Aw, epsP, lsp_new, lsp_mid ); +#else error = ivas_compute_core_buffers( st, NULL, old_inp_16k, NULL, input_frame, IVAS_SCE /*last_element_mode*/, INT_FS_16k /*sr_core_tmp*/, ener, A, Aw, epsP, lsp_new, lsp_mid ); if ( error != IVAS_ERR_OK ) { return error; } +#endif smc_dec = ivas_acelp_tcx20_switching( st, st->speech_enc, st->wspeech_enc, non_staX, pitch_fr, voicing_fr, currFlatness, lsp_mid, stab_fac, res_cod_SNR_M, flag_16k_smc ); } @@ -862,7 +873,11 @@ ivas_error pre_proc_front_ivas( mvr2r( &old_inp_12k8[L_FRAME], st->old_inp_12k8, L_INP_MEM ); pop_wmops(); +#ifdef FIX_2344_ALIGN_PREPROC + return; +#else return error; +#endif } diff --git a/lib_enc/ivas_cpe_enc.c b/lib_enc/ivas_cpe_enc.c index 01b13ba269..b4efd558fa 100644 --- a/lib_enc/ivas_cpe_enc.c +++ b/lib_enc/ivas_cpe_enc.c @@ -483,14 +483,19 @@ ivas_error ivas_cpe_enc( st_ivas->noClipping += check_clipping( hCPE->hCoreCoder[n]->input, input_frame, &st_ivas->maxOverload, &st_ivas->minOverload ); #endif - error = pre_proc_front_ivas( NULL, hCPE, hCPE->element_brate, nb_bits_metadata, input_frame, n, old_inp_12k8[n], old_inp_16k[n], - &ener[n], &relE[n], A[n], Aw[n], epsP[n], lsp_new[n], lsp_mid[n], &vad_hover_flag[n], &attack_flag[n], - realBuffer[n], imagBuffer[n], old_wsp[n], pitch_fr[n], voicing_fr[n], &loc_harm[n], &cor_map_sum[n], &vad_flag_dtx[n], enerBuffer[n], - fft_buff[n], A[0], lsp_new[0], currFlatness[n], tdm_ratio_idx, fr_bands, Etot_LR, lf_E, localVAD_HE_SAD, band_energies_LR, 0, st_ivas->hSpar != NULL ? st_ivas->hSpar->front_vad_flag : 0, 0, 0, ivas_format, st_ivas->hMCT != NULL, hEncoderConfig->last_ivas_total_brate, ivas_total_brate ); +#ifndef FIX_2344_ALIGN_PREPROC + error = +#endif + pre_proc_front_ivas( NULL, hCPE, hCPE->element_brate, nb_bits_metadata, input_frame, n, old_inp_12k8[n], old_inp_16k[n], + &ener[n], &relE[n], A[n], Aw[n], epsP[n], lsp_new[n], lsp_mid[n], &vad_hover_flag[n], &attack_flag[n], + realBuffer[n], imagBuffer[n], old_wsp[n], pitch_fr[n], voicing_fr[n], &loc_harm[n], &cor_map_sum[n], &vad_flag_dtx[n], enerBuffer[n], + fft_buff[n], A[0], lsp_new[0], currFlatness[n], tdm_ratio_idx, fr_bands, Etot_LR, lf_E, localVAD_HE_SAD, band_energies_LR, 0, st_ivas->hSpar != NULL ? st_ivas->hSpar->front_vad_flag : 0, 0, 0, ivas_format, st_ivas->hMCT != NULL, hEncoderConfig->last_ivas_total_brate, ivas_total_brate ); +#ifndef FIX_2344_ALIGN_PREPROC if ( error != IVAS_ERR_OK ) { return error; } +#endif } /* sanity check -> DTX not supported for more than one SCEs/CPEs */ diff --git a/lib_enc/ivas_ism_enc.c b/lib_enc/ivas_ism_enc.c index d3db3490fa..fa90cd8ee8 100644 --- a/lib_enc/ivas_ism_enc.c +++ b/lib_enc/ivas_ism_enc.c @@ -176,14 +176,19 @@ ivas_error ivas_ism_enc( st_ivas->noClipping += check_clipping( hSCE->hCoreCoder[0]->input, input_frame, &st_ivas->maxOverload, &st_ivas->minOverload ); #endif - error = pre_proc_front_ivas( hSCE, NULL, hSCE->element_brate, nb_bits_metadata[sce_id], input_frame, 0, old_inp_12k8[sce_id][0], old_inp_16k[sce_id][0], - &ener[sce_id][0], &relE[sce_id][0], A[sce_id][0], Aw[sce_id][0], epsP[sce_id][0], lsp_new[sce_id][0], lsp_mid[sce_id][0], &vad_hover_flag[sce_id][0], &attack_flag[sce_id][0], - realBuffer[sce_id][0], imagBuffer[sce_id][0], old_wsp[sce_id][0], pitch_fr[sce_id][0], voicing_fr[sce_id][0], &loc_harm[sce_id][0], &cor_map_sum[sce_id][0], &vad_flag_dtx[sce_id][0], enerBuffer[sce_id][0], - fft_buff[sce_id][0], A[sce_id][0], lsp_new[sce_id][0], currFlatness[0], 0, fr_bands, Etot_LR, lf_E, localVAD_HE_SAD, NULL, 0, 0, 0, 0, ISM_FORMAT, 0, st_ivas->hEncoderConfig->last_ivas_total_brate, st_ivas->hEncoderConfig->ivas_total_brate ); +#ifndef FIX_2344_ALIGN_PREPROC + error = +#endif + pre_proc_front_ivas( hSCE, NULL, hSCE->element_brate, nb_bits_metadata[sce_id], input_frame, 0, old_inp_12k8[sce_id][0], old_inp_16k[sce_id][0], + &ener[sce_id][0], &relE[sce_id][0], A[sce_id][0], Aw[sce_id][0], epsP[sce_id][0], lsp_new[sce_id][0], lsp_mid[sce_id][0], &vad_hover_flag[sce_id][0], &attack_flag[sce_id][0], + realBuffer[sce_id][0], imagBuffer[sce_id][0], old_wsp[sce_id][0], pitch_fr[sce_id][0], voicing_fr[sce_id][0], &loc_harm[sce_id][0], &cor_map_sum[sce_id][0], &vad_flag_dtx[sce_id][0], enerBuffer[sce_id][0], + fft_buff[sce_id][0], A[sce_id][0], lsp_new[sce_id][0], currFlatness[0], 0, fr_bands, Etot_LR, lf_E, localVAD_HE_SAD, NULL, 0, 0, 0, 0, ISM_FORMAT, 0, st_ivas->hEncoderConfig->last_ivas_total_brate, st_ivas->hEncoderConfig->ivas_total_brate ); +#ifndef FIX_2344_ALIGN_PREPROC if ( error != IVAS_ERR_OK ) { return error; } +#endif if ( st_ivas->hEncoderConfig->Opt_DTX_ON ) { diff --git a/lib_enc/ivas_sce_enc.c b/lib_enc/ivas_sce_enc.c index 5d1f56ab30..b1be0bc119 100644 --- a/lib_enc/ivas_sce_enc.c +++ b/lib_enc/ivas_sce_enc.c @@ -185,15 +185,20 @@ ivas_error ivas_sce_enc( st_ivas->noClipping += check_clipping( hSCE->hCoreCoder[0]->input, input_frame, &st_ivas->maxOverload, &st_ivas->minOverload ); #endif - error = pre_proc_front_ivas( hSCE, NULL, hSCE->element_brate, nb_bits_metadata, input_frame, 0, old_inp_12k8[0], old_inp_16k[0], - &ener[0], &relE[0], A[0], Aw[0], epsP[0], lsp_new[0], lsp_mid[0], &vad_hover_flag[0], &attack_flag[0], - realBuffer[0], imagBuffer[0], old_wsp[0], pitch_fr[0], voicing_fr[0], &loc_harm[0], &cor_map_sum[0], &vad_flag_dtx[0], enerBuffer[0], - fft_buff[0], A[0], lsp_new[0], currFlatness[0], 0, fr_bands, Etot_LR, lf_E, localVAD_HE_SAD, NULL, flag_16k_smc, - st_ivas->hSpar != NULL ? st_ivas->hSpar->front_vad_flag : 0, st_ivas->hSpar != NULL ? st_ivas->hSpar->force_front_vad : 0, st_ivas->hSpar != NULL ? st_ivas->hSpar->front_vad_dtx_flag : 0, ivas_format, 0, st_ivas->hEncoderConfig->last_ivas_total_brate, st_ivas->hEncoderConfig->ivas_total_brate ); +#ifndef FIX_2344_ALIGN_PREPROC + error = +#endif + pre_proc_front_ivas( hSCE, NULL, hSCE->element_brate, nb_bits_metadata, input_frame, 0, old_inp_12k8[0], old_inp_16k[0], + &ener[0], &relE[0], A[0], Aw[0], epsP[0], lsp_new[0], lsp_mid[0], &vad_hover_flag[0], &attack_flag[0], + realBuffer[0], imagBuffer[0], old_wsp[0], pitch_fr[0], voicing_fr[0], &loc_harm[0], &cor_map_sum[0], &vad_flag_dtx[0], enerBuffer[0], + fft_buff[0], A[0], lsp_new[0], currFlatness[0], 0, fr_bands, Etot_LR, lf_E, localVAD_HE_SAD, NULL, flag_16k_smc, + st_ivas->hSpar != NULL ? st_ivas->hSpar->front_vad_flag : 0, st_ivas->hSpar != NULL ? st_ivas->hSpar->force_front_vad : 0, st_ivas->hSpar != NULL ? st_ivas->hSpar->front_vad_dtx_flag : 0, ivas_format, 0, st_ivas->hEncoderConfig->last_ivas_total_brate, st_ivas->hEncoderConfig->ivas_total_brate ); +#ifndef FIX_2344_ALIGN_PREPROC if ( error != IVAS_ERR_OK ) { return error; } +#endif /* sanity check -> DTX not supported for more than one SCEs/CPEs */ if ( st_ivas->nSCE + st_ivas->nCPE > 1 ) -- GitLab From fc10068613f0e37b65c3bd39e13ac2fdab855205 Mon Sep 17 00:00:00 2001 From: vaclav Date: Tue, 20 Jan 2026 12:42:12 +0100 Subject: [PATCH 2/2] remove debugging code --- lib_enc/ivas_core_pre_proc.c | 2 ++ 1 file changed, 2 insertions(+) diff --git a/lib_enc/ivas_core_pre_proc.c b/lib_enc/ivas_core_pre_proc.c index ab3ce9fb38..ba748cdd17 100644 --- a/lib_enc/ivas_core_pre_proc.c +++ b/lib_enc/ivas_core_pre_proc.c @@ -632,11 +632,13 @@ ivas_error ivas_compute_core_buffers( set_f( temp1F_icatdmResampBuf, 0, L_FILT_MAX ); modify_Fs( temp1F_icatdmResampBuf, NS2SA( input_Fs, DELAY_FIR_RESAMPL_NS ), input_Fs, new_inp_16k + NS2SA( sr_core, FRAME_SIZE_NS ), sr_core, mem_decim16k_dummy, 0 ); } +#ifndef FIX_2344_ALIGN_PREPROC #ifdef DEBUGGING else { return ( IVAS_ERROR( IVAS_ERR_INTERNAL_FATAL, "Wrong internal sampling rate. Exiting..." ) ); } +#endif #endif } else if ( st->idchan == 0 ) -- GitLab