Commit 079eac87 authored by norvell's avatar norvell
Browse files

Further BASOP_NOGLOB fixes

parent c5aa5ebd
Loading
Loading
Loading
Loading
+8 −0
Original line number Diff line number Diff line
@@ -113,6 +113,10 @@ void window_ola_fx(
    Word16 SS2[L_FRAME48k-NS2SA(48000, N_ZERO_MDCT_NS)];
    Word16 wret2[L_FRAME48k-NS2SA(48000, N_ZERO_MDCT_NS)];
    Word16 tmp2;
#ifdef BASOP_NOGLOB
    Flag Overflow = 0;
#endif


    /* Windows loading */
    tcx_get_windows_mode1(  left_mode,  right_mode, win_left, win_right, win_int_left,win_int_right, L);
@@ -325,7 +329,11 @@ void window_ola_fx(
            p4=OldauOut+n;
            FOR (i=0; i < temp; i++)
            {
#ifdef BASOP_NOGLOB
                *p1 = add_o(mult(*p1, *p2), shl(mult(*p4, *p3), 5), &Overflow);/*auOut[i]*SS2[i]+ OldauOut[i+n]*(SS2[L-n-i-1])/(wret2[i]+0.01f);;*/ move16();
#else
                *p1 =add( mult(*p1,*p2),shl(mult(*p4,*p3),5));/*auOut[i]*SS2[i]+ OldauOut[i+n]*(SS2[L-n-i-1])/(wret2[i]+0.01f);;*/ move16();
#endif
                p1++;
                p2++;
                p3++;
+12 −0
Original line number Diff line number Diff line
@@ -187,7 +187,11 @@ void FEC_scale_syn_fx(
            {
                /* gain2 = (float)sqrt( enr_old / enr2 );*/
                L_tmp = Sqrt_Ratio32(L_enr_old, 0, L_enr2, 0, &exp2);
#ifdef BASOP_NOGLOB
                gain2 = round_fx_o(L_shl_o(L_tmp, sub(exp2, 1), &Overflow), &Overflow); /* in Q14 */
#else
                gain2 = round_fx(L_shl(L_tmp, sub(exp2, 1))); /* in Q14 */
#endif

                /*if( gain2 > 1.0f )gain2 = 1.0f;*/
                gain2 = s_min(gain2, 16384);
@@ -200,7 +204,11 @@ void FEC_scale_syn_fx(

                /*gain1 = (float)sqrt( enr_old / enr1 );*/
                L_tmp = Sqrt_Ratio32(L_enr_old, 0, L_enr1, 0, &exp2);
#ifdef BASOP_NOGLOB
                gain1 = round_fx_o(L_shl_o(L_tmp, sub(exp2, 1), &Overflow), &Overflow); /* in Q14 */
#else
                gain1 = round_fx(L_shl(L_tmp, sub(exp2, 1))); /* in Q14 */
#endif

                /*if( gain1 > 1.0f )gain1 = 1.0f;*/
                gain1 = s_min(gain1, 16384);
@@ -300,7 +308,11 @@ void FEC_scale_syn_fx(

                    /*gain1 = (float)sqrt( enr_old / enr1 );*/
                    L_tmp = Sqrt_Ratio32(L_enr_old, 0, L_enr1, 0, &exp2);
#ifdef BASOP_NOGLOB
                    gain1 = round_fx_o(L_shl_o(L_tmp, sub(exp2, 1), &Overflow), &Overflow); /* in Q14 */
#else
                    gain1 = round_fx(L_shl(L_tmp, sub(exp2, 1))); /* in Q14 */
#endif

                    /*if( gain1 > 1.2f )gain1 = 1.2f;*/
                    /* prevent clipping */