Commit 47e5468c authored by Jan Kiene's avatar Jan Kiene
Browse files

Merge branch 'main' into float-1537-make-clang-the-default-compiler-in-makefile-and-cmakelists-txt

parents a46b8e3c 543a97c3
Loading
Loading
Loading
Loading
+26 −12
Original line number Diff line number Diff line
@@ -27,7 +27,9 @@ void fine_gain_pred_fx(
    Word16 *xq,              /* i/o: Quantized vector /quantized vector with finegain adj Q15*/
    Word16 *y,               /* i/o: Quantized vector (int)      Q0  */
    Word16 *fg_pred,         /* o  : Predicted fine gains        Q12 */
#ifndef FIX_BASOP_2486_HQ_FINE_GAIN_ALIGNMENT
    const Word16 element_mode, /* i  : element mode                    */
#endif
    const Word16 core /* i  : Core                            */
)
{
@@ -74,6 +76,17 @@ void fine_gain_pred_fx(
                exp = sub( 31, add( exp, sub( 30, shl( shift, 1 ) ) ) );
                L_tmp = Isqrt_lc( L_tmp, &exp ); /*31 - exp */

#ifdef FIX_BASOP_2486_HQ_FINE_GAIN_ALIGNMENT
                IF( EQ_16( sfm_size[0], 10 ) ) /* If sfm_size[0] is 10, it means the extended ACELP->HQ transition frame is used. See hq_configure_fx(). */
                {
                    bw_idx = band_len_idx_ext[shr( bw, 3 )];
                    tmp1 = fine_gain_pred_sqrt_bw_ext[bw_idx];
                }
                ELSE
                {
                    tmp1 = fine_gain_pred_sqrt_bw[bw_idx];
                }
#else
                IF( element_mode == EVS_MONO )
                {
                    tmp1 = fine_gain_pred_sqrt_bw[bw_idx];
@@ -96,6 +109,7 @@ void fine_gain_pred_fx(
#endif
                    }
                }
#endif
                Mpy_32_16_ss( L_tmp, tmp1, &L_tmp, &lsb );              /*31-exp+11-15=27-exp */
                gp = round_fx_sat( L_shl_sat( L_tmp, add( 1, exp ) ) ); /*27-exp+1+exp-16=12 */
                test();
+4 −2
Original line number Diff line number Diff line
@@ -89,7 +89,7 @@
#define FIX_2455_HARMONIZE_generate_comfort_noise_enc   /* FhG: harmonize generate_comfort_noise_enc and generate_comfort_noise_enc_ivas */
#define FIX_2455_HARMONIZE_configureFdCngEnc            /* FhG: harmonize generate_comfort_noise_enc and generate_comfort_noise_enc_ivas */
#define FIX_2463_EVS_BWE_LSF                            /* VA: basop issue 2463: harmonize calling of Quant_BWE_LSF_fx() */

#define FIX_2452_HQ_CORE_PEAQ_AVR_RATIO_HARM            /* Eri: Basop issue 2453: Fix alignment of peak_avrg_ratio_fx */

/* #################### End BE switches ################################## */

@@ -98,7 +98,9 @@

#define FIX_BASOP_2451_HQ_FEC_SELECTOR                  /* Eri: Resolve basop issue 2451, wrong condition on env_stab_plc_fx */
#define FIX_2398_PRECISSION_ORIENTATION_TRACKING        /* FhG: use refinement of Sqrt32 within certain functions*/

#define FIX_BASOP_2486_HQ_FINE_GAIN_ALIGNMENT           /* Eri: Basop issue 2486: IVAS BASOP used calculations with truncation, EVS BASOP used rounding. This aligns the use of a table lookup. */
#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_2488_PREVENT_NEG_PITCH                      /* VA: Fix for 2488, use saturation to prevent possible wrap-around, thus negative pitch values */

/* ##################### End NON-BE switches ########################### */

+14 −12
Original line number Diff line number Diff line
@@ -4420,7 +4420,9 @@ void fine_gain_pred_fx(
    Word16 *xq,              /* i/o: Quantized vector /quantized vector with finegain adj Q15*/
    Word16 *y,               /* i/o: Quantized vector (int)          */
    Word16 *fg_pred,         /* o  : Predicted fine gains        Q12 */
#ifndef FIX_BASOP_2486_HQ_FINE_GAIN_ALIGNMENT
    const Word16 element_mode, /* i  : element mode                    */
#endif
    const Word16 core /* i  : Core                            */
);

+5 −0
Original line number Diff line number Diff line
@@ -321,8 +321,13 @@ static void peak_vq_dec_fx(

    pvq_decode_frame_fx( st_fx, pvq_vector, npulses, pvq_inp_vector, hvq_band_start, hvq_band_end, hvq_band_width, pvq_bands, Rk, pvq_bits, core );

#ifdef FIX_BASOP_2486_HQ_FINE_GAIN_ALIGNMENT
    fine_gain_pred_fx( hvq_band_start, hvq_band_end, hvq_band_width, k_sort, npulses, pvq_maxpulse, NULL,
                       pvq_bands, pvq_vector, pvq_inp_vector, fg_pred, core );
#else
    fine_gain_pred_fx( hvq_band_start, hvq_band_end, hvq_band_width, k_sort, npulses, pvq_maxpulse, NULL,
                       pvq_bands, pvq_vector, pvq_inp_vector, fg_pred, st_fx->element_mode, core );
#endif

    fine_gain_dec_fx( st_fx, k_sort, pvq_bands, gain_bits_array, fg_pred );

+5 −0
Original line number Diff line number Diff line
@@ -277,8 +277,13 @@ Word16 pvq_core_dec_fx(

    get_max_pulses_fx( sfm_start, sfm_end, ord, npulses, nb_sfm, pulse_vector, maxpulse );

#ifdef FIX_BASOP_2486_HQ_FINE_GAIN_ALIGNMENT
    fine_gain_pred_fx( sfm_start, sfm_end, sfmsize, ord, npulses, maxpulse, R,
                       nb_sfm, coefs_quant, pulse_vector, fg_pred, core );
#else
    fine_gain_pred_fx( sfm_start, sfm_end, sfmsize, ord, npulses, maxpulse, R,
                       nb_sfm, coefs_quant, pulse_vector, fg_pred, st_fx->element_mode, core );
#endif

    fine_gain_dec_fx( st_fx, ord, nb_sfm, gain_bits_array, fg_pred );
    IF( st_fx->hHQ_core != NULL )
Loading