Commit 8b95a313 authored by Sandesh Venkatesh's avatar Sandesh Venkatesh
Browse files

Merge branch 'cldfb_opt' into 'main'

Optimizations for SBA path functions [allow regression]

See merge request !1501
parents 5153a91f 1c78c06e
Loading
Loading
Loading
Loading
Loading
+414 −36

File changed.

Preview size limit exceeded, changes collapsed.

+14 −6
Original line number Diff line number Diff line
@@ -1094,8 +1094,12 @@ void ivas_mct_dec_mct_fx(
void apply_MCT_dec_fx(
    MCT_DEC_HANDLE hMCT,                /* i/o: MCT decoder structure                   */
    Decoder_State **sts,                /* i/o: decoder state structure                 */
    Word32 *x[MCT_MAX_CHANNELS][NB_DIV], /* i/o: decoded and dequan. spect. input to MCT */
    Word16 q_x[MCT_MAX_CHANNELS] );
    Word32 *x[MCT_MAX_CHANNELS][NB_DIV] /* i/o: decoded and dequan. spect. input to MCT */
#ifndef OPT_SBA_DEC_PATH
    ,
    Word16 q_x[MCT_MAX_CHANNELS]
#endif /* OPT_SBA_DEC_PATH */
);

void mctStereoIGF_dec_fx(
    MCT_DEC_HANDLE hMCT,                 /* i/o: MCT decoder structure           */
@@ -1129,9 +1133,13 @@ void stereo_decoder_tcx_fx(
    const Word16 mct_on,               /* i  : flag mct block (1) or stereo (0)        */
    const Word16 last_core_l,          /* i  : last core for left channel              */
    const Word16 last_core_r,          /* i  : last core for right channel             */
    const Word16 tmp_plc_upmix,        /* i  : indicates temp upmix for PLC decision   */
    const Word16 tmp_plc_upmix         /* i  : indicates temp upmix for PLC decision   */
#ifndef OPT_SBA_DEC_PATH
    ,
    Word16 *q_x_ch2,
    Word16 *q_x_ch1 );
    Word16 *q_x_ch1
#endif /* OPT_SBA_DEC_PATH */
);

void v_multc_acc_32_16(
    const Word32 x[], /* i  : Input vector                                     */
+2 −0
Original line number Diff line number Diff line
@@ -87,6 +87,8 @@
#define OPT_BIN_RENDERER_V2
#define OPT_STEREO_32KBPS_V1                    /* Optimization made in stereo decoding path for 32kbps decoding */
#define OPT_AVOID_STATE_BUF_RESCALE             /* Optimization made to avoid rescale of synth state buffer */
#define OPT_SBA_DEC_PATH                    /* Optimization made in SBA decoding path */
#define OPT_IVAS_FILTER_ROM                    /* Optimization made in IVAS filter table */
#define FIX_1310_SPEEDUP_ivas_dirac_dec_get_response_fx                 /*FhG: WMOPS tuning, nonbe*/
#define FIX_1310_SPEEDUP_ivas_dirac_dec_output_synthesis_process_slot   /*FhG: WMOPS tuning, nonbe*/
/* Both following 2 macros (IMPROVE_HIGH_COMPLEXITY_PARAM_MC_PRM_EST*) are independent from each other, they refer to different code blocks */
+773 −0

File changed.

Preview size limit exceeded, changes collapsed.

+20 −1
Original line number Diff line number Diff line
@@ -70,7 +70,7 @@ extern const Word16 sin_twiddle_table_25_5_5[25]; // Q15
extern const Word16 cos_twiddle_table_16_8_2[16]; // Q15
extern const Word16 sin_twiddle_table_16_8_2[16]; // Q15


#ifndef OPT_IVAS_FILTER_ROM
extern const Word16 CLDFB80_10_fx[100]; // Q15
extern const Word16 CLDFB80_16_fx[160]; // Q15
extern const Word16 CLDFB80_20_fx[200]; // Q15
@@ -87,6 +87,25 @@ extern const Word16 LDQMF_30_fx[300]; // Q15
extern const Word16 LDQMF_32_fx[320]; // Q15
extern const Word16 LDQMF_40_fx[400]; // Q15
extern const Word16 LDQMF_60_fx[600]; // Q15
#else                                 /* OPT_IVAS_FILTER_ROM */

extern const Word32 CLDFB80_10_fx[100]; // Q30
extern const Word32 CLDFB80_16_fx[160]; // Q30
extern const Word32 CLDFB80_20_fx[200]; // Q30
extern const Word32 CLDFB80_30_fx[300]; // Q30
extern const Word32 CLDFB80_32_fx[320]; // Q30
extern const Word32 CLDFB80_40_fx[400]; // Q30
extern const Word32 CLDFB80_60_fx[600]; // Q30

/*5ms delay*/
extern const Word32 LDQMF_10_fx[100]; // Q30
extern const Word32 LDQMF_16_fx[160]; // Q30
extern const Word32 LDQMF_20_fx[200]; // Q30
extern const Word32 LDQMF_30_fx[300]; // Q30
extern const Word32 LDQMF_32_fx[320]; // Q30
extern const Word32 LDQMF_40_fx[400]; // Q30
extern const Word32 LDQMF_60_fx[600]; // Q30
#endif                                /* OPT_IVAS_FILTER_ROM */
/* Not used anywhere
extern const Word16 LDQMF_10_enc_fx[100];
extern const Word16 LDQMF_16_enc_fx[160];
Loading