Commit ee9cd394 authored by vaillancour's avatar vaillancour
Browse files

Fixes for mix bandwidth

parent 6aedd91a
Loading
Loading
Loading
Loading
+23 −14
Original line number Diff line number Diff line
@@ -1044,9 +1044,6 @@ static void fft5_shift4_16fx(
    Word16 T1, To, T8, Tt, T9, Ts, Te, Tp, Th, Tn,T2, T3, T4, T5, T6, T7;
    Word16 i0,i1,i2,i3,i4;
    Word32 L_tmp;
#ifdef BASOP_NOGLOB_DECLARE_LOCAL
    Flag Overflow = 0;
#endif


    i0 = Idx[0];
@@ -1100,12 +1097,14 @@ static void fft5_shift4_16fx(
    Tn = round_fx(L_tmp);

#ifdef BASOP_NOGLOB
    zRe[i0] = add_o(T1, T8, &Overflow);
    zRe[i0] = add_sat(T1, T8);
    move16();
    zIm[i0] = add_sat(To, Tp);
#else
    zRe[i0] = add(T1,T8);
#endif
    move16();
    zIm[i0] = add(To, Tp);
#endif
    move16();

    /*        T2 = KP951056516*Te + KP587785252*Th; */
@@ -1119,16 +1118,16 @@ static void fft5_shift4_16fx(
    T3 = round_fx(L_tmp);

#ifdef BASOP_NOGLOB
    T6 = sub_o(T1, shr_o(T8, 2, &Overflow), &Overflow);
    T4 = add_o(T9, T6, &Overflow);
    T5 = sub_o(T6, T9, &Overflow);
    zRe[i1] = sub_o(T4, T2, &Overflow);
    T6 = sub_sat(T1, shr_sat(T8, 2));
    T4 = add_sat(T9, T6);
    T5 = sub_sat(T6, T9);
    zRe[i1] = sub_sat(T4, T2);
    move16();
    zRe[i2] = add_o(T5, T3, &Overflow);
    zRe[i2] = add_sat(T5, T3);
    move16();
    zRe[i4] = add_o(T4, T2, &Overflow);
    zRe[i4] = add_sat(T4, T2);
    move16();
    zRe[i3] = sub_o(T5, T3, &Overflow);
    zRe[i3] = sub_sat(T5, T3);
    move16();
#else
    T6 = sub(T1, shr(T8, 2));
@@ -1157,6 +1156,16 @@ static void fft5_shift4_16fx(
    T6 = sub(To,shr(Tp,2));
    T4 = add(Tn,T6);
    T5 = sub(T6,Tn);
#ifdef BASOP_NOGLOB
    zIm[i4] = sub_sat(T4,T2);
    move16();
    zIm[i2] = sub_sat(T5,T3);
    move16();
    zIm[i1] = add_sat(T2,T4);
    move16();
    zIm[i3] = add_sat(T3,T5);
    move16();
#else
    zIm[i4] = sub(T4,T2);
    move16();
    zIm[i2] = sub(T5,T3);
@@ -1165,7 +1174,7 @@ static void fft5_shift4_16fx(
    move16();
    zIm[i3] = add(T3,T5);
    move16();

#endif
    return;
}

+1 −1
Original line number Diff line number Diff line
@@ -1551,7 +1551,7 @@ void decoder_tcx_post(Decoder_State_fx *st_fx,
        }
        st_fx->plcInfo.step_concealgain_fx =
#ifdef BASOP_NOGLOB
            round_fx(L_shl_o(L_mult0( round_fx(step), round_fx(L_shl_o(L_mult0(st_fx->L_frame_fx, getInvFrameLen(hTcxDec->L_frameTCX)), 8, &Overflow))), 3, &Overflow)); /*Q15*/
            round_fx_sat(L_shl_sat(L_mult0( round_fx_sat(step), round_fx_sat(L_shl_sat(L_mult0(st_fx->L_frame_fx, getInvFrameLen(hTcxDec->L_frameTCX)), 8))), 3)); /*Q15*/
#else
            round_fx(L_shl(L_mult0(
                               round_fx(step),