Commit 0f54e7e2 authored by Tapani Pihlajakuja's avatar Tapani Pihlajakuja
Browse files

Merge branch '2082-floating-point-leftovers-lib_dec-ivas_omasa_dec_fx-c' into 'main'

Fix 2082 Floating-point leftovers: lib_dec/ivas_omasa_dec_fx.c

Closes #2082

See merge request !2348
parents ba2aad75 c66c3665
Loading
Loading
Loading
Loading
Loading
+2 −0
Original line number Diff line number Diff line
@@ -86,6 +86,8 @@
#define FIX_2166_ASSERT_OSBA_PLC_STEREO_OUT                  /* FhG: fix for issue 2166 - add missing averaging factor 0.5 in for the sum of energies in function stereo_dft_dmx_swb_nrg_fx()*/

#define FIX_1793_DEC_MC_TO_MONO_SCALING_ISSUE                /* FhG: Use dynamic Q factor for synth_fx and synthFB_fx to prevent overflow */
#define FIX_2082_FP_LEFTOVERS_OMASA_DEC                      /* Nokia: fix for issue 2082, cleaning remaining floating point code */

/* ################### End FIXES switches ########################### */

/* #################### Start BASOP porting switches ############################ */
+7 −1
Original line number Diff line number Diff line
@@ -46,12 +46,18 @@
 * Local constants
 *------------------------------------------------------------------------*/


#ifdef FIX_2082_FP_LEFTOVERS_OMASA_DEC
#define MULT_17_DIV_20_Q15              27853      /* (Word16) ( ( 17.0/20.0 ) * 2^15 + 0.5 ) */
#define MULT_1_DIV_CLDFB_NO_COL_MAX_Q15 2048       /* (Word16) ( ( 1.0 / CLDFB_NO_COL_MAX ) * 2^15 + 0.5 ) */
#define ONEMINUX_EXT_RENDER_IIR_FAC_Q31 107374182  /* (Word32) ( ( 1.0 - 0.95 ) * 2^31 + 0.5f );  0.95 is EXT_RENDER_IIR_FAC  */
#define EXT_RENDER_IIR_FAC_Q31          2040109465 /* (Word32) ( 0.95 * 2^31 + 0.5 ) */
#else
#define EXT_RENDER_IIR_FAC              0.95f
#define MULT_17_DIV_20_Q15              ( Word16 )( ( 17.0 / 20.0f ) * pow( 2, 15 ) + 0.5f )
#define MULT_1_DIV_CLDFB_NO_COL_MAX_Q15 ( Word16 )( ( 1.0 / CLDFB_NO_COL_MAX ) * pow( 2, 15 ) + 0.5f )
#define ONEMINUX_EXT_RENDER_IIR_FAC_Q31 ( Word32 )( ( 1.0f - EXT_RENDER_IIR_FAC ) * pow( 2, 31 ) + 0.5f )
#define EXT_RENDER_IIR_FAC_Q31          ( Word32 )( EXT_RENDER_IIR_FAC * pow( 2, 31 ) + 0.5f )
#endif

// Calculated as (Word16)(((1.0f / (50 * MAX_PARAM_SPATIAL_SUBFRAMES)) * pow(2, 15)) + 0.5f)
#define OMASA_DELAYFRAMES_PER_SEC_Q15 (Word16) 164 // Q15