/external/libxaac/decoder/ |
D | ixheaacd_esbr_rom.c | 24 const FLOAT32 ixheaacd_sub_samp_qmf_window_coeff[40 + 80 + 120 + 160 + 200 + 426 const FLOAT32 ixheaacd_random_phase[512][2] = { 940 const FLOAT32 ixheaacd_hphase_tbl[2][8] = {{1.0f, 0.0f, -1.0f, 0.0f}, 943 const FLOAT32 ixheaacd_g_lim_gains[4] = {0.70795f, 1.0f, 1.41254f, 1e10f}; 957 const FLOAT32 ixheaacd_q_gamma_table[4] = {0.0f, 1.0f, 2.0f, 4.0f}; 963 const FLOAT32 ixheaacd_cos_table_trans_qmf[7][32 * 2] = { 1106 const FLOAT32 ixheaacd_phase_vocoder_cos_table[64] = { 1119 const FLOAT32 ixheaacd_phase_vocoder_sin_table[64] = { 1133 const FLOAT32 ixheaacd_hbe_post_anal_proc_interp_coeff[4][2] = { 1141 const FLOAT32 ixheaacd_hbe_x_prod_cos_table_trans_2[(128 + 128) * 2] = { [all …]
|
D | ixheaacd_esbr_fft.c | 38 extern const FLOAT32 ixheaacd_twiddle_table_fft_float[514]; 39 const FLOAT32 ixheaacd_twidle_tbl_48[64]; 40 const FLOAT32 ixheaacd_twidle_tbl_24[32]; 42 void ixheaacd_real_synth_fft_p2(FLOAT32 *ptr_x, FLOAT32 *ptr_y, in ixheaacd_real_synth_fft_p2() 45 FLOAT32 x0r, x0i, x1r, x1i, x2r, x2i, x3r, x3i; in ixheaacd_real_synth_fft_p2() 49 const FLOAT32 *ptr_w; in ixheaacd_real_synth_fft_p2() 60 FLOAT32 *inp = ptr_x; in ixheaacd_real_synth_fft_p2() 101 const FLOAT32 *twiddles = ptr_w; in ixheaacd_real_synth_fft_p2() 102 FLOAT32 *data = ptr_y; in ixheaacd_real_synth_fft_p2() 103 FLOAT32 W1, W2, W3, W4, W5, W6; in ixheaacd_real_synth_fft_p2() [all …]
|
D | ixheaacd_esbr_rom.h | 23 extern const FLOAT32 ixheaacd_sub_samp_qmf_window_coeff[40 + 80 + 120 + 160 + 25 extern const FLOAT32 ixheaacd_random_phase[512][2]; 26 extern const FLOAT32 ixheaacd_hphase_tbl[2][8]; 28 extern const FLOAT32 ixheaacd_g_lim_gains[4]; 30 typedef FLOAT32 FIR_FILTER[5]; 37 extern const FLOAT32 ixheaacd_q_gamma_table[4]; 39 extern const FLOAT32 ixheaacd_cos_table_trans_qmf[7][32 * 2]; 41 extern const FLOAT32 ixheaacd_phase_vocoder_cos_table[64]; 42 extern const FLOAT32 ixheaacd_phase_vocoder_sin_table[64]; 43 extern const FLOAT32 ixheaacd_hbe_post_anal_proc_interp_coeff[4][2]; [all …]
|
D | ixheaacd_sbr_dec.h | 37 FLOAT32 *ptr_input_buf; 39 FLOAT32 **qmf_in_buf; 40 FLOAT32 **qmf_out_buf; 44 FLOAT32 synth_buf[1280]; 45 FLOAT32 analy_buf[640]; 46 FLOAT32 *synth_wind_coeff; 47 FLOAT32 *analy_wind_coeff; 49 FLOAT32 *synth_cos_tab; 50 FLOAT32 *analy_cos_sin_tab; 52 FLOAT32 norm_qmf_in_buf[46][128]; [all …]
|
D | ixheaacd_acelp_com.h | 28 extern const FLOAT32 ixheaacd_int_leave_gain_table[256]; 36 VOID ixheaacd_synthesis_tool_float(FLOAT32 a[], FLOAT32 x[], FLOAT32 y[], 37 WORD32 l, FLOAT32 mem[]); 39 VOID ixheaacd_synthesis_tool_float1(FLOAT32 a[], FLOAT32 x[], WORD32 l); 41 VOID ixheaacd_lpc_wt_synthesis_tool(FLOAT32 a[], FLOAT32 x[], WORD32 l); 48 VOID ixheaacd_deemphsis_tool(FLOAT32 *signal, WORD32 len, FLOAT32 mem); 50 VOID ixheaacd_residual_tool_float(FLOAT32 *a, FLOAT32 *x, FLOAT32 *y, WORD32 l, 53 VOID ixheaacd_residual_tool_float1(FLOAT32 *a, FLOAT32 *x, FLOAT32 *y, WORD32 l, 56 VOID ixheaacd_preemphsis_tool_float(FLOAT32 *signal, FLOAT32 mu, WORD32 len, 57 FLOAT32 mem); [all …]
|
D | ixheaacd_tcx_fwd_mdct.c | 60 static VOID ixheaacd_compute_coeff_poly_f(FLOAT32 lsp[], FLOAT32 *f1, in ixheaacd_compute_coeff_poly_f() 61 FLOAT32 *f2) { in ixheaacd_compute_coeff_poly_f() 62 FLOAT32 b1, b2; in ixheaacd_compute_coeff_poly_f() 63 FLOAT32 *ptr_lsp; in ixheaacd_compute_coeff_poly_f() 82 VOID ixheaacd_lsp_to_lp_conversion(FLOAT32 *lsp, FLOAT32 *lp_flt_coff_a) { in ixheaacd_lsp_to_lp_conversion() 84 FLOAT32 *ppoly_f1, *ppoly_f2; in ixheaacd_lsp_to_lp_conversion() 85 FLOAT32 *plp_flt_coff_a_bott, *plp_flt_coff_a_top; in ixheaacd_lsp_to_lp_conversion() 86 FLOAT32 poly1[ORDER_BY_2 + 2], poly2[ORDER_BY_2 + 2]; in ixheaacd_lsp_to_lp_conversion() 117 FLOAT32 data_r[LEN_SUPERFRAME * 2]; in ixheaacd_lpc_to_td() 118 FLOAT32 data_i[LEN_SUPERFRAME * 2]; in ixheaacd_lpc_to_td() [all …]
|
D | ixheaacd_func_def.h | 30 VOID ixheaacd_memset(FLOAT32 *x, WORD32 n); 32 VOID ixheaacd_mem_cpy(const FLOAT32 x[], FLOAT32 y[], WORD32 n); 34 VOID ixheaacd_vec_add(FLOAT32 x[], FLOAT32 y[], FLOAT32 z[], WORD32 n); 36 VOID ixheaacd_vec_cnst_mul(FLOAT32 a, FLOAT32 x[], FLOAT32 z[], WORD32 n); 41 FLOAT32 fsynth[], WORD32 first_lpd_flag, 47 VOID ixheaacd_acelp_update(ia_usac_data_struct *usac_data, FLOAT32 signal_out[], 55 FLOAT32 *ptr_ola_buffer, WORD32 last_was_short, 60 WORD32 k, FLOAT32 A[], FLOAT32 stab_fac, 65 WORD32 frame_index, FLOAT32 A[], WORD32 long_frame, 69 WORD32 first_lpd_flag, FLOAT32 *lsf, [all …]
|
D | ixheaacd_hbe_trans.c | 71 static FLOAT32 *ixheaacd_map_prot_filter(WORD32 filt_length) { in ixheaacd_map_prot_filter() 74 return (FLOAT32 *)&ixheaacd_sub_samp_qmf_window_coeff[0]; in ixheaacd_map_prot_filter() 77 return (FLOAT32 *)&ixheaacd_sub_samp_qmf_window_coeff[40]; in ixheaacd_map_prot_filter() 80 return (FLOAT32 *)&ixheaacd_sub_samp_qmf_window_coeff[120]; in ixheaacd_map_prot_filter() 83 return (FLOAT32 *)&ixheaacd_sub_samp_qmf_window_coeff[240]; in ixheaacd_map_prot_filter() 86 return (FLOAT32 *)&ixheaacd_sub_samp_qmf_window_coeff[400]; in ixheaacd_map_prot_filter() 89 return (FLOAT32 *)&ixheaacd_sub_samp_qmf_window_coeff[600]; in ixheaacd_map_prot_filter() 92 return (FLOAT32 *)&ixheaacd_sub_samp_qmf_window_coeff[840]; in ixheaacd_map_prot_filter() 95 return (FLOAT32 *)&ixheaacd_sub_samp_qmf_window_coeff[1160]; in ixheaacd_map_prot_filter() 98 return (FLOAT32 *)&ixheaacd_sub_samp_qmf_window_coeff[0]; in ixheaacd_map_prot_filter() [all …]
|
D | ixheaacd_esbr_polyphase.c | 55 FLOAT32 window_output[640]; in ixheaacd_complex_anal_filt() 56 FLOAT32 u[128], u_in[256], u_out[256]; in ixheaacd_complex_anal_filt() 57 FLOAT32 accu_r, accu_i; in ixheaacd_complex_anal_filt() 58 const FLOAT32 *inp_signal; in ixheaacd_complex_anal_filt() 59 FLOAT32 *anal_buf; in ixheaacd_complex_anal_filt() 61 FLOAT32 *analy_cos_sin_tab = ptr_hbe_txposer->analy_cos_sin_tab; in ixheaacd_complex_anal_filt() 62 const FLOAT32 *interp_window_coeff = ptr_hbe_txposer->analy_wind_coeff; in ixheaacd_complex_anal_filt() 63 FLOAT32 *x = ptr_hbe_txposer->analy_buf; in ixheaacd_complex_anal_filt() 66 TWICE_QMF_SYNTH_CHANNELS_NUM * sizeof(FLOAT32)); in ixheaacd_complex_anal_filt() 95 FLOAT32 temp1 = u[i] + u[2 * anal_size - i]; in ixheaacd_complex_anal_filt() [all …]
|
D | ixheaacd_pred_vec_block.c | 31 WORD16 first_bnd_idx, FLOAT32 *p_qmfh) { in ixheaacd_pvc_sb_parsing() 36 FLOAT32 *p_sbr_range_esg = &ptr_pvc_data->sbr_range_esg_arr[0]; in ixheaacd_pvc_sb_parsing() 44 p_qmfh[k] = (FLOAT32)pow(10.0f, (p_sbr_range_esg[ksg] / 10.0)); in ixheaacd_pvc_sb_parsing() 63 WORD16 first_bnd_idx, FLOAT32 *p_qmf_ener, in ixheaacd_pvc_qmf_grouping() 67 FLOAT32 esg; in ixheaacd_pvc_qmf_grouping() 68 FLOAT32 *p_esg = (FLOAT32 *)ptr_pvc_data->esg; in ixheaacd_pvc_qmf_grouping() 87 p_esg[(time_slot + 16 - 1) * 3 + ksg] = 10 * ((FLOAT32)log10(esg)); in ixheaacd_pvc_qmf_grouping() 111 FLOAT32 *p_smooth_esg = (FLOAT32 *)&ptr_pvc_data->smooth_esg_arr[0]; in ixheaacd_pvc_time_smoothing() 114 FLOAT32 *p_esg = (FLOAT32 *)&ptr_pvc_data->esg[time_slot + 16 - 1][2]; in ixheaacd_pvc_time_smoothing() 115 FLOAT32 *p_smth_wind_coeff = (FLOAT32 *)&ptr_pvc_data->p_smth_wind_coeff[0]; in ixheaacd_pvc_time_smoothing() [all …]
|
D | ixheaacd_main.h | 23 VOID ixheaacd_imdct_flt(FLOAT32 in_data[], FLOAT32 out_data[], WORD32 len); 25 VOID usac_tw_imdct(FLOAT32 in_data[], FLOAT32 out_data[], WORD32 len); 27 WORD32 ixheaacd_window_calc(FLOAT32 window[], WORD32 len, WORD32 wfun_select); 29 VOID calc_window_ratio(FLOAT32 window[], WORD32 len, WORD32 prev_len, 32 WORD32 ixheaacd_tw_window_calc(FLOAT32 window[], WORD32 len, 44 FLOAT32 exc_prev[1 + (2 * FAC_LENGTH)]; 46 FLOAT32 bpf_prev[FILTER_DELAY + LEN_SUBFR]; 50 FLOAT32 fac_gain; 51 FLOAT32 fac_fd_data[FAC_LENGTH / 4]; 53 FLOAT32 lsf_prev[ORDER]; [all …]
|
D | ixheaacd_mps_dec.h | 42 FLOAT32 re; 43 FLOAT32 im; 53 FLOAT32 *re; 54 FLOAT32 *im; 63 const FLOAT32 *num; 64 const FLOAT32 *den; 91 FLOAT32 smooth_in_energy[MAX_PARAMETER_BANDS]; 92 FLOAT32 smooth_out_energy[MAX_PARAMETER_BANDS]; 159 FLOAT32 pb_energy_prev[3][MAX_PARAMETER_BANDS]; 160 FLOAT32 avg_energy_prev[3]; [all …]
|
D | ixheaacd_tcx_fwd_alcnx.c | 56 static FLOAT32 ixheaacd_randomsign(UWORD32 *seed); 59 VOID ixheaacd_lpc_coeff_wt_apply(FLOAT32 *a, FLOAT32 *ap) { in ixheaacd_lpc_coeff_wt_apply() 60 FLOAT32 f; in ixheaacd_lpc_coeff_wt_apply() 71 WORD8 ixheaacd_float2fix(FLOAT32 *x, WORD32 *int_x, WORD32 length) { in ixheaacd_float2fix() 73 FLOAT32 ftemp = 0.0; in ixheaacd_float2fix() 83 int_x[k] = (WORD32)(x[k] * (FLOAT32)((WORD64)1 << shiftp)); in ixheaacd_float2fix() 89 VOID ixheaacd_fix2float(WORD32 *int_xn1, FLOAT32 *xn1, WORD32 length, in ixheaacd_fix2float() 92 FLOAT32 qfac; in ixheaacd_fix2float() 94 qfac = 1.0f / (FLOAT32)((WORD64)1 << (*shiftp - *preshift)); in ixheaacd_fix2float() 96 xn1[k] = (FLOAT32)((FLOAT32)int_xn1[k] * qfac); in ixheaacd_fix2float() [all …]
|
/external/libxaac/decoder/drc_src/ |
D | impd_drc_rom.h | 28 extern const FLOAT32 samp_rate_tbl[13][12]; 36 extern const FLOAT32 channel_weight[]; 38 extern const FLOAT32 dwnmix_coeff_v1[]; 39 extern const FLOAT32 eq_slope_tbl[]; 41 extern const FLOAT32 eq_gain_delta_tbl[]; 43 extern const FLOAT32 zero_pole_radius_tbl[]; 44 extern const FLOAT32 zero_pole_angle_tbl[]; 46 extern const FLOAT32 shape_filt_lf_y1_bound_tbl[][3]; 47 extern const FLOAT32 shape_filt_hf_y1_bound_tbl[][3]; 49 extern const FLOAT32 shape_filt_lf_gain_offset_tbl[][3]; [all …]
|
D | impd_drc_gain_dec.c | 41 WORD32 drc_band, FLOAT32 in_param_db_gain, in impd_gain_db_to_lin() 42 FLOAT32 in_param_db_slope, FLOAT32* out_param_lin_gain, in impd_gain_db_to_lin() 43 FLOAT32* out_param_lin_slope) { in impd_gain_db_to_lin() 44 FLOAT32 loc_db_gain = in_param_db_gain; in impd_gain_db_to_lin() 45 FLOAT32 gain_ratio = 1.0; in impd_gain_db_to_lin() 75 (FLOAT32)pow(2.0, (FLOAT64)(gain_ratio * loc_db_gain / 6.0f)); in impd_gain_db_to_lin() 80 *out_param_lin_gain *= (FLOAT32)pow( in impd_gain_db_to_lin() 85 *out_param_lin_gain *= (FLOAT32)pow( in impd_gain_db_to_lin() 101 FLOAT32 in_db_level, FLOAT32* out_db_gain) { in impd_compressor_io_sigmoid() 102 FLOAT32 tmp; in impd_compressor_io_sigmoid() [all …]
|
D | impd_drc_filter_bank.h | 39 FLOAT32 f_cross_norm; 40 FLOAT32 gamma; 41 FLOAT32 delta; 45 FLOAT32 s00; 46 FLOAT32 s01; 47 FLOAT32 s10; 48 FLOAT32 s11; 52 FLOAT32 s0; 53 FLOAT32 s1; 57 FLOAT32 a0; [all …]
|
D | impd_parametric_drc_dec.h | 28 FLOAT32 b0, b1, b2; 29 FLOAT32 a1, a2; 33 FLOAT32 z1, z2; 44 FLOAT32 level[PARAM_DRC_TYPE_FF_LEVEL_ESTIM_FRAME_COUNT_MAX]; 46 FLOAT32 level_estim_ch_weight[MAX_CHANNEL_COUNT]; 52 FLOAT32 weighting_filt[AUDIO_CODEC_SUBBAND_COUNT_MAX]; 57 FLOAT32 ref_level_parametric_drc; 63 FLOAT32 gain_smooth_attack_alpha_slow; 64 FLOAT32 gain_smooth_rel_alpha_slow; 65 FLOAT32 gain_smooth_attack_alpha_fast; [all …]
|
D | impd_drc_rom.c | 31 const FLOAT32 samp_rate_tbl[13][12] = { 106 const FLOAT32 channel_weight[] = { 110 const FLOAT32 dwnmix_coeff_v1[] = { 116 const FLOAT32 eq_slope_tbl[] = {-32.0f, -24.0f, -18.0f, -12.0f, -7.0f, -4.0f, 120 const FLOAT32 eq_gain_delta_tbl[] = { 127 const FLOAT32 zero_pole_radius_tbl[] = { 161 const FLOAT32 zero_pole_angle_tbl[] = { 195 const FLOAT32 shape_filt_lf_y1_bound_tbl[][3] = { 202 const FLOAT32 shape_filt_hf_y1_bound_tbl[][3] = { 207 const FLOAT32 shape_filt_lf_gain_offset_tbl[][3] = { [all …]
|
D | impd_drc_peak_limiter.h | 27 FLOAT32 attack_time; 28 FLOAT32 release_time; 29 FLOAT32 attack_constant; 30 FLOAT32 release_constant; 31 FLOAT32 limit_threshold; 36 FLOAT32 gain_modified; 38 FLOAT32 *delayed_input; 40 FLOAT32 *max_buf; 41 FLOAT32 min_gain; 42 FLOAT32 *buffer; [all …]
|
D | impd_drc_eq.c | 51 FLOAT32 sample_rate, in impd_derive_subband_center_freq() 52 FLOAT32* subband_center_freq) { in impd_derive_subband_center_freq() 54 FLOAT32 width, offset; in impd_derive_subband_center_freq() 60 width = 0.5f * sample_rate / (FLOAT32)eq_subband_gain_count; in impd_derive_subband_center_freq() 79 FLOAT32* coeff, FLOAT32 frequency_radian, in impd_calc_fir_filt_response() 80 FLOAT32* response) { in impd_calc_fir_filt_response() 82 FLOAT32 sum = 0.0f; in impd_calc_fir_filt_response() 91 sum += coeff[o2 - m] * (FLOAT32)cos(m * frequency_radian); in impd_calc_fir_filt_response() 97 sum += coeff[o2 - m] * (FLOAT32)sin(m * frequency_radian); in impd_calc_fir_filt_response() 105 sum += coeff[o2 - m] * (FLOAT32)cos((m - 0.5f) * frequency_radian); in impd_calc_fir_filt_response() [all …]
|
D | impd_drc_eq.h | 50 FLOAT32 state[EQ_CHANNEL_COUNT_MAX][EQ_AUDIO_DELAY_MAX]; 54 FLOAT32 radius; 55 FLOAT32 coeff[2]; 60 FLOAT32 coeff[EQ_FIR_FILTER_SIZE_MAX]; 61 FLOAT32 state[EQ_CHANNEL_COUNT_MAX][EQ_FIR_FILTER_SIZE_MAX]; 67 FLOAT32 subband_coeff[EQ_SUBBAND_COUNT_MAX]; 89 FLOAT32 in_state_1; 90 FLOAT32 in_state_2; 91 FLOAT32 out_state_1; 92 FLOAT32 out_state_2; [all …]
|
D | impd_drc_process_audio.h | 30 FLOAT32** non_interleaved_audio; 40 FLOAT32** audio_io_buffer_delayed; 41 FLOAT32** audio_buffer_delayed_real; 42 FLOAT32** audio_buffer_delayed_imag; 43 FLOAT32** audio_in_out_buf; 44 FLOAT32** audio_real_buff; 45 FLOAT32** audio_imag_buff; 52 FLOAT32* audio_io_buf[], 58 FLOAT32* audio_in_out_buf[], ia_audio_in_out_buf* audio_io_buf_internal); 61 FLOAT32* audio_real_buff[], FLOAT32* audio_imag_buff[], [all …]
|
D | impd_drc_struct.h | 155 FLOAT32 gain_offset; 156 FLOAT32 y1_bound; 157 FLOAT32 warped_gain_max; 158 FLOAT32 factor; 159 FLOAT32 coeff_sum; 160 FLOAT32 partial_coeff_sum; 161 FLOAT32 g_norm; 162 FLOAT32 a1; 163 FLOAT32 a2; 164 FLOAT32 b1; [all …]
|
D | impd_drc_uni_gain_dec.h | 30 FLOAT32 lpcm_gains[2 * AUDIO_CODEC_FRAME_SIZE_MAX + MAX_SIGNAL_DELAY]; 53 FLOAT32 limiter_peak_target; 54 FLOAT32 loudness_normalization_gain_db; 57 FLOAT32 compress; 58 FLOAT32 boost; 90 impd_map_gain(FLOAT32 gain_in_db, FLOAT32* gain_out_db); 94 WORD32 drc_band, FLOAT32 loc_db_gain, 95 FLOAT32 in_param_db_slope, 96 FLOAT32* out_param_lin_gain, 97 FLOAT32* out_param_lin_slope); [all …]
|
D | impd_drc_filter_bank.c | 36 FLOAT32 gamma = normal_cross_freq[crossover_freq_idx].gamma; in impd_compute_filt_coeff() 37 FLOAT32 delta = normal_cross_freq[crossover_freq_idx].delta; in impd_compute_filt_coeff() 249 FLOAT32* input, FLOAT32* output) { in impd_iir_second_order_filter_all_pass() 251 FLOAT32 tmp; in impd_iir_second_order_filter_all_pass() 252 FLOAT32 a1 = filter->a1; in impd_iir_second_order_filter_all_pass() 253 FLOAT32 a2 = filter->a2; in impd_iir_second_order_filter_all_pass() 254 FLOAT32 b0 = filter->b0; in impd_iir_second_order_filter_all_pass() 255 FLOAT32 b1 = filter->b1; in impd_iir_second_order_filter_all_pass() 256 FLOAT32 b2 = filter->b2; in impd_iir_second_order_filter_all_pass() 258 FLOAT32 st1 = filter->x_p[chan_idx * 2]; in impd_iir_second_order_filter_all_pass() [all …]
|