Commit 5d34cc98 authored by vaillancour's avatar vaillancour
Browse files

Correction on compl saturations for 26.444

parent 21ae1724
Loading
Loading
Loading
Loading
+10 −2
Original line number Diff line number Diff line
@@ -450,7 +450,11 @@ void hq2_noise_inject_fx(
								tmp = sub(Q_env_fx[k],Q_Ep_fx[k]);
								tmp = sub(tmp,Q_speech);
								tmp = add(tmp,25);
#ifdef BASOP_NOGLOB
                                L_tmp = L_shr_sat( L_tmp2, tmp );                   /*Q7 */
#else
                                L_tmp = L_shr( L_tmp2, tmp );                   /*Q7 */
#endif
								tmp = extract_l(L_min(L_tmp,192));/* */
								fac_fx = extract_h(L_shl(L_mult(fac_fx,tmp),8));/*Q12 */
							}
@@ -460,7 +464,11 @@ void hq2_noise_inject_fx(
								L_tmp2 = Mult_32_16(env_fx[k],tmp);/*Q(Q_env_fx[k]+0-15 = Q_env_fx[k]-15) */
								L_tmp2 = Mult_32_16(L_tmp2,20480);/*Q(Q_env_fx[k]-15+14-15 = Q_env_fx[k]-16) */
								tmp = sub(Q_env_fx[k],23);
#ifdef BASOP_NOGLOB
                                L_tmp = L_shr_sat( L_tmp2, tmp );                   /*Q7 */
#else
                                L_tmp = L_shr( L_tmp2, tmp );                   /*Q7 */
#endif
								tmp = extract_l((L_min(L_tmp,192)));/* */
								fac_fx = extract_h(L_shl(L_mult(fac_fx,tmp),8));/*Q12 */
							}
+5 −1
Original line number Diff line number Diff line
@@ -136,7 +136,11 @@ void syn_filt_s_lc_fx(
        /* Stop at i to Avoid Mults with Zeros */
        FOR (j = 1; j <= i; j++)
        {
#ifdef BASOP_NOGLOB
            L_tmp = L_msu_sat( L_tmp, y[-j], a[j] );
#else
            L_tmp = L_msu( L_tmp, y[-j], a[j] );
#endif
        }

#ifdef BASOP_NOGLOB
+5 −1
Original line number Diff line number Diff line
@@ -420,7 +420,11 @@ void tcx_windowing_synthesis_current_frame(
            FOR (i=0; i<M; i++)
            {
                move16();
#ifdef BASOP_NOGLOB
                signal[overlap + acelp_mem_len - M + i] = sub_sat( signal[overlap + acelp_mem_len - M + i], old_syn[acelp_zir_len - M + i] );
#else
                signal[overlap + acelp_mem_len - M + i] = sub( signal[overlap + acelp_mem_len - M + i], old_syn[acelp_zir_len - M + i] );
#endif
            }
        }
        /* ZIR at the end of the ACELP frame */
+5 −1
Original line number Diff line number Diff line
@@ -361,7 +361,11 @@ void amr_wb_enc_fx(
    {
        lp_bckr = Mean32(hNoiseEst->bckr_fx+1, 9 );
    }
#ifdef BASOP_NOGLOB
    hp_bckr = L_shr( L_add_sat( hNoiseEst->bckr_fx[st->max_band - 1], hNoiseEst->bckr_fx[st->max_band] ), 1 );
#else
    hp_bckr = L_shr( L_add( hNoiseEst->bckr_fx[st->max_band - 1], hNoiseEst->bckr_fx[st->max_band] ), 1 );
#endif
    if( hp_bckr == 0 ) /* Avoid division by zero. */
    {
        hp_bckr = L_deposit_l(1);
+5 −1
Original line number Diff line number Diff line
@@ -340,7 +340,11 @@ Word16 coder_acelp_fx( /* o : SEGSNR for CL decision */
        hLPDmem->mem_w0 =sub(xn[L_SUBFR-1], round_fx(L_shl(Ltmp, 1)));
        move16();
        BASOP_SATURATE_WARNING_OFF_EVS;
#ifdef BASOP_NOGLOB
        hLPDmem->mem_w0 = shr_sat( hLPDmem->mem_w0, shift ); /*Qnew-1*/
#else
        hLPDmem->mem_w0 = shr( hLPDmem->mem_w0, shift ); /*Qnew-1*/
#endif
        BASOP_SATURATE_WARNING_ON_EVS;

        /*-------------------------------------------------------*
Loading