xref: /aosp_15_r20/external/libxaac/common/ixheaac_esbr_rom.h (revision 15dc779a375ca8b5125643b829a8aa4b70d7f451)
1 /******************************************************************************
2  *                                                                            *
3  * Copyright (C) 2023 The Android Open Source Project
4  *
5  * Licensed under the Apache License, Version 2.0 (the "License");
6  * you may not use this file except in compliance with the License.
7  * You may obtain a copy of the License at:
8  *
9  * http://www.apache.org/licenses/LICENSE-2.0
10  *
11  * Unless required by applicable law or agreed to in writing, software
12  * distributed under the License is distributed on an "AS IS" BASIS,
13  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14  * See the License for the specific language governing permissions and
15  * limitations under the License.
16  *
17  *****************************************************************************
18  * Originally developed and contributed by Ittiam Systems Pvt. Ltd, Bangalore
19 */
20 #ifndef IXHEAAC_ESBR_ROM_H
21 #define IXHEAAC_ESBR_ROM_H
22 
23 extern const FLOAT32
24     ixheaac_sub_samp_qmf_window_coeff[40 + 80 + 120 + 160 + 200 + 240 + 320 + 400 + 440];
25 extern const FLOAT32 ixheaac_random_phase[512][2];
26 extern const FLOAT32 ixheaac_hphase_tbl[2][8];
27 
28 extern const FLOAT32 ixheaac_g_lim_gains[4];
29 
30 typedef FLOAT32 ia_fir_table_struct[5];
31 extern const ia_fir_table_struct ixheaac_fir_0;
32 extern const ia_fir_table_struct ixheaac_fir_1;
33 extern const ia_fir_table_struct ixheaac_fir_2;
34 extern const ia_fir_table_struct ixheaac_fir_3;
35 extern const ia_fir_table_struct ixheaac_fir_4;
36 extern const ia_fir_table_struct *ixheaac_fir_table[5];
37 extern const FLOAT32 ixheaac_q_gamma_table[4];
38 extern const WORD32 ixheaac_start_subband2kL_tbl[33];
39 extern const FLOAT32 ixheaac_cos_table_trans_qmf[7][32 * 2];
40 
41 extern const FLOAT32 ixheaac_phase_vocoder_cos_table[64];
42 extern const FLOAT32 ixheaac_phase_vocoder_sin_table[64];
43 extern const FLOAT32 ixheaac_hbe_post_anal_proc_interp_coeff[4][2];
44 
45 extern const FLOAT32 ixheaac_hbe_x_prod_cos_table_trans_2[2 * (128 + 128)];
46 extern const FLOAT32 ixheaac_hbe_x_prod_cos_table_trans_3[2 * (128 + 128)];
47 extern const FLOAT32 ixheaac_hbe_x_prod_cos_table_trans_4[2 * (128 + 128)];
48 extern const FLOAT32 ixheaac_hbe_x_prod_cos_table_trans_4_1[2 * (128 + 128)];
49 
50 extern const FLOAT32 ixheaac_synth_cos_table_kl_4[16];
51 extern const FLOAT32 ixheaac_synth_cos_table_kl_8[32];
52 extern const FLOAT32 ixheaac_synth_cos_table_kl_12[48];
53 extern const FLOAT32 ixheaac_synth_cos_table_kl_16[64];
54 extern const FLOAT32 ixheaac_synth_cos_table_kl_20[40 * 20];
55 extern const FLOAT32 ixheaac_analy_cos_sin_table_kl_8[32];
56 extern const FLOAT32 ixheaac_analy_cos_sin_table_kl_16[64];
57 extern const FLOAT32 ixheaac_analy_cos_sin_table_kl_24[96];
58 extern const FLOAT32 ixheaac_analy_cos_sin_table_kl_32[128];
59 extern const FLOAT32 ixheaac_analy_cos_sin_table_kl_40[40 * 40 * 2];
60 
61 extern const FLOAT32 ixheaac_dft_hbe_window_ts_12[13];
62 extern const FLOAT32 ixheaac_dft_hbe_window_ts_18[19];
63 
64 extern const FLOAT32 ixheaac_sine_pi_n_by_1024[1024];
65 extern const FLOAT32 ixheaac_sine_pi_n_by_960[960];
66 extern const FLOAT32 ixheaac_sine_pi_n_by_896[896];
67 extern const FLOAT32 ixheaac_sine_pi_n_by_832[832];
68 extern const FLOAT32 ixheaac_sine_pi_n_by_768[768];
69 extern const FLOAT32 ixheaac_sine_pi_n_by_704[704];
70 extern const FLOAT32 ixheaac_sine_pi_n_by_640[640];
71 extern const FLOAT32 ixheaac_sine_pi_n_by_576[576];
72 extern const FLOAT32 ixheaac_sine_pi_by_2_N[];
73 extern const FLOAT32 ixheaac_sin_cos_448[];
74 extern const FLOAT32 ixheaac_sin_cos_672[];
75 extern const FLOAT32 ixheaac_sin_cos_512[];
76 extern const FLOAT32 ixheaac_sin_cos_576[];
77 extern const FLOAT32 ixheaac_sin_cos_384[];
78 extern const FLOAT32 ixheaac_sin_cos_768[];
79 
80 extern const FLOAT32 ixheaac_sel_case[5][8];
81 extern const FLOAT32 ixheaac_sub_samp_qmf_window_coeff_28_36[280 + 360];
82 extern const FLOAT32 ixheaac_analy_cos_sin_table_kl_56[56 * 56 * 2];
83 #endif /* IXHEAAC_ESBR_ROM_H */
84