blob: f10e600f2ba3ce36b22093bb720ea0d45237f352 [file] [log] [blame]
Bob Badour39d57e02021-02-12 18:26:03 -08001package {
2 default_applicable_licenses: ["external_libxaac_license"],
3}
4
5// Added automatically by a large-scale-change
6//
7// large-scale-change included anything that looked like it might be a license
8// text as a license_text. e.g. LICENSE, NOTICE, COPYING etc.
9//
10// Please consider removing redundant or irrelevant files from 'license_text:'.
11// See: http://go/android-license-faq
12license {
13 name: "external_libxaac_license",
14 visibility: [":__subpackages__"],
15 license_kinds: [
16 "SPDX-license-identifier-Apache-2.0",
17 ],
18 license_text: [
19 "LICENSE",
20 "NOTICE",
21 ],
22}
23
Ray Essick51aa06e2018-05-17 14:36:48 -070024cc_library_static {
25 name: "libxaacdec",
26
27 vendor_available: true,
Cindy Zhou33385d02020-12-04 09:02:36 -080028 host_supported: true,
Ray Essick51aa06e2018-05-17 14:36:48 -070029 cflags: [
Cindy Zhou33385d02020-12-04 09:02:36 -080030 "-O3",
Ray Essick51aa06e2018-05-17 14:36:48 -070031 ],
32
33 export_include_dirs: [
Ray Essick49082472018-05-25 11:19:24 -070034 "decoder",
Cindy Zhou33385d02020-12-04 09:02:36 -080035 "decoder/drc_src",
Ray Essick51aa06e2018-05-17 14:36:48 -070036 ],
37
38 srcs: [
39 "decoder/ixheaacd_aacdecoder.c",
40 "decoder/ixheaacd_aacpluscheck.c",
41 "decoder/ixheaacd_aac_imdct.c",
42 "decoder/ixheaacd_aac_rom.c",
43 "decoder/ixheaacd_aac_tns.c",
44 "decoder/ixheaacd_acelp_bitparse.c",
45 "decoder/ixheaacd_acelp_decode.c",
46 "decoder/ixheaacd_acelp_mdct.c",
47 "decoder/ixheaacd_acelp_tools.c",
48 "decoder/ixheaacd_adts_crc_check.c",
49 "decoder/ixheaacd_api.c",
50 "decoder/ixheaacd_arith_dec.c",
51 "decoder/ixheaacd_avq_dec.c",
52 "decoder/ixheaacd_avq_rom.c",
53 "decoder/ixheaacd_basic_ops.c",
54 "decoder/ixheaacd_bitbuffer.c",
55 "decoder/ixheaacd_block.c",
56 "decoder/ixheaacd_channel.c",
57 "decoder/ixheaacd_common_initfuncs.c",
58 "decoder/ixheaacd_common_lpfuncs.c",
59 "decoder/ixheaacd_common_rom.c",
60 "decoder/ixheaacd_create.c",
61 "decoder/ixheaacd_decode_main.c",
62 "decoder/ixheaacd_dsp_fft32x32s.c",
63 "decoder/ixheaacd_env_calc.c",
64 "decoder/ixheaacd_env_dec.c",
65 "decoder/ixheaacd_env_extr.c",
66 "decoder/ixheaacd_esbr_envcal.c",
67 "decoder/ixheaacd_esbr_polyphase.c",
68 "decoder/ixheaacd_esbr_rom.c",
69 "decoder/ixheaacd_esbr_fft.c",
70 "decoder/ixheaacd_ext_ch_ele.c",
71 "decoder/ixheaacd_fft.c",
72 "decoder/ixheaacd_freq_sca.c",
73 "decoder/ixheaacd_fwd_alias_cnx.c",
74 "decoder/ixheaacd_hbe_trans.c",
75 "decoder/ixheaacd_headerdecode.c",
76 "decoder/ixheaacd_hufftables.c",
77 "decoder/ixheaacd_huff_tools.c",
78 "decoder/ixheaacd_hybrid.c",
79 "decoder/ixheaacd_imdct.c",
80 "decoder/ixheaacd_initfuncs.c",
81 "decoder/ixheaacd_init_config.c",
82 "decoder/ixheaacd_longblock.c",
83 "decoder/ixheaacd_lpc.c",
84 "decoder/ixheaacd_lpc_dec.c",
85 "decoder/ixheaacd_lpfuncs.c",
86 "decoder/ixheaacd_lpp_tran.c",
87 "decoder/ixheaacd_lt_predict.c",
88 "decoder/ixheaacd_mps_dec.c",
89 "decoder/ixheaacd_mps_decorr.c",
90 "decoder/ixheaacd_mps_hybrid_filt.c",
91 "decoder/ixheaacd_mps_parse.c",
92 "decoder/ixheaacd_mps_pre_mix.c",
93 "decoder/ixheaacd_mps_rom.c",
94 "decoder/ixheaacd_mps_smoothing.c",
95 "decoder/ixheaacd_mps_temp_process.c",
96 "decoder/ixheaacd_mps_temp_reshape.c",
97 "decoder/ixheaacd_pns_js_thumb.c",
98 "decoder/ixheaacd_pred_vec_block.c",
99 "decoder/ixheaacd_process.c",
100 "decoder/ixheaacd_ps_bitdec.c",
101 "decoder/ixheaacd_ps_dec.c",
102 "decoder/ixheaacd_pvc_rom.c",
103 "decoder/ixheaacd_rom.c",
104 "decoder/ixheaacd_sbrdecoder.c",
105 "decoder/ixheaacd_sbrdec_initfuncs.c",
106 "decoder/ixheaacd_sbrdec_lpfuncs.c",
107 "decoder/ixheaacd_sbr_crc.c",
108 "decoder/ixheaacd_sbr_dec.c",
109 "decoder/ixheaacd_sbr_rom.c",
110 "decoder/ixheaacd_spectrum_dec.c",
111 "decoder/ixheaacd_stereo.c",
112 "decoder/ixheaacd_tcx_fwd_alcnx.c",
113 "decoder/ixheaacd_tcx_fwd_mdct.c",
114 "decoder/ixheaacd_thumb_ps_dec.c",
115 "decoder/ixheaacd_tns.c",
116 "decoder/ixheaacd_basic_funcs.c",
117 "decoder/ixheaacd_Windowing.c",
118 "decoder/ixheaacd_latmdemux.c",
119 "decoder/ixheaacd_multichannel.c",
120 "decoder/ixheaacd_drc_freq_dec.c",
121 "decoder/ixheaacd_mps_poly_filt.c",
122 "decoder/ixheaacd_huff_code_reorder.c",
123 "decoder/ixheaacd_rev_vlc.c",
Harish Mahendrakar8eb646f2018-05-09 14:23:00 -0700124 "decoder/ixheaacd_qmf_dec.c",
Ray Essick51aa06e2018-05-17 14:36:48 -0700125 "decoder/drc_src/impd_drc_api.c",
126 "decoder/drc_src/impd_drc_bitbuffer.c",
127 "decoder/drc_src/impd_drc_dec.c",
128 "decoder/drc_src/impd_drc_dynamic_payload.c",
129 "decoder/drc_src/impd_drc_eq.c",
130 "decoder/drc_src/impd_drc_extr_delta_coded_info.c",
131 "decoder/drc_src/impd_drc_filter_bank.c",
132 "decoder/drc_src/impd_drc_gain_dec.c",
133 "decoder/drc_src/impd_drc_gain_decoder.c",
Ray Essick51aa06e2018-05-17 14:36:48 -0700134 "decoder/drc_src/impd_drc_init.c",
135 "decoder/drc_src/impd_drc_interface_decoder.c",
Ray Essick51aa06e2018-05-17 14:36:48 -0700136 "decoder/drc_src/impd_drc_loudness_control.c",
Ray Essick51aa06e2018-05-17 14:36:48 -0700137 "decoder/drc_src/impd_drc_main_td_process.c",
Ray Essick51aa06e2018-05-17 14:36:48 -0700138 "decoder/drc_src/impd_drc_multiband.c",
139 "decoder/drc_src/impd_drc_parametric_dec.c",
140 "decoder/drc_src/impd_drc_peak_limiter.c",
141 "decoder/drc_src/impd_drc_process.c",
142 "decoder/drc_src/impd_drc_rom.c",
143 "decoder/drc_src/impd_drc_selection_process.c",
144 "decoder/drc_src/impd_drc_selection_process_drcset_selection.c",
145 "decoder/drc_src/impd_drc_selection_process_init.c",
146 "decoder/drc_src/impd_drc_shape_filter.c",
147 "decoder/drc_src/impd_drc_static_payload.c",
Ray Essick51aa06e2018-05-17 14:36:48 -0700148 ],
149
150 sanitize: {
151 misc_undefined: [
152 "unsigned-integer-overflow",
153 "signed-integer-overflow",
Ivan Lozano1e4bbe92018-10-04 15:40:35 -0700154 "bounds",
Ray Essick51aa06e2018-05-17 14:36:48 -0700155 ],
Cindy Zhou33385d02020-12-04 09:02:36 -0800156 cfi: true,
157 config: {
158 cfi_assembly_support: true,
159 },
Ray Essick51aa06e2018-05-17 14:36:48 -0700160 },
161
162 arch: {
163 arm: {
164 local_include_dirs: [
165 ],
166
167 srcs: [
168 "decoder/generic/ixheaacd_function_selector_generic.c",
Harish Mahendrakar8eb646f2018-05-09 14:23:00 -0700169 "decoder/generic/ixheaacd_qmf_dec_generic.c",
Ray Essick51aa06e2018-05-17 14:36:48 -0700170 ],
171 neon: {
172 cflags: [
173 ],
174
175 local_include_dirs: [
176 "decoder/armv7",
177 ],
178
179 srcs: [
Harish Mahendrakar8eb646f2018-05-09 14:23:00 -0700180 "decoder/armv7/ixheaacd_qmf_dec_armv7.c",
Ray Essick51aa06e2018-05-17 14:36:48 -0700181 "decoder/armv7/ixheaacd_fft_armv7.c",
182 "decoder/armv7/ixheaacd_function_selector_armv7.c",
183 "decoder/armv7/ixheaacd_overlap_add1.s",
184 "decoder/armv7/ixheaacd_overlap_add2.s",
185 "decoder/armv7/ixheaacd_lap1.s",
186 "decoder/armv7/ixheaacd_dec_DCT2_64_asm.s",
187 "decoder/armv7/ixheaacd_apply_rot.s",
188 "decoder/armv7/ixheaacd_autocorr_st2.s",
189 "decoder/armv7/ixheaacd_auto_corr.s",
190 "decoder/armv7/ixheaacd_calcmaxspectralline.s",
191 "decoder/armv7/ixheaacd_conv_ergtoamplitude.s",
192 "decoder/armv7/ixheaacd_conv_ergtoamplitudelp.s",
193 "decoder/armv7/ixheaacd_cos_sin_mod.s",
194 "decoder/armv7/ixheaacd_dct3_32.s",
195 "decoder/armv7/ixheaacd_decorr_filter2.s",
196 "decoder/armv7/ixheaacd_enery_calc_per_subband.s",
197 "decoder/armv7/ixheaacd_expsubbandsamples.s",
198 "decoder/armv7/ixheaacd_ffr_divide16.s",
199 "decoder/armv7/ixheaacd_fwd_modulation.s",
200 "decoder/armv7/ixheaacd_harm_idx_zerotwolp.s",
201 "decoder/armv7/ixheaacd_imdct_using_fft.s",
202 "decoder/armv7/ixheaacd_inv_dit_fft_8pt.s",
203 "decoder/armv7/ixheaacd_no_lap1.s",
204 "decoder/armv7/ixheaacd_post_radix_compute2.s",
205 "decoder/armv7/ixheaacd_post_radix_compute4.s",
206 "decoder/armv7/ixheaacd_post_twiddle.s",
207 "decoder/armv7/ixheaacd_pre_twiddle_compute.s",
208 "decoder/armv7/ixheaacd_post_twiddle_overlap.s",
209 "decoder/armv7/ixheaacd_radix4_bfly.s",
210 "decoder/armv7/ixheaacd_rescale_subbandsamples.s",
211 "decoder/armv7/ixheaacd_sbr_imdct_using_fft.s",
212 "decoder/armv7/ixheaacd_sbr_qmfanal32_winadds.s",
213 "decoder/armv7/ixheaacd_sbr_qmfsyn64_winadd.s",
214 "decoder/armv7/ixheaacd_shiftrountine.s",
215 "decoder/armv7/ixheaacd_shiftrountine_with_round.s",
216 "decoder/armv7/ixheaacd_tns_ar_filter_fixed_32x16.s",
217 "decoder/armv7/ixheaacd_tns_parcor2lpc_32x16.s",
218 "decoder/armv7/ixheaacd_esbr_radix4bfly.s",
219 "decoder/armv7/ixheaacd_esbr_cos_sin_mod_loop1.s",
220 "decoder/armv7/ixheaacd_esbr_qmfsyn64_winadd.s",
221 "decoder/armv7/ixheaacd_complex_ifft_p2.s",
222 "decoder/armv7/ixheaacd_complex_fft_p2.s",
223 "decoder/armv7/ixheaacd_esbr_cos_sin_mod_loop2.s",
224 "decoder/armv7/ixheaacd_shiftrountine_with_round_hq.s",
225 "decoder/armv7/ixheaacd_mps_complex_fft_64_asm.s",
226 "decoder/armv7/ixheaacd_esbr_fwd_modulation.s",
227 "decoder/armv7/ixheaacd_mps_synt_pre_twiddle.s",
228 "decoder/armv7/ixheaacd_mps_synt_post_twiddle.s",
229 "decoder/armv7/ixheaacd_calc_pre_twid.s",
230 "decoder/armv7/ixheaacd_calc_post_twid.s",
231 "decoder/armv7/ixheaacd_mps_synt_out_calc.s",
232 "decoder/armv7/ixheaacd_mps_synt_post_fft_twiddle.s",
233 "decoder/armv7/ixheaacd_sbr_qmfanal32_winadds_eld.s",
234 "decoder/armv7/ixheaacd_shiftrountine_with_rnd_eld.s",
235 "decoder/armv7/ixheaacd_eld_decoder_sbr_pre_twiddle.s",
236 "decoder/armv7/ixheaacd_fft_15_ld.s",
237 "decoder/armv7/ixheaacd_aac_ld_dec_rearrange.s",
238 "decoder/armv7/ixheaacd_fft32x32_ld2_armv7.s",
Ray Essick49082472018-05-25 11:19:24 -0700239 "decoder/armv7/ixheaacd_apply_scale_fac.s",
Cindy Zhou33385d02020-12-04 09:02:36 -0800240 "decoder/armv7/ixheaacd_tns_ar_filter_fixed.s",
Ray Essick51aa06e2018-05-17 14:36:48 -0700241 ],
Cindy Zhou33385d02020-12-04 09:02:36 -0800242 },
Ray Essick51aa06e2018-05-17 14:36:48 -0700243 },
244
245 arm64: {
246 cflags: [
247 ],
248
249 local_include_dirs: [
250 "decoder/armv8",
251 ],
252
253 srcs: [
Harish Mahendrakar8eb646f2018-05-09 14:23:00 -0700254 "decoder/armv8/ixheaacd_qmf_dec_armv8.c",
Ray Essick51aa06e2018-05-17 14:36:48 -0700255 "decoder/armv8/ixheaacd_function_selector_armv8.c",
256 "decoder/armv8/ixheaacd_calcmaxspectralline.s",
257 "decoder/armv8/ixheaacd_sbr_imdct_using_fft.s",
258 "decoder/armv8/ixheaacd_imdct_using_fft.s",
259 "decoder/armv8/ixheaacd_no_lap1.s",
260 "decoder/armv8/ixheaacd_post_twiddle.s",
261 "decoder/armv8/ixheaacd_pre_twiddle.s",
262 "decoder/armv8/ixheaacd_sbr_qmfsyn64_winadd.s",
263 "decoder/armv8/ixheaacd_overlap_add1.s",
264 "decoder/armv8/ixheaacd_overlap_add2.s",
265 "decoder/armv8/ixheaacd_shiftrountine_with_round_eld.s",
266 "decoder/armv8/ixheaacd_fft32x32_ld2_armv8.s",
267 "decoder/armv8/ixheaacd_inv_dit_fft_8pt.s",
268 "decoder/armv8/ixheaacd_shiftrountine_with_round.s",
269 "decoder/armv8/ixheaacd_sbr_qmf_analysis32_neon.s",
270 "decoder/armv8/ixheaacd_postradixcompute4.s",
271 "decoder/armv8/ixheaacd_apply_scale_factors.s",
272 "decoder/armv8/ixheaacd_cos_sin_mod_loop1.s",
273 "decoder/armv8/ixheaacd_cos_sin_mod_loop2.s",
Ray Essick49082472018-05-25 11:19:24 -0700274 "decoder/armv8/ixheaacd_post_twiddle_overlap.s",
Ray Essick51aa06e2018-05-17 14:36:48 -0700275 ],
276 },
277
278 x86: {
279 cflags: [
280 ],
281
282 local_include_dirs: [
283 ],
284
285 srcs: [
Harish Mahendrakar8eb646f2018-05-09 14:23:00 -0700286 "decoder/generic/ixheaacd_qmf_dec_generic.c",
Ray Essick51aa06e2018-05-17 14:36:48 -0700287 "decoder/x86/ixheaacd_function_selector_x86.c",
288 ],
289 },
290
291 x86_64: {
292 cflags: [
293 ],
294
295 local_include_dirs: [
296 ],
297
298 srcs: [
Harish Mahendrakar8eb646f2018-05-09 14:23:00 -0700299 "decoder/generic/ixheaacd_qmf_dec_generic.c",
Ray Essick51aa06e2018-05-17 14:36:48 -0700300 "decoder/x86_64/ixheaacd_function_selector_x86_64.c",
301 ],
302 },
Ray Essick51aa06e2018-05-17 14:36:48 -0700303 },
304}
305
306subdirs = ["test"]