Commit 1005d09b authored by Fabian Bauer's avatar Fabian Bauer
Browse files

final cleanups

parent d7d8dda3
Loading
Loading
Loading
Loading
Loading
+8 −39
Original line number Diff line number Diff line
@@ -1163,9 +1163,14 @@ void generate_comfort_noise_enc_fx(
    return;
}

#ifndef HARMONIZE_2539_cng_energy
/*-------------------------------------------------------------------*
 * cng_energy_fx()
 *
 *
 *-------------------------------------------------------------------*/

/*! r: CNG energy */
#ifndef HARMONIZE_2539_cng_energy
Word16 cng_energy_fx(
    const Word16 element_mode, /* i  : element mode                 Q0*/
    const Word16 bwidth,       /* i  : audio bandwidh               Q0*/
@@ -1180,10 +1185,6 @@ Word16 cng_energy_fx(
    Word16 hi, lo, enr, tmp16, att;
    const Word16 *pt_res;
    Word32 L_ener, L_tmp;
#ifdef HARMONIZE_2539_cng_energy
    Word64 W_ener = W_shr( W_neg( W_deposit32_h( 1 ) ), 1 );
    move64();
#endif

    maxv = 0;
    move16();
@@ -1194,65 +1195,33 @@ Word16 cng_energy_fx(
    scale = norm_s( maxv );
    pt_res = exc;
    L_ener = L_deposit_l( 1 );
#ifdef HARMONIZE_2539_cng_energy
    Word16 scale_tmp;
    Word32 scale_tmp32;
    scale_tmp = scale;
    scale_tmp32 = L_shr( 0x40000000, 7 - 1 );
#endif
    IF( EQ_16( len, L_FRAME ) )
    {
        FOR( i = 0; i < 128; i++ )
        {
#ifdef HARMONIZE_2539_cng_energy
            tmp16 = shl( *pt_res, scale_tmp );
#else
            tmp16 = shl( *pt_res, scale );
#endif
            L_tmp = L_mult0( tmp16, tmp16 );
            pt_res++;
#ifdef HARMONIZE_2539_cng_energy
            tmp16 = shl( *pt_res, scale_tmp );
#else
            tmp16 = shl( *pt_res, scale );
#endif
            L_tmp = L_mac0_sat( L_tmp, tmp16, tmp16 ); /* 2*(Q_new+scale) */
            pt_res++;
#ifdef HARMONIZE_2539_cng_energy
            W_ener = W_msu0_32_32( W_ener, L_tmp, scale_tmp32 ); /* 2*(Q_new+scale)+1, divide by L_frame done here */
#else
            L_ener = L_add( L_ener, L_shr( L_tmp, 7 ) ); /* 2*(Q_new+scale)+1, divide by L_frame done here */
#endif
        }
    }
    ELSE /* L_FRAME16k */
    {
        FOR( i = 0; i < 160; i++ )
        {
#ifdef HARMONIZE_2539_cng_energy
            tmp16 = shl( *pt_res, scale_tmp );
#else
            tmp16 = shl( *pt_res, scale );
#endif
            L_tmp = L_mult0( tmp16, tmp16 );
            pt_res++;
#ifdef HARMONIZE_2539_cng_energy
            tmp16 = shl( *pt_res, scale_tmp );
#else
            tmp16 = shl( *pt_res, scale );
#endif
            L_tmp = L_mac0_sat( L_tmp, tmp16, tmp16 );
            L_tmp = L_mac0_sat( L_tmp, tmp16, tmp16 ); /* 2*(Q_new+scale) */
            pt_res++;
#ifdef HARMONIZE_2539_cng_energy
            W_ener = W_msu0_32_32( W_ener, Mult_32_16( L_tmp, 26214 /* 256/320, Q15 */ ), scale_tmp32 ); /* 2*(Q_new+scale)+15+1-16+1, divide by L_frame done here */
#else
            L_ener = L_add( L_ener, L_shr( Mult_32_16( L_tmp, 26214 /* 256/320, Q15 */ ), 7 ) ); /* 2*(Q_new+scale)+15+1-16+1, divide by L_frame done here */
#endif
        }
    }
#ifdef HARMONIZE_2539_cng_energy
    L_ener = L_shl( L_negate( W_extract_h( W_ener ) ), 1 );
#endif

    hi = norm_l( L_ener );
    lo = Log2_norm_lc( L_shl( L_ener, hi ) );
    hi = sub( 30, add( hi, shl( add( Q_new, scale ), 1 ) ) ); /* log2 exp in Q2*(Q_new+scale) */