Commit abecd15c authored by Nishant S Kulgod's avatar Nishant S Kulgod
Browse files

commit 1

parent e0d6e5bb
Loading
Loading
Loading
Loading
Loading
+15 −4
Original line number Diff line number Diff line
@@ -209,16 +209,27 @@ ivas_error ivas_cpe_enc_fx(
    Copy32( data_fx_ch0, sts[0]->input32_fx, input_frame ); // Q(q_data_fx)
    sts[0]->q_inp32 = q_data_fx;
    move16();
    Copy_Scale_sig32_16( sts[0]->input32_fx, sts[0]->input_fx, input_frame, sub( Q16, q_data_fx ) ); // Q(q_data_fx) -> Q0
    sts[0]->q_inp = 0;
    Word16 norm = L_norm_arr( sts[0]->input32_fx, input_frame );
    scale_sig32( sts[0]->input32_fx, input_frame, norm );
    sts[0]->q_inp32 = add( sts[0]->q_inp32, norm );
    move16();

    Copy_Scale_sig32_16( sts[0]->input32_fx, sts[0]->input_fx, input_frame, 0 );
    sts[0]->q_inp = sub( sts[0]->q_inp32, Q16 );
    move16();
    IF( data_fx_ch1 != NULL ) /*this may happen for cases with odd number of channels*/
    {
        Copy32( data_fx_ch1, sts[1]->input32_fx, input_frame ); // Q(q_data_fx)
        sts[1]->q_inp32 = q_data_fx;
        move16();
        Copy_Scale_sig32_16( sts[1]->input32_fx, sts[1]->input_fx, input_frame, sub( Q16, q_data_fx ) ); // Q(q_data_fx) -> Q0
        sts[1]->q_inp = 0;

        norm = L_norm_arr( sts[1]->input32_fx, input_frame );
        scale_sig32( sts[1]->input32_fx, input_frame, norm );
        sts[1]->q_inp32 = add( sts[1]->q_inp32, norm );
        move16();

        Copy_Scale_sig32_16( sts[1]->input32_fx, sts[1]->input_fx, input_frame, 0 );
        sts[1]->q_inp = sub( sts[1]->q_inp32, Q16 );
        move16();
    }

+10 −19
Original line number Diff line number Diff line
@@ -67,7 +67,7 @@ static void unclr_calc_corr_features_fx(
#define XH_BIAS_FX_Q15            13107
#define XL_WIDTH_FX_Q15           3932
#define XH_WIDTH_FX_Q15           4915
#define SMOOTH_DIST_FACTOR_FX_Q15 14418
#define SMOOTH_DIST_FACTOR_FX_Q15 13107
#define A_BIAS_FX_Q15             3277
#define B_BIAS_FX_Q15             -16384
#define A_WIDTH_FX_Q31            32212264
@@ -840,23 +840,13 @@ static void corrStatsEst_fx(
    scale_sig32( corrEst_fx, 2 * L_NCSHIFT_DS + 1, temp ); /* Q31-corrEst_exp */
    corrEst_exp = sub( corrEst_exp, temp );

    IF( GT_16( corrEst_exp, hStereoTCA->corrEstPrev_exp ) )
    {
        scale_sig32( hStereoTCA->corrEstPrev_fx[0], 2 * L_NCSHIFT_DS + 1, sub( hStereoTCA->corrEstPrev_exp, corrEst_exp ) ); /* Q31-hStereoTCA->corrEstPrev_exp */
        scale_sig32( hStereoTCA->corrEstPrev_fx[1], 2 * L_NCSHIFT_DS + 1, sub( hStereoTCA->corrEstPrev_exp, corrEst_exp ) ); /* Q31-hStereoTCA->corrEstPrev_exp */
    Copy32( corrEst_fx, hStereoTCA->corrEstPrev_fx[2], tempLen ); /* Q31-corrEst_exp */
    hStereoTCA->corrEstPrev_exp = corrEst_exp;
    move16();
    }
    ELSE
    {
        Copy32( corrEst_fx, hStereoTCA->corrEstPrev_fx[2], tempLen );                                                        /* Q31-corrEst_exp */
        scale_sig32( hStereoTCA->corrEstPrev_fx[2], 2 * L_NCSHIFT_DS + 1, sub( corrEst_exp, hStereoTCA->corrEstPrev_exp ) ); /* Q31-corrEst_exp */
    }
    scale_sig32( hStereoTCA->corrEstPrev_fx[0], 2 * L_NCSHIFT_DS + 1, -1 ); /* Q31-hStereoTCA->corrEstPrev_exp-1 */
    scale_sig32( hStereoTCA->corrEstPrev_fx[1], 2 * L_NCSHIFT_DS + 1, -1 ); /* Q31-hStereoTCA->corrEstPrev_exp-1 */
    scale_sig32( hStereoTCA->corrEstPrev_fx[2], 2 * L_NCSHIFT_DS + 1, -1 ); /* Q31-hStereoTCA->corrEstPrev_exp-1 */
    hStereoTCA->corrEstPrev_exp = add( hStereoTCA->corrEstPrev_exp, 1 );
    Word16 gb = find_guarded_bits_fx( 2 * L_NCSHIFT_DS + 1 );

    scale_sig32( hStereoTCA->corrEstPrev_fx[2], 2 * L_NCSHIFT_DS + 1, -gb ); /* Q31-hStereoTCA->corrEstPrev_exp-1 */
    hStereoTCA->corrEstPrev_exp = add( hStereoTCA->corrEstPrev_exp, gb );
    move16();
    Word32 buf1_fx_temp[L_FRAME_DS];
    Word32 buf2_fx_temp[L_FRAME_DS];
@@ -1032,7 +1022,8 @@ static void corrStatsEst_fx(
        loc_weight_win_fx[i] = win_bias_fx; // Q15
        move16();
    }

    reg_prv_corr_fx = L_shr( reg_prv_corr_fx, 1 );
    reg_prv_corr_exp = add( reg_prv_corr_exp, 1 );
    Word16 x = TRUNC_FX( reg_prv_corr_fx, reg_prv_corr_exp ); /* Q0 */
    move16();
    for ( i = 0, j = ( L_NCSHIFT_DS - x ); i < 2 * L_NCSHIFT_DS + 1; i++, j++ )
+1 −0
Original line number Diff line number Diff line
@@ -865,6 +865,7 @@ static void encode_energies_ivas_fx(
    }

    phi = mult_r( angle, 20861 );
    phi = add( phi, 2 ); // adjust?

    rangeCoderFinalizationFBits_fx( hPVQ->rc_num_bits, (UWord32) hPVQ->rc_range, &qzero );
    densityAngle2RmsProjEnc_fx( density, phi, &index_phi, &ir, &il, &oppRQ3 );