From 160cb85d746e0ee11f114c658b3a55dd69a5b5d6 Mon Sep 17 00:00:00 2001 From: Adriana Vasilache Date: Sun, 12 Oct 2025 17:17:30 +0300 Subject: [PATCH] fix 2092 --- lib_com/cldfb_fx.c | 14 ++++++++++++++ lib_com/options.h | 1 + 2 files changed, 15 insertions(+) diff --git a/lib_com/cldfb_fx.c b/lib_com/cldfb_fx.c index 8c3331a31..92f0f5418 100644 --- a/lib_com/cldfb_fx.c +++ b/lib_com/cldfb_fx.c @@ -1166,13 +1166,27 @@ void cldfbSynthesis_ivas_fx( FOR( i = 0; i < M1; i++ ) { Word32 cplx_aux; +#ifdef FIX_2092_ASSERT_IN_OMASA_RENDER_OBJECTS + Word32 cplx_aux1; +#endif /* delay */ /*cplxMult(&rBuffer[i], &iBuffer[i], realBuffer[k][i], imagBuffer[k][i], cos((EVS_PI/M1)*(i+0.5)*(-(h_cldfb->ds-M1)*0.5)), sin((EVS_PI/M1)*(i+0.5)*(-(h_cldfb->ds-M1)*0.5)));*/ /*cplxMult(&rBuffer[i], &iBuffer[i], realBuffer[k][i], imagBuffer[k][i], rot_vctr_delay_re[i], rot_vctr_delay_im[i]);*/ /*cplxMult(&realBuffer[k][i], &imagBuffer[k][i], realBuffer[k][i], imagBuffer[k][i], rot_vctr_delay_re[i], rot_vctr_delay_im[i]);*/ +#ifdef FIX_2092_ASSERT_IN_OMASA_RENDER_OBJECTS + cplx_aux = Mpy_32_32( realBuffer_fx[k][i], rot_vctr_delay_re_fx[i] ); + cplx_aux1 = Mpy_32_32( imagBuffer_fx[k][i], rot_vctr_delay_im_fx[i] ); + cplx_aux = L_sub_sat( cplx_aux, cplx_aux1 ); + + cplx_aux1 = Mpy_32_32( realBuffer_fx[k][i], rot_vctr_delay_im_fx[i] ); + imagBuffer_fx[k][i] = Mpy_32_32( imagBuffer_fx[k][i], rot_vctr_delay_re_fx[i] ); + imagBuffer_fx[k][i] = L_add_sat( cplx_aux1, imagBuffer_fx[k][i] ); +#else cplx_aux = Msub_32_32( Mpy_32_32( realBuffer_fx[k][i], rot_vctr_delay_re_fx[i] ), imagBuffer_fx[k][i], rot_vctr_delay_im_fx[i] ); // Qx imagBuffer_fx[k][i] = Madd_32_32( Mpy_32_32( realBuffer_fx[k][i], rot_vctr_delay_im_fx[i] ), imagBuffer_fx[k][i], rot_vctr_delay_re_fx[i] ); +#endif + move32(); realBuffer_fx[k][i] = cplx_aux; move32(); diff --git a/lib_com/options.h b/lib_com/options.h index c941842df..34b68ab6a 100644 --- a/lib_com/options.h +++ b/lib_com/options.h @@ -113,6 +113,7 @@ #define FIX_2021_BANDWIDTH_EXTENSION_PROBLEM /* FhG: increase cldfb buffer precision*/ #define FIX_2085_FLOATING_POINT_LEFTOVERS /* FhG: convert floating-point leftovers in ivas_dirac_config_fx() */ +#define FIX_2092_ASSERT_IN_OMASA_RENDER_OBJECTS /* Nokia: fixes assert in for +10 dB OMASA rate switching bitstream from float encoder. */ /* #################### Start BASOP porting switches ############################ */ #define NONBE_1244_FIX_SWB_BWE_MEMORY /* VA: issue 1244: fix to SWB BWE memory in case of switching from FB coding - pending a review by Huawei */ -- GitLab