Loading lib_enc/ivas_dirac_enc_fx.c +18 −3 Original line number Diff line number Diff line Loading @@ -1203,19 +1203,22 @@ void ivas_dirac_param_est_enc_fx( move16(); } Word16 buffer_intensity_real_single_q; Word16 buffer_intensity_real_single_q, min_shift = MAX_16; move16(); buffer_intensity_real_single_q = hDirAC->buffer_intensity_real_q[0][0][0]; move16(); FOR( i = 0; i < DIRAC_NUM_DIMS; i++ ) { FOR( j = 0; j < hDirAC->no_col_avg_diff; j++ ) { min_shift = s_min( min_shift, L_norm_arr( hDirAC->buffer_intensity_real_fx[i][j], num_freq_bands ) ); FOR( k = 0; k < num_freq_bands; k++ ) { buffer_intensity_real_single_q = s_min( buffer_intensity_real_single_q, hDirAC->buffer_intensity_real_q[i][j][k] ); } } } buffer_intensity_real_single_q = add( buffer_intensity_real_single_q, min_shift ); FOR( i = 0; i < DIRAC_NUM_DIMS; i++ ) { FOR( j = 0; j < hDirAC->no_col_avg_diff; j++ ) Loading Loading @@ -1569,8 +1572,20 @@ static void computeIntensityVector_enc_fx( #endif } #ifdef NONBE_IMPROVE_DIRAC_INTENSITY_PREC norm = s_min( W_norm( tmp_1 ), W_norm( tmp_2 ) ); norm = 63; move16(); IF( tmp_1 != 0 ) { norm = s_min( norm, W_norm( tmp_1 ) ); } IF( tmp_2 != 0 ) { norm = s_min( norm, W_norm( tmp_2 ) ); } IF( tmp_3 != 0 ) { norm = s_min( norm, W_norm( tmp_3 ) ); } intensity_real[0][i] = W_extract_h( W_shl( tmp_1, norm ) ); // shift_value - (gb - norm) move32(); intensity_real[1][i] = W_extract_h( W_shl( tmp_2, norm ) ); // shift_value - (gb - norm) Loading Loading
lib_enc/ivas_dirac_enc_fx.c +18 −3 Original line number Diff line number Diff line Loading @@ -1203,19 +1203,22 @@ void ivas_dirac_param_est_enc_fx( move16(); } Word16 buffer_intensity_real_single_q; Word16 buffer_intensity_real_single_q, min_shift = MAX_16; move16(); buffer_intensity_real_single_q = hDirAC->buffer_intensity_real_q[0][0][0]; move16(); FOR( i = 0; i < DIRAC_NUM_DIMS; i++ ) { FOR( j = 0; j < hDirAC->no_col_avg_diff; j++ ) { min_shift = s_min( min_shift, L_norm_arr( hDirAC->buffer_intensity_real_fx[i][j], num_freq_bands ) ); FOR( k = 0; k < num_freq_bands; k++ ) { buffer_intensity_real_single_q = s_min( buffer_intensity_real_single_q, hDirAC->buffer_intensity_real_q[i][j][k] ); } } } buffer_intensity_real_single_q = add( buffer_intensity_real_single_q, min_shift ); FOR( i = 0; i < DIRAC_NUM_DIMS; i++ ) { FOR( j = 0; j < hDirAC->no_col_avg_diff; j++ ) Loading Loading @@ -1569,8 +1572,20 @@ static void computeIntensityVector_enc_fx( #endif } #ifdef NONBE_IMPROVE_DIRAC_INTENSITY_PREC norm = s_min( W_norm( tmp_1 ), W_norm( tmp_2 ) ); norm = 63; move16(); IF( tmp_1 != 0 ) { norm = s_min( norm, W_norm( tmp_1 ) ); } IF( tmp_2 != 0 ) { norm = s_min( norm, W_norm( tmp_2 ) ); } IF( tmp_3 != 0 ) { norm = s_min( norm, W_norm( tmp_3 ) ); } intensity_real[0][i] = W_extract_h( W_shl( tmp_1, norm ) ); // shift_value - (gb - norm) move32(); intensity_real[1][i] = W_extract_h( W_shl( tmp_2, norm ) ); // shift_value - (gb - norm) Loading