| cc_library_static { |
| name: "libxaacdec", |
| |
| vendor_available: true, |
| vndk: { |
| enabled: true, |
| }, |
| |
| cflags: [ |
| "-O3" |
| ], |
| |
| export_include_dirs: [ |
| "decoder", |
| "decoder/drc_src" |
| ], |
| |
| srcs: [ |
| "decoder/ixheaacd_aacdecoder.c", |
| "decoder/ixheaacd_aacpluscheck.c", |
| "decoder/ixheaacd_aac_imdct.c", |
| "decoder/ixheaacd_aac_rom.c", |
| "decoder/ixheaacd_aac_tns.c", |
| "decoder/ixheaacd_acelp_bitparse.c", |
| "decoder/ixheaacd_acelp_decode.c", |
| "decoder/ixheaacd_acelp_mdct.c", |
| "decoder/ixheaacd_acelp_tools.c", |
| "decoder/ixheaacd_adts_crc_check.c", |
| "decoder/ixheaacd_api.c", |
| "decoder/ixheaacd_arith_dec.c", |
| "decoder/ixheaacd_avq_dec.c", |
| "decoder/ixheaacd_avq_rom.c", |
| "decoder/ixheaacd_basic_ops.c", |
| "decoder/ixheaacd_bitbuffer.c", |
| "decoder/ixheaacd_block.c", |
| "decoder/ixheaacd_channel.c", |
| "decoder/ixheaacd_common_initfuncs.c", |
| "decoder/ixheaacd_common_lpfuncs.c", |
| "decoder/ixheaacd_common_rom.c", |
| "decoder/ixheaacd_create.c", |
| "decoder/ixheaacd_decode_main.c", |
| "decoder/ixheaacd_dsp_fft32x32s.c", |
| "decoder/ixheaacd_env_calc.c", |
| "decoder/ixheaacd_env_dec.c", |
| "decoder/ixheaacd_env_extr.c", |
| "decoder/ixheaacd_esbr_envcal.c", |
| "decoder/ixheaacd_esbr_polyphase.c", |
| "decoder/ixheaacd_esbr_rom.c", |
| "decoder/ixheaacd_esbr_fft.c", |
| "decoder/ixheaacd_ext_ch_ele.c", |
| "decoder/ixheaacd_fft.c", |
| "decoder/ixheaacd_freq_sca.c", |
| "decoder/ixheaacd_fwd_alias_cnx.c", |
| "decoder/ixheaacd_hbe_trans.c", |
| "decoder/ixheaacd_headerdecode.c", |
| "decoder/ixheaacd_hufftables.c", |
| "decoder/ixheaacd_huff_tools.c", |
| "decoder/ixheaacd_hybrid.c", |
| "decoder/ixheaacd_imdct.c", |
| "decoder/ixheaacd_initfuncs.c", |
| "decoder/ixheaacd_init_config.c", |
| "decoder/ixheaacd_longblock.c", |
| "decoder/ixheaacd_lpc.c", |
| "decoder/ixheaacd_lpc_dec.c", |
| "decoder/ixheaacd_lpfuncs.c", |
| "decoder/ixheaacd_lpp_tran.c", |
| "decoder/ixheaacd_lt_predict.c", |
| "decoder/ixheaacd_mps_dec.c", |
| "decoder/ixheaacd_mps_decorr.c", |
| "decoder/ixheaacd_mps_hybrid_filt.c", |
| "decoder/ixheaacd_mps_parse.c", |
| "decoder/ixheaacd_mps_pre_mix.c", |
| "decoder/ixheaacd_mps_rom.c", |
| "decoder/ixheaacd_mps_smoothing.c", |
| "decoder/ixheaacd_mps_temp_process.c", |
| "decoder/ixheaacd_mps_temp_reshape.c", |
| "decoder/ixheaacd_pns_js_thumb.c", |
| "decoder/ixheaacd_pred_vec_block.c", |
| "decoder/ixheaacd_process.c", |
| "decoder/ixheaacd_ps_bitdec.c", |
| "decoder/ixheaacd_ps_dec.c", |
| "decoder/ixheaacd_pvc_rom.c", |
| "decoder/ixheaacd_rom.c", |
| "decoder/ixheaacd_sbrdecoder.c", |
| "decoder/ixheaacd_sbrdec_initfuncs.c", |
| "decoder/ixheaacd_sbrdec_lpfuncs.c", |
| "decoder/ixheaacd_sbr_crc.c", |
| "decoder/ixheaacd_sbr_dec.c", |
| "decoder/ixheaacd_sbr_rom.c", |
| "decoder/ixheaacd_spectrum_dec.c", |
| "decoder/ixheaacd_stereo.c", |
| "decoder/ixheaacd_tcx_fwd_alcnx.c", |
| "decoder/ixheaacd_tcx_fwd_mdct.c", |
| "decoder/ixheaacd_thumb_ps_dec.c", |
| "decoder/ixheaacd_tns.c", |
| "decoder/ixheaacd_basic_funcs.c", |
| "decoder/ixheaacd_Windowing.c", |
| "decoder/ixheaacd_latmdemux.c", |
| "decoder/ixheaacd_multichannel.c", |
| "decoder/ixheaacd_drc_freq_dec.c", |
| "decoder/ixheaacd_mps_poly_filt.c", |
| "decoder/ixheaacd_huff_code_reorder.c", |
| "decoder/ixheaacd_rev_vlc.c", |
| "decoder/ixheaacd_qmf_dec.c", |
| "decoder/drc_src/impd_drc_api.c", |
| "decoder/drc_src/impd_drc_bitbuffer.c", |
| "decoder/drc_src/impd_drc_dec.c", |
| "decoder/drc_src/impd_drc_dynamic_payload.c", |
| "decoder/drc_src/impd_drc_eq.c", |
| "decoder/drc_src/impd_drc_extr_delta_coded_info.c", |
| "decoder/drc_src/impd_drc_filter_bank.c", |
| "decoder/drc_src/impd_drc_gain_dec.c", |
| "decoder/drc_src/impd_drc_gain_decoder.c", |
| "decoder/drc_src/impd_drc_host_params.c", |
| "decoder/drc_src/impd_drc_init.c", |
| "decoder/drc_src/impd_drc_interface_decoder.c", |
| "decoder/drc_src/impd_drc_interface_parser.c", |
| "decoder/drc_src/impd_drc_loudness_control.c", |
| "decoder/drc_src/impd_drc_main_qmf_process.c", |
| "decoder/drc_src/impd_drc_main_stft_process.c", |
| "decoder/drc_src/impd_drc_main_td_process.c", |
| "decoder/drc_src/impd_drc_main_td_qmf_process.c", |
| "decoder/drc_src/impd_drc_multiband.c", |
| "decoder/drc_src/impd_drc_parametric_dec.c", |
| "decoder/drc_src/impd_drc_peak_limiter.c", |
| "decoder/drc_src/impd_drc_process.c", |
| "decoder/drc_src/impd_drc_rom.c", |
| "decoder/drc_src/impd_drc_selection_process.c", |
| "decoder/drc_src/impd_drc_selection_process_drcset_selection.c", |
| "decoder/drc_src/impd_drc_selection_process_init.c", |
| "decoder/drc_src/impd_drc_shape_filter.c", |
| "decoder/drc_src/impd_drc_static_payload.c", |
| ], |
| |
| sanitize: { |
| misc_undefined: [ |
| "unsigned-integer-overflow", |
| "signed-integer-overflow", |
| ], |
| cfi: true, |
| }, |
| |
| arch: { |
| arm: { |
| local_include_dirs: [ |
| ], |
| |
| srcs: [ |
| "decoder/generic/ixheaacd_function_selector_generic.c", |
| "decoder/generic/ixheaacd_qmf_dec_generic.c", |
| ], |
| neon: { |
| cflags: [ |
| ], |
| |
| local_include_dirs: [ |
| "decoder/armv7", |
| ], |
| |
| srcs: [ |
| "decoder/armv7/ixheaacd_qmf_dec_armv7.c", |
| "decoder/armv7/ixheaacd_fft_armv7.c", |
| "decoder/armv7/ixheaacd_function_selector_armv7.c", |
| "decoder/armv7/ixheaacd_overlap_add1.s", |
| "decoder/armv7/ixheaacd_overlap_add2.s", |
| "decoder/armv7/ixheaacd_lap1.s", |
| "decoder/armv7/ixheaacd_dec_DCT2_64_asm.s", |
| "decoder/armv7/ixheaacd_apply_rot.s", |
| "decoder/armv7/ixheaacd_autocorr_st2.s", |
| "decoder/armv7/ixheaacd_auto_corr.s", |
| "decoder/armv7/ixheaacd_calcmaxspectralline.s", |
| "decoder/armv7/ixheaacd_conv_ergtoamplitude.s", |
| "decoder/armv7/ixheaacd_conv_ergtoamplitudelp.s", |
| "decoder/armv7/ixheaacd_cos_sin_mod.s", |
| "decoder/armv7/ixheaacd_dct3_32.s", |
| "decoder/armv7/ixheaacd_decorr_filter2.s", |
| "decoder/armv7/ixheaacd_enery_calc_per_subband.s", |
| "decoder/armv7/ixheaacd_expsubbandsamples.s", |
| "decoder/armv7/ixheaacd_ffr_divide16.s", |
| "decoder/armv7/ixheaacd_fwd_modulation.s", |
| "decoder/armv7/ixheaacd_harm_idx_zerotwolp.s", |
| "decoder/armv7/ixheaacd_imdct_using_fft.s", |
| "decoder/armv7/ixheaacd_inv_dit_fft_8pt.s", |
| "decoder/armv7/ixheaacd_no_lap1.s", |
| "decoder/armv7/ixheaacd_post_radix_compute2.s", |
| "decoder/armv7/ixheaacd_post_radix_compute4.s", |
| "decoder/armv7/ixheaacd_post_twiddle.s", |
| "decoder/armv7/ixheaacd_pre_twiddle_compute.s", |
| "decoder/armv7/ixheaacd_post_twiddle_overlap.s", |
| "decoder/armv7/ixheaacd_radix4_bfly.s", |
| "decoder/armv7/ixheaacd_rescale_subbandsamples.s", |
| "decoder/armv7/ixheaacd_sbr_imdct_using_fft.s", |
| "decoder/armv7/ixheaacd_sbr_qmfanal32_winadds.s", |
| "decoder/armv7/ixheaacd_sbr_qmfsyn64_winadd.s", |
| "decoder/armv7/ixheaacd_shiftrountine.s", |
| "decoder/armv7/ixheaacd_shiftrountine_with_round.s", |
| "decoder/armv7/ixheaacd_tns_ar_filter_fixed_32x16.s", |
| "decoder/armv7/ixheaacd_tns_parcor2lpc_32x16.s", |
| "decoder/armv7/ixheaacd_esbr_radix4bfly.s", |
| "decoder/armv7/ixheaacd_esbr_cos_sin_mod_loop1.s", |
| "decoder/armv7/ixheaacd_esbr_qmfsyn64_winadd.s", |
| "decoder/armv7/ixheaacd_complex_ifft_p2.s", |
| "decoder/armv7/ixheaacd_complex_fft_p2.s", |
| "decoder/armv7/ixheaacd_esbr_cos_sin_mod_loop2.s", |
| "decoder/armv7/ixheaacd_shiftrountine_with_round_hq.s", |
| "decoder/armv7/ixheaacd_mps_complex_fft_64_asm.s", |
| "decoder/armv7/ixheaacd_esbr_fwd_modulation.s", |
| "decoder/armv7/ixheaacd_mps_synt_pre_twiddle.s", |
| "decoder/armv7/ixheaacd_mps_synt_post_twiddle.s", |
| "decoder/armv7/ixheaacd_calc_pre_twid.s", |
| "decoder/armv7/ixheaacd_calc_post_twid.s", |
| "decoder/armv7/ixheaacd_mps_synt_out_calc.s", |
| "decoder/armv7/ixheaacd_mps_synt_post_fft_twiddle.s", |
| "decoder/armv7/ixheaacd_sbr_qmfanal32_winadds_eld.s", |
| "decoder/armv7/ixheaacd_shiftrountine_with_rnd_eld.s", |
| "decoder/armv7/ixheaacd_eld_decoder_sbr_pre_twiddle.s", |
| "decoder/armv7/ixheaacd_fft_15_ld.s", |
| "decoder/armv7/ixheaacd_aac_ld_dec_rearrange.s", |
| "decoder/armv7/ixheaacd_fft32x32_ld2_armv7.s", |
| "decoder/armv7/ixheaacd_apply_scale_fac.s", |
| "decoder/armv7/ixheaacd_tns_ar_filter_fixed.s" |
| ], |
| } |
| }, |
| |
| arm64: { |
| cflags: [ |
| ], |
| |
| local_include_dirs: [ |
| "decoder/armv8", |
| ], |
| |
| srcs: [ |
| "decoder/armv8/ixheaacd_qmf_dec_armv8.c", |
| "decoder/armv8/ixheaacd_function_selector_armv8.c", |
| "decoder/armv8/ixheaacd_calcmaxspectralline.s", |
| "decoder/armv8/ixheaacd_sbr_imdct_using_fft.s", |
| "decoder/armv8/ixheaacd_imdct_using_fft.s", |
| "decoder/armv8/ixheaacd_no_lap1.s", |
| "decoder/armv8/ixheaacd_post_twiddle.s", |
| "decoder/armv8/ixheaacd_pre_twiddle.s", |
| "decoder/armv8/ixheaacd_sbr_qmfsyn64_winadd.s", |
| "decoder/armv8/ixheaacd_overlap_add1.s", |
| "decoder/armv8/ixheaacd_overlap_add2.s", |
| "decoder/armv8/ixheaacd_shiftrountine_with_round_eld.s", |
| "decoder/armv8/ixheaacd_fft32x32_ld2_armv8.s", |
| "decoder/armv8/ixheaacd_inv_dit_fft_8pt.s", |
| "decoder/armv8/ixheaacd_shiftrountine_with_round.s", |
| "decoder/armv8/ixheaacd_sbr_qmf_analysis32_neon.s", |
| "decoder/armv8/ixheaacd_postradixcompute4.s", |
| "decoder/armv8/ixheaacd_apply_scale_factors.s", |
| "decoder/armv8/ixheaacd_cos_sin_mod_loop1.s", |
| "decoder/armv8/ixheaacd_cos_sin_mod_loop2.s", |
| "decoder/armv8/ixheaacd_post_twiddle_overlap.s", |
| ], |
| }, |
| |
| x86: { |
| cflags: [ |
| ], |
| |
| local_include_dirs: [ |
| ], |
| |
| srcs: [ |
| "decoder/generic/ixheaacd_qmf_dec_generic.c", |
| "decoder/x86/ixheaacd_function_selector_x86.c", |
| ], |
| }, |
| |
| x86_64: { |
| cflags: [ |
| ], |
| |
| local_include_dirs: [ |
| ], |
| |
| srcs: [ |
| "decoder/generic/ixheaacd_qmf_dec_generic.c", |
| "decoder/x86_64/ixheaacd_function_selector_x86_64.c", |
| ], |
| }, |
| |
| mips: { |
| cflags: [ |
| ], |
| |
| local_include_dirs: [ |
| ], |
| |
| srcs: [ |
| "decoder/generic/ixheaacd_function_selector_generic.c", |
| ], |
| }, |
| |
| mips64: { |
| cflags: [ |
| ], |
| |
| local_include_dirs: [ |
| ], |
| |
| srcs: [ |
| "decoder/generic/ixheaacd_function_selector_generic.c", |
| ], |
| }, |
| }, |
| } |
| |
| subdirs = ["test"] |