Commit 888873ba authored by Sandesh Venkatesh's avatar Sandesh Venkatesh
Browse files

Merge branch 'prec_impr_pred_lt4_ivas_fx_enc' into 'main'

Extension of #1593 fix into Encoder: plugged in pred_lt4_ivas_fx in encoder [allow regression]

See merge request !1798
parents a246ccfe 54a62ff9
Loading
Loading
Loading
Loading
Loading
+7 −22
Original line number Diff line number Diff line
@@ -1273,28 +1273,6 @@ const Word16 sin_table256_fx[] =
 * 1/4 resolution interpolation filter (-3 dB at 0.913*fs/2)
 *----------------------------------------------------------------------------------*/
const Word16 inter4_2_fx_Q15[65] =
{//Q15
    30801,
    28062, 20718, 11061, 1935,
    -4294, -6533, -5195, -1846,
    1559, 3497, 3398, 1705,
    -497, -2087, -2413, -1523,
    -32, 1252, 1741, 1312,
    305, -710, -1237, -1087,
    -426, 350, 848, 862,
    452, -119, -550, -650,
    -418, -17, 330, 462,
    349, 85, -175, -306,
    -265, -104, 76, 184,
    182, 93, -20, -98,
    -110, -66, -3, 43,
    55, 37, 8, -13,
    -20, -14, -4, 2,
    3, 1, 0, 0,
};
const Word16 inter4_2_fx[] =
{//evs table , some mismatch in values compared to float is observed
    0,     1,      2,      1,
@@ -1366,6 +1344,13 @@ const Word16 pitch_inter4_2[PIT_FIR_SIZE2] =
  3/*0.000098f Q15*/,        2/*0.000048f Q15*/,        0/*0.000007f Q15*/,        0/*0.000000f Q15*/
};
/* 1/4 resolution interpolation filter (-3 dB at 0.791*fs/2) */
const Word32 L_pitch_inter4_1[UP_SAMP * L_INTERPOL1 + 1] = /* Q31 */
{
    1932735283, 1758701061, 1298905484, 711630983, 180298432, -162768528,
    -280712608, -226956816, -100446400, 9592809, 59676424, 55065776,
    26996016, 4138201, -3373696, -1617055, 0
};
/* 1/4 resolution interpolation filter (-3 dB at 0.791*fs/2) */
const Word16 pitch_inter4_1[UP_SAMP * L_INTERPOL1 + 1] =
{
    29491/*0.900000F Q15*/,
+9 −9
Original line number Diff line number Diff line
@@ -172,10 +172,10 @@ extern const Word32 crit_bands_fx[];
extern const float sincos_t_ext[];         // fft_rel dep
extern const Word16 sincos_t_rad3_fx[];    // Q15
extern const Word16 fft256_read_indexes[]; /* FFT	Q0*/
extern const Word16 inter4_2_fx_Q15[];     // Q15     /* 1/4 resolution interpolation filter */
extern const Word16 inter4_2_fx[];
extern const Word16 pitch_inter4_1[UP_SAMP * L_INTERPOL1 + 1];   /*1Q14*/
extern const Word16 pitch_inter4_2[PIT_FIR_SIZE2];               /*Q15*/
extern const Word32 L_pitch_inter4_1[UP_SAMP * L_INTERPOL1 + 1]; /*Q31*/
extern const Word32 L_pitch_inter4_2[PIT_FIR_SIZE2];             /*Q31*/
extern const Word16 Assym_window_W16fx[];                        // Q15
extern const Word16 assym_window_16k_fx[];                       // Q15
+2 −2
Original line number Diff line number Diff line
@@ -632,7 +632,7 @@ static void encod_gen_voic_core_switch_ivas_fx(
     * Find adaptive exitation
     *-----------------------------------------------------------------*/

    pred_lt4( &exc[0], &exc[0], T0, T0_frac, L_SUBFR + 1, pitch_inter4_2, L_INTERPOL2, PIT_UP_SAMP );
    pred_lt4_ivas_fx( &exc[0], &exc[0], T0, T0_frac, L_SUBFR + 1, L_pitch_inter4_2, L_INTERPOL2, PIT_UP_SAMP );

    /*-----------------------------------------------------------------*
     * Gain clipping test to avoid unstable synthesis on frame erasure
@@ -708,7 +708,7 @@ static void encod_gen_voic_core_switch_ivas_fx(
     * long term prediction on the 2nd sub frame
     *-----------------------------------------------------------------*/

    pred_lt4( &exc[L_SUBFR], &exc[L_SUBFR], T0, T0_frac, L_SUBFR + 1, pitch_inter4_2, L_INTERPOL2, PIT_UP_SAMP );
    pred_lt4_ivas_fx( &exc[L_SUBFR], &exc[L_SUBFR], T0, T0_frac, L_SUBFR + 1, L_pitch_inter4_2, L_INTERPOL2, PIT_UP_SAMP );

    FOR( i = L_SUBFR; i < 2 * L_SUBFR; i++ )
    {
+1 −1
Original line number Diff line number Diff line
@@ -578,7 +578,7 @@ void encod_gen_voic_ivas_fx(
         * Find adaptive exitation
         *-----------------------------------------------------------------*/

        pred_lt4( &exc_fx[i_subfr_fx], &exc_fx[i_subfr_fx], T0_fx, T0_frac_fx, L_SUBFR + 1, pitch_inter4_2, L_INTERPOL2, PIT_UP_SAMP );
        pred_lt4_ivas_fx( &exc_fx[i_subfr_fx], &exc_fx[i_subfr_fx], T0_fx, T0_frac_fx, L_SUBFR + 1, L_pitch_inter4_2, L_INTERPOL2, PIT_UP_SAMP );

        /*-----------------------------------------------------------------*
         * Gain clipping test to avoid unstable synthesis on frame erasure
+1 −1
Original line number Diff line number Diff line
@@ -744,7 +744,7 @@ void enc_pit_exc_ivas_fx(
         * Find adaptive exitation
         *-----------------------------------------------------------------*/

        pred_lt4( &exc[i_subfr], &exc[i_subfr], *T0, *T0_frac, L_subfr + 1, pitch_inter4_2, L_INTERPOL2, PIT_UP_SAMP );
        pred_lt4_ivas_fx( &exc[i_subfr], &exc[i_subfr], *T0, *T0_frac, L_subfr + 1, L_pitch_inter4_2, L_INTERPOL2, PIT_UP_SAMP );
        /*-----------------------------------------------------------------*
         * Gain clipping test to avoid unstable synthesis on frame erasure
         * or in case of floating point encoder & fixed p. decoder
Loading