Commit 9b017ba0 authored by Manuel Jander's avatar Manuel Jander
Browse files

Fix worst case ABS Diff regression. Remove rescaling which happens on demand...

Fix worst case ABS Diff regression. Remove rescaling which happens on demand inside ivas_compute_core_buffers_fx().
parent f14d6ad4
Loading
Loading
Loading
Loading
Loading
+8 −2
Original line number Diff line number Diff line
@@ -540,6 +540,7 @@ ivas_error pre_proc_ivas_fx(
    Word16 Q_old_inp_16k = sub( *Q_new, 1 );
#else
    Word16 Q_old_inp_16k = -1;
#endif
    move16();
    Word16 Q_r[2] = { 0 };
    move16();
@@ -550,7 +551,12 @@ ivas_error pre_proc_ivas_fx(
    Scale_sig( st->old_inp_12k8_fx, L_INP_MEM, shift ); /* exp(st->exp_old_inp_12k8 - shift) */
    st->exp_old_inp_12k8 = sub( st->exp_old_inp_12k8, shift );
    move16();

#if 0
    Scale_sig( st->old_inp_16k_fx, L_INP_MEM, sub( Q_old_inp_16k, sub( Q15, st->exp_old_inp_16k ) ) ); /* Q15 - st->exp_old_inp_16k */
    st->exp_old_inp_16k = sub( Q15, Q_old_inp_16k );
    move16();
#endif
#ifndef NONBE_FIX_ISSUE_2206
    Scale_sig( st->old_inp_16k_fx, L_INP_MEM, sub( Q_old_inp_16k, sub( Q15, st->exp_old_inp_16k ) ) ); /* Q15 - st->exp_old_inp_16k */
    st->exp_old_inp_16k = sub( Q15, Q_old_inp_16k );
    move16();
@@ -1356,7 +1362,7 @@ ivas_error ivas_compute_core_buffers_fx(
    ELSE IF( GT_32( input_Fs, 8000 ) )
    {
        lerp( st->old_inp_12k8_fx + L_INP_MEM - L_INP_MEM * 4 / 5, st->old_inp_16k_fx, L_INP_MEM, L_INP_MEM * 4 / 5 );
#ifndef NONBE_FIX_ISSUE_2206
#ifndef NONBE_FIX_ISSUE_2206_NO
        Scale_sig( st->old_inp_16k_fx, L_INP_MEM, sub( -1 /* Q st->old_inp_16k_fx = -1 */, sub( 15, st->exp_old_inp_12k8 ) ) );
        st->exp_old_inp_16k = Q16; // Q-1
        move16();