• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1// *** THIS PACKAGE HAS SPECIAL LICENSING CONDITIONS.  PLEASE
2//     CONSULT YOUR go/whichlawyer LEGAL TEAM MEMBER BEFORE
3//     DEPENDING ON IT IN YOUR PROJECT. ***
4// THIS FILE IS AUTOGENERATED, DO NOT EDIT
5// Generated from Android.bp.in, run ./generate_config.sh to regenerate
6
7aom_av1_common_intrin_avx2 = [
8    "av1/common/x86/av1_inv_txfm_avx2.c",
9    "av1/common/x86/cdef_block_avx2.c",
10    "av1/common/x86/cfl_avx2.c",
11    "av1/common/x86/convolve_2d_avx2.c",
12    "av1/common/x86/convolve_avx2.c",
13    "av1/common/x86/highbd_convolve_2d_avx2.c",
14    "av1/common/x86/highbd_inv_txfm_avx2.c",
15    "av1/common/x86/highbd_jnt_convolve_avx2.c",
16    "av1/common/x86/highbd_warp_affine_avx2.c",
17    "av1/common/x86/highbd_wiener_convolve_avx2.c",
18    "av1/common/x86/jnt_convolve_avx2.c",
19    "av1/common/x86/reconinter_avx2.c",
20    "av1/common/x86/selfguided_avx2.c",
21    "av1/common/x86/warp_plane_avx2.c",
22    "av1/common/x86/wiener_convolve_avx2.c",
23]
24
25aom_av1_common_intrin_neon = [
26    "av1/common/arm/av1_inv_txfm_neon.c",
27    "av1/common/arm/av1_txfm_neon.c",
28    "av1/common/arm/blend_a64_hmask_neon.c",
29    "av1/common/arm/blend_a64_vmask_neon.c",
30    "av1/common/arm/cdef_block_neon.c",
31    "av1/common/arm/cfl_neon.c",
32    "av1/common/arm/compound_convolve_neon.c",
33    "av1/common/arm/convolve_neon.c",
34    "av1/common/arm/highbd_compound_convolve_neon.c",
35    "av1/common/arm/highbd_convolve_horiz_rs_neon.c",
36    "av1/common/arm/highbd_convolve_neon.c",
37    "av1/common/arm/highbd_convolve_scale_neon.c",
38    "av1/common/arm/highbd_inv_txfm_neon.c",
39    "av1/common/arm/highbd_reconinter_neon.c",
40    "av1/common/arm/highbd_reconintra_neon.c",
41    "av1/common/arm/highbd_warp_plane_neon.c",
42    "av1/common/arm/highbd_wiener_convolve_neon.c",
43    "av1/common/arm/reconinter_neon.c",
44    "av1/common/arm/reconintra_neon.c",
45    "av1/common/arm/resize_neon.c",
46    "av1/common/arm/selfguided_neon.c",
47    "av1/common/arm/warp_plane_neon.c",
48    "av1/common/arm/wiener_convolve_neon.c",
49]
50
51aom_av1_common_intrin_neon_dotprod = [
52    "av1/common/arm/compound_convolve_neon_dotprod.c",
53    "av1/common/arm/convolve_neon_dotprod.c",
54]
55
56aom_av1_common_intrin_neon_i8mm = [
57    "av1/common/arm/compound_convolve_neon_i8mm.c",
58    "av1/common/arm/convolve_neon_i8mm.c",
59    "av1/common/arm/warp_plane_neon_i8mm.c",
60]
61
62aom_av1_common_intrin_sse2 = [
63    "av1/common/x86/cfl_sse2.c",
64    "av1/common/x86/convolve_2d_sse2.c",
65    "av1/common/x86/convolve_sse2.c",
66    "av1/common/x86/jnt_convolve_sse2.c",
67    "av1/common/x86/wiener_convolve_sse2.c",
68]
69
70aom_av1_common_intrin_sse4_1 = [
71    "av1/common/x86/av1_convolve_horiz_rs_sse4.c",
72    "av1/common/x86/av1_convolve_scale_sse4.c",
73    "av1/common/x86/av1_txfm_sse4.c",
74    "av1/common/x86/cdef_block_sse4.c",
75    "av1/common/x86/filterintra_sse4.c",
76    "av1/common/x86/highbd_convolve_2d_sse4.c",
77    "av1/common/x86/highbd_inv_txfm_sse4.c",
78    "av1/common/x86/highbd_jnt_convolve_sse4.c",
79    "av1/common/x86/highbd_warp_plane_sse4.c",
80    "av1/common/x86/intra_edge_sse4.c",
81    "av1/common/x86/reconinter_sse4.c",
82    "av1/common/x86/selfguided_sse4.c",
83    "av1/common/x86/warp_plane_sse4.c",
84]
85
86aom_av1_common_intrin_ssse3 = [
87    "av1/common/x86/av1_inv_txfm_ssse3.c",
88    "av1/common/x86/cfl_ssse3.c",
89    "av1/common/x86/highbd_convolve_2d_ssse3.c",
90    "av1/common/x86/highbd_wiener_convolve_ssse3.c",
91    "av1/common/x86/jnt_convolve_ssse3.c",
92    "av1/common/x86/reconinter_ssse3.c",
93    "av1/common/x86/resize_ssse3.c",
94]
95
96aom_av1_common_intrin_ssse3_x86 = [
97    "av1/common/x86/cdef_block_ssse3.c",
98]
99
100aom_av1_common_intrin_sve = [
101    "av1/common/arm/highbd_warp_plane_sve.c",
102    "av1/common/arm/warp_plane_sve.c",
103]
104
105aom_av1_common_intrin_sve2 = [
106    "av1/common/arm/highbd_compound_convolve_sve2.c",
107    "av1/common/arm/highbd_convolve_sve2.c",
108]
109
110aom_av1_common_intrin_vsx = [
111    "av1/common/ppc/cfl_ppc.c",
112]
113
114aom_av1_common_sources = [
115    "av1/arg_defs.c",
116    "av1/common/alloccommon.c",
117    "av1/common/av1_inv_txfm1d.c",
118    "av1/common/av1_inv_txfm2d.c",
119    "av1/common/av1_loopfilter.c",
120    "av1/common/av1_txfm.c",
121    "av1/common/blockd.c",
122    "av1/common/cdef.c",
123    "av1/common/cdef_block.c",
124    "av1/common/cfl.c",
125    "av1/common/common_data.c",
126    "av1/common/convolve.c",
127    "av1/common/debugmodes.c",
128    "av1/common/entropy.c",
129    "av1/common/entropymode.c",
130    "av1/common/entropymv.c",
131    "av1/common/frame_buffers.c",
132    "av1/common/idct.c",
133    "av1/common/mvref_common.c",
134    "av1/common/obu_util.c",
135    "av1/common/pred_common.c",
136    "av1/common/quant_common.c",
137    "av1/common/reconinter.c",
138    "av1/common/reconintra.c",
139    "av1/common/resize.c",
140    "av1/common/restoration.c",
141    "av1/common/scale.c",
142    "av1/common/scan.c",
143    "av1/common/seg_common.c",
144    "av1/common/thread_common.c",
145    "av1/common/tile_common.c",
146    "av1/common/timing.c",
147    "av1/common/txb_common.c",
148    "av1/common/warped_motion.c",
149    "common/args_helper.c",
150]
151
152aom_av1_decoder_sources = [
153    "av1/av1_dx_iface.c",
154    "av1/decoder/decodeframe.c",
155    "av1/decoder/decodemv.c",
156    "av1/decoder/decoder.c",
157    "av1/decoder/decodetxb.c",
158    "av1/decoder/detokenize.c",
159    "av1/decoder/grain_synthesis.c",
160    "av1/decoder/obu.c",
161]
162
163aom_av1_encoder_asm_sse2 = [
164    "av1/encoder/x86/dct_sse2.asm",
165    "av1/encoder/x86/error_sse2.asm",
166]
167
168aom_av1_encoder_asm_ssse3_x86_64 = [
169    "av1/encoder/x86/av1_quantize_ssse3_x86_64.asm",
170]
171
172aom_av1_encoder_intrin_arm_crc32 = [
173    "av1/encoder/arm/crc32/hash_arm_crc32.c",
174]
175
176aom_av1_encoder_intrin_avx2 = [
177    "av1/encoder/x86/av1_fwd_txfm2d_avx2.c",
178    "av1/encoder/x86/av1_highbd_quantize_avx2.c",
179    "av1/encoder/x86/av1_k_means_avx2.c",
180    "av1/encoder/x86/av1_quantize_avx2.c",
181    "av1/encoder/x86/cnn_avx2.c",
182    "av1/encoder/x86/encodetxb_avx2.c",
183    "av1/encoder/x86/error_intrin_avx2.c",
184    "av1/encoder/x86/highbd_block_error_intrin_avx2.c",
185    "av1/encoder/x86/highbd_fwd_txfm_avx2.c",
186    "av1/encoder/x86/highbd_temporal_filter_avx2.c",
187    "av1/encoder/x86/ml_avx2.c",
188    "av1/encoder/x86/pickrst_avx2.c",
189    "av1/encoder/x86/rdopt_avx2.c",
190    "av1/encoder/x86/temporal_filter_avx2.c",
191    "av1/encoder/x86/wedge_utils_avx2.c",
192]
193
194aom_av1_encoder_intrin_neon = [
195    "av1/encoder/arm/neon/av1_error_neon.c",
196    "av1/encoder/arm/neon/av1_fwd_txfm2d_neon.c",
197    "av1/encoder/arm/neon/av1_highbd_quantize_neon.c",
198    "av1/encoder/arm/neon/av1_k_means_neon.c",
199    "av1/encoder/arm/neon/cnn_neon.c",
200    "av1/encoder/arm/neon/encodetxb_neon.c",
201    "av1/encoder/arm/neon/highbd_fwd_txfm_neon.c",
202    "av1/encoder/arm/neon/highbd_pickrst_neon.c",
203    "av1/encoder/arm/neon/highbd_rdopt_neon.c",
204    "av1/encoder/arm/neon/highbd_temporal_filter_neon.c",
205    "av1/encoder/arm/neon/hybrid_fwd_txfm_neon.c",
206    "av1/encoder/arm/neon/ml_neon.c",
207    "av1/encoder/arm/neon/pickrst_neon.c",
208    "av1/encoder/arm/neon/quantize_neon.c",
209    "av1/encoder/arm/neon/rdopt_neon.c",
210    "av1/encoder/arm/neon/reconinter_enc_neon.c",
211    "av1/encoder/arm/neon/temporal_filter_neon.c",
212    "av1/encoder/arm/neon/wedge_utils_neon.c",
213]
214
215aom_av1_encoder_intrin_neon_dotprod = [
216    "av1/encoder/arm/neon/temporal_filter_neon_dotprod.c",
217]
218
219aom_av1_encoder_intrin_sse2 = [
220    "av1/encoder/x86/av1_fwd_txfm_sse2.c",
221    "av1/encoder/x86/av1_k_means_sse2.c",
222    "av1/encoder/x86/av1_quantize_sse2.c",
223    "av1/encoder/x86/encodetxb_sse2.c",
224    "av1/encoder/x86/error_intrin_sse2.c",
225    "av1/encoder/x86/highbd_block_error_intrin_sse2.c",
226    "av1/encoder/x86/highbd_temporal_filter_sse2.c",
227    "av1/encoder/x86/reconinter_enc_sse2.c",
228    "av1/encoder/x86/temporal_filter_sse2.c",
229    "av1/encoder/x86/wedge_utils_sse2.c",
230]
231
232aom_av1_encoder_intrin_sse3 = [
233    "av1/encoder/x86/ml_sse3.c",
234]
235
236aom_av1_encoder_intrin_sse4_1 = [
237    "av1/encoder/x86/av1_fwd_txfm1d_sse4.c",
238    "av1/encoder/x86/av1_fwd_txfm2d_sse4.c",
239    "av1/encoder/x86/av1_highbd_quantize_sse4.c",
240    "av1/encoder/x86/encodetxb_sse4.c",
241    "av1/encoder/x86/highbd_fwd_txfm_sse4.c",
242    "av1/encoder/x86/pickrst_sse4.c",
243    "av1/encoder/x86/rdopt_sse4.c",
244]
245
246aom_av1_encoder_intrin_sse4_2 = [
247    "av1/encoder/x86/hash_sse42.c",
248]
249
250aom_av1_encoder_intrin_ssse3 = [
251    "av1/encoder/x86/reconinter_enc_ssse3.c",
252]
253
254aom_av1_encoder_intrin_sve = [
255    "av1/encoder/arm/neon/av1_error_sve.c",
256    "av1/encoder/arm/neon/wedge_utils_sve.c",
257]
258
259aom_av1_encoder_sources = [
260    "av1/av1_cx_iface.c",
261    "av1/encoder/allintra_vis.c",
262    "av1/encoder/aq_complexity.c",
263    "av1/encoder/aq_cyclicrefresh.c",
264    "av1/encoder/aq_variance.c",
265    "av1/encoder/av1_fwd_txfm1d.c",
266    "av1/encoder/av1_fwd_txfm2d.c",
267    "av1/encoder/av1_noise_estimate.c",
268    "av1/encoder/av1_quantize.c",
269    "av1/encoder/bitstream.c",
270    "av1/encoder/cnn.c",
271    "av1/encoder/compound_type.c",
272    "av1/encoder/context_tree.c",
273    "av1/encoder/cost.c",
274    "av1/encoder/dwt.c",
275    "av1/encoder/encode_strategy.c",
276    "av1/encoder/encodeframe.c",
277    "av1/encoder/encodeframe_utils.c",
278    "av1/encoder/encodemb.c",
279    "av1/encoder/encodemv.c",
280    "av1/encoder/encoder.c",
281    "av1/encoder/encoder_utils.c",
282    "av1/encoder/encodetxb.c",
283    "av1/encoder/ethread.c",
284    "av1/encoder/extend.c",
285    "av1/encoder/external_partition.c",
286    "av1/encoder/firstpass.c",
287    "av1/encoder/global_motion.c",
288    "av1/encoder/global_motion_facade.c",
289    "av1/encoder/gop_structure.c",
290    "av1/encoder/hash.c",
291    "av1/encoder/hash_motion.c",
292    "av1/encoder/hybrid_fwd_txfm.c",
293    "av1/encoder/interp_search.c",
294    "av1/encoder/intra_mode_search.c",
295    "av1/encoder/level.c",
296    "av1/encoder/lookahead.c",
297    "av1/encoder/mcomp.c",
298    "av1/encoder/ml.c",
299    "av1/encoder/motion_search_facade.c",
300    "av1/encoder/mv_prec.c",
301    "av1/encoder/nonrd_opt.c",
302    "av1/encoder/nonrd_pickmode.c",
303    "av1/encoder/palette.c",
304    "av1/encoder/partition_search.c",
305    "av1/encoder/partition_strategy.c",
306    "av1/encoder/pass2_strategy.c",
307    "av1/encoder/pickcdef.c",
308    "av1/encoder/picklpf.c",
309    "av1/encoder/pickrst.c",
310    "av1/encoder/ratectrl.c",
311    "av1/encoder/rd.c",
312    "av1/encoder/rdopt.c",
313    "av1/encoder/reconinter_enc.c",
314    "av1/encoder/segmentation.c",
315    "av1/encoder/speed_features.c",
316    "av1/encoder/superres_scale.c",
317    "av1/encoder/svc_layercontext.c",
318    "av1/encoder/temporal_filter.c",
319    "av1/encoder/thirdpass.c",
320    "av1/encoder/tokenize.c",
321    "av1/encoder/tpl_model.c",
322    "av1/encoder/tx_search.c",
323    "av1/encoder/txb_rdopt.c",
324    "av1/encoder/var_based_part.c",
325    "av1/encoder/wedge_utils.c",
326    "third_party/fastfeat/fast.c",
327    "third_party/fastfeat/fast_9.c",
328    "third_party/fastfeat/nonmax.c",
329    "third_party/vector/vector.c",
330]
331
332aom_av1_rc_sources = [
333    "av1/ratectrl_rtc.cc",
334]
335
336aom_common_app_util_sources = [
337    "av1/arg_defs.c",
338    "common/args.c",
339    "common/args_helper.c",
340    "common/av1_config.c",
341    "common/ivfdec.c",
342    "common/md5_utils.c",
343    "common/rawenc.c",
344    "common/tools_common.c",
345    "common/y4menc.c",
346]
347
348aom_decoder_app_util_sources = [
349    "common/obudec.c",
350    "common/video_reader.c",
351]
352
353aom_dsp_common_asm_sse2 = [
354    "aom_dsp/x86/aom_high_subpixel_8t_sse2.asm",
355    "aom_dsp/x86/aom_high_subpixel_bilinear_sse2.asm",
356    "aom_dsp/x86/highbd_intrapred_asm_sse2.asm",
357    "aom_dsp/x86/intrapred_asm_sse2.asm",
358    "aom_dsp/x86/inv_wht_sse2.asm",
359]
360
361aom_dsp_common_asm_ssse3 = [
362    "aom_dsp/x86/aom_subpixel_8t_ssse3.asm",
363    "aom_dsp/x86/aom_subpixel_bilinear_ssse3.asm",
364]
365
366aom_dsp_common_intrin_avx2 = [
367    "aom_dsp/x86/aom_convolve_copy_avx2.c",
368    "aom_dsp/x86/aom_subpixel_8t_intrin_avx2.c",
369    "aom_dsp/x86/blend_a64_mask_avx2.c",
370    "aom_dsp/x86/fft_avx2.c",
371    "aom_dsp/x86/highbd_convolve_avx2.c",
372    "aom_dsp/x86/highbd_loopfilter_avx2.c",
373    "aom_dsp/x86/intrapred_avx2.c",
374    "aom_dsp/x86/loopfilter_avx2.c",
375]
376
377aom_dsp_common_intrin_neon = [
378    "aom_dsp/arm/aom_convolve8_neon.c",
379    "aom_dsp/arm/aom_convolve_copy_neon.c",
380    "aom_dsp/arm/avg_pred_neon.c",
381    "aom_dsp/arm/blend_a64_mask_neon.c",
382    "aom_dsp/arm/fwd_txfm_neon.c",
383    "aom_dsp/arm/highbd_blend_a64_hmask_neon.c",
384    "aom_dsp/arm/highbd_blend_a64_mask_neon.c",
385    "aom_dsp/arm/highbd_blend_a64_vmask_neon.c",
386    "aom_dsp/arm/highbd_convolve8_neon.c",
387    "aom_dsp/arm/highbd_intrapred_neon.c",
388    "aom_dsp/arm/highbd_loopfilter_neon.c",
389    "aom_dsp/arm/intrapred_neon.c",
390    "aom_dsp/arm/loopfilter_neon.c",
391    "aom_dsp/arm/subtract_neon.c",
392]
393
394aom_dsp_common_intrin_neon_dotprod = [
395    "aom_dsp/arm/aom_convolve8_neon_dotprod.c",
396]
397
398aom_dsp_common_intrin_neon_i8mm = [
399    "aom_dsp/arm/aom_convolve8_neon_i8mm.c",
400]
401
402aom_dsp_common_intrin_sse2 = [
403    "aom_dsp/x86/aom_asm_stubs.c",
404    "aom_dsp/x86/aom_convolve_copy_sse2.c",
405    "aom_dsp/x86/fft_sse2.c",
406    "aom_dsp/x86/highbd_convolve_sse2.c",
407    "aom_dsp/x86/highbd_intrapred_sse2.c",
408    "aom_dsp/x86/highbd_loopfilter_sse2.c",
409    "aom_dsp/x86/intrapred_sse2.c",
410    "aom_dsp/x86/loopfilter_sse2.c",
411]
412
413aom_dsp_common_intrin_sse4_1 = [
414    "aom_dsp/x86/blend_a64_hmask_sse4.c",
415    "aom_dsp/x86/blend_a64_mask_sse4.c",
416    "aom_dsp/x86/blend_a64_vmask_sse4.c",
417    "aom_dsp/x86/intrapred_sse4.c",
418]
419
420aom_dsp_common_intrin_ssse3 = [
421    "aom_dsp/x86/aom_subpixel_8t_intrin_ssse3.c",
422    "aom_dsp/x86/highbd_convolve_ssse3.c",
423    "aom_dsp/x86/intrapred_ssse3.c",
424]
425
426aom_dsp_common_intrin_sve = [
427    "aom_dsp/arm/highbd_convolve8_sve.c",
428]
429
430aom_dsp_common_sources = [
431    "aom_dsp/aom_convolve.c",
432    "aom_dsp/bitreader_buffer.c",
433    "aom_dsp/bitwriter_buffer.c",
434    "aom_dsp/blend_a64_hmask.c",
435    "aom_dsp/blend_a64_mask.c",
436    "aom_dsp/blend_a64_vmask.c",
437    "aom_dsp/entcode.c",
438    "aom_dsp/fft.c",
439    "aom_dsp/intrapred.c",
440    "aom_dsp/loopfilter.c",
441    "aom_dsp/odintrin.c",
442    "aom_dsp/subtract.c",
443]
444
445aom_dsp_decoder_sources = [
446    "aom_dsp/binary_codes_reader.c",
447    "aom_dsp/bitreader.c",
448    "aom_dsp/entdec.c",
449]
450
451aom_dsp_encoder_asm_sse2 = [
452    "aom_dsp/x86/highbd_sad4d_sse2.asm",
453    "aom_dsp/x86/highbd_sad_sse2.asm",
454    "aom_dsp/x86/highbd_subpel_variance_impl_sse2.asm",
455    "aom_dsp/x86/highbd_variance_impl_sse2.asm",
456    "aom_dsp/x86/sad4d_sse2.asm",
457    "aom_dsp/x86/sad_sse2.asm",
458    "aom_dsp/x86/subtract_sse2.asm",
459]
460
461aom_dsp_encoder_asm_sse2_x86_64 = [
462    "aom_dsp/x86/ssim_sse2_x86_64.asm",
463]
464
465aom_dsp_encoder_asm_ssse3 = [
466    "aom_dsp/x86/subpel_variance_ssse3.asm",
467]
468
469aom_dsp_encoder_asm_ssse3_x86_64 = [
470    "aom_dsp/x86/fwd_txfm_ssse3_x86_64.asm",
471    "aom_dsp/x86/quantize_ssse3_x86_64.asm",
472]
473
474aom_dsp_encoder_intrin_avx = [
475    "aom_dsp/x86/aom_quantize_avx.c",
476]
477
478aom_dsp_encoder_intrin_avx2 = [
479    "aom_dsp/flow_estimation/x86/corner_match_avx2.c",
480    "aom_dsp/flow_estimation/x86/disflow_avx2.c",
481    "aom_dsp/x86/adaptive_quantize_avx2.c",
482    "aom_dsp/x86/avg_intrin_avx2.c",
483    "aom_dsp/x86/blk_sse_sum_avx2.c",
484    "aom_dsp/x86/highbd_adaptive_quantize_avx2.c",
485    "aom_dsp/x86/highbd_quantize_intrin_avx2.c",
486    "aom_dsp/x86/highbd_sad_avx2.c",
487    "aom_dsp/x86/highbd_variance_avx2.c",
488    "aom_dsp/x86/masked_sad_intrin_avx2.c",
489    "aom_dsp/x86/obmc_sad_avx2.c",
490    "aom_dsp/x86/obmc_variance_avx2.c",
491    "aom_dsp/x86/quantize_avx2.c",
492    "aom_dsp/x86/sad4d_avx2.c",
493    "aom_dsp/x86/sad_avx2.c",
494    "aom_dsp/x86/sad_impl_avx2.c",
495    "aom_dsp/x86/sse_avx2.c",
496    "aom_dsp/x86/subtract_avx2.c",
497    "aom_dsp/x86/sum_squares_avx2.c",
498    "aom_dsp/x86/variance_avx2.c",
499    "aom_dsp/x86/variance_impl_avx2.c",
500]
501
502aom_dsp_encoder_intrin_neon = [
503    "aom_dsp/arm/avg_neon.c",
504    "aom_dsp/arm/blk_sse_sum_neon.c",
505    "aom_dsp/arm/hadamard_neon.c",
506    "aom_dsp/arm/highbd_avg_neon.c",
507    "aom_dsp/arm/highbd_avg_pred_neon.c",
508    "aom_dsp/arm/highbd_hadamard_neon.c",
509    "aom_dsp/arm/highbd_masked_sad_neon.c",
510    "aom_dsp/arm/highbd_obmc_sad_neon.c",
511    "aom_dsp/arm/highbd_obmc_variance_neon.c",
512    "aom_dsp/arm/highbd_quantize_neon.c",
513    "aom_dsp/arm/highbd_sad_neon.c",
514    "aom_dsp/arm/highbd_sadxd_neon.c",
515    "aom_dsp/arm/highbd_sse_neon.c",
516    "aom_dsp/arm/highbd_subpel_variance_neon.c",
517    "aom_dsp/arm/highbd_variance_neon.c",
518    "aom_dsp/arm/masked_sad4d_neon.c",
519    "aom_dsp/arm/masked_sad_neon.c",
520    "aom_dsp/arm/obmc_sad_neon.c",
521    "aom_dsp/arm/obmc_variance_neon.c",
522    "aom_dsp/arm/sad_neon.c",
523    "aom_dsp/arm/sadxd_neon.c",
524    "aom_dsp/arm/sse_neon.c",
525    "aom_dsp/arm/subpel_variance_neon.c",
526    "aom_dsp/arm/sum_squares_neon.c",
527    "aom_dsp/arm/variance_neon.c",
528    "aom_dsp/flow_estimation/arm/disflow_neon.c",
529]
530
531aom_dsp_encoder_intrin_neon_dotprod = [
532    "aom_dsp/arm/highbd_variance_neon_dotprod.c",
533    "aom_dsp/arm/sad_neon_dotprod.c",
534    "aom_dsp/arm/sadxd_neon_dotprod.c",
535    "aom_dsp/arm/sse_neon_dotprod.c",
536    "aom_dsp/arm/sum_squares_neon_dotprod.c",
537    "aom_dsp/arm/variance_neon_dotprod.c",
538]
539
540aom_dsp_encoder_intrin_sse2 = [
541    "aom_dsp/x86/adaptive_quantize_sse2.c",
542    "aom_dsp/x86/avg_intrin_sse2.c",
543    "aom_dsp/x86/blk_sse_sum_sse2.c",
544    "aom_dsp/x86/fwd_txfm_sse2.c",
545    "aom_dsp/x86/highbd_adaptive_quantize_sse2.c",
546    "aom_dsp/x86/highbd_quantize_intrin_sse2.c",
547    "aom_dsp/x86/highbd_subtract_sse2.c",
548    "aom_dsp/x86/highbd_variance_sse2.c",
549    "aom_dsp/x86/jnt_sad_sse2.c",
550    "aom_dsp/x86/quantize_sse2.c",
551    "aom_dsp/x86/sum_squares_sse2.c",
552    "aom_dsp/x86/variance_sse2.c",
553]
554
555aom_dsp_encoder_intrin_sse4_1 = [
556    "aom_dsp/flow_estimation/x86/corner_match_sse4.c",
557    "aom_dsp/flow_estimation/x86/disflow_sse4.c",
558    "aom_dsp/x86/avg_intrin_sse4.c",
559    "aom_dsp/x86/highbd_variance_sse4.c",
560    "aom_dsp/x86/obmc_sad_sse4.c",
561    "aom_dsp/x86/obmc_variance_sse4.c",
562    "aom_dsp/x86/sse_sse4.c",
563]
564
565aom_dsp_encoder_intrin_ssse3 = [
566    "aom_dsp/x86/jnt_variance_ssse3.c",
567    "aom_dsp/x86/masked_sad4d_ssse3.c",
568    "aom_dsp/x86/masked_sad_intrin_ssse3.c",
569    "aom_dsp/x86/masked_variance_intrin_ssse3.c",
570    "aom_dsp/x86/quantize_ssse3.c",
571    "aom_dsp/x86/variance_impl_ssse3.c",
572]
573
574aom_dsp_encoder_intrin_sve = [
575    "aom_dsp/arm/avg_sve.c",
576    "aom_dsp/arm/blk_sse_sum_sve.c",
577    "aom_dsp/arm/highbd_sse_sve.c",
578    "aom_dsp/arm/highbd_variance_sve.c",
579    "aom_dsp/arm/sum_squares_sve.c",
580]
581
582aom_dsp_encoder_sources = [
583    "aom_dsp/avg.c",
584    "aom_dsp/binary_codes_writer.c",
585    "aom_dsp/bitwriter.c",
586    "aom_dsp/blk_sse_sum.c",
587    "aom_dsp/entenc.c",
588    "aom_dsp/flow_estimation/corner_detect.c",
589    "aom_dsp/flow_estimation/corner_match.c",
590    "aom_dsp/flow_estimation/disflow.c",
591    "aom_dsp/flow_estimation/flow_estimation.c",
592    "aom_dsp/flow_estimation/ransac.c",
593    "aom_dsp/fwd_txfm.c",
594    "aom_dsp/grain_table.c",
595    "aom_dsp/noise_model.c",
596    "aom_dsp/noise_util.c",
597    "aom_dsp/psnr.c",
598    "aom_dsp/pyramid.c",
599    "aom_dsp/quantize.c",
600    "aom_dsp/sad.c",
601    "aom_dsp/sad_av1.c",
602    "aom_dsp/sse.c",
603    "aom_dsp/ssim.c",
604    "aom_dsp/sum_squares.c",
605    "aom_dsp/variance.c",
606]
607
608aom_encoder_app_util_sources = [
609    "common/ivfenc.c",
610    "common/video_writer.c",
611    "common/warnings.c",
612    "common/y4minput.c",
613    "examples/encoder_util.c",
614]
615
616aom_encoder_stats_sources = [
617    "stats/aomstats.c",
618    "stats/rate_hist.c",
619]
620
621aom_libwebm_sources = [
622    "third_party/libwebm/common/hdr_util.cc",
623    "third_party/libwebm/mkvmuxer/mkvmuxer.cc",
624    "third_party/libwebm/mkvmuxer/mkvmuxerutil.cc",
625    "third_party/libwebm/mkvmuxer/mkvwriter.cc",
626    "third_party/libwebm/mkvparser/mkvparser.cc",
627    "third_party/libwebm/mkvparser/mkvreader.cc",
628]
629
630aom_mem_sources = [
631    "aom_mem/aom_mem.c",
632]
633
634aom_ports_asm_x86 = [
635    "aom_ports/float.asm",
636]
637
638aom_rtcd_sources = [
639    "aom_dsp/aom_dsp_rtcd.c",
640    "aom_scale/aom_scale_rtcd.c",
641    "av1/common/av1_rtcd.c",
642]
643
644aom_scale_sources = [
645    "aom_scale/generic/aom_scale.c",
646    "aom_scale/generic/gen_scalers.c",
647    "aom_scale/generic/yv12config.c",
648    "aom_scale/generic/yv12extend.c",
649]
650
651aom_sources = [
652    "aom/src/aom_codec.c",
653    "aom/src/aom_decoder.c",
654    "aom/src/aom_encoder.c",
655    "aom/src/aom_image.c",
656    "aom/src/aom_integer.c",
657]
658
659aom_util_sources = [
660    "aom_util/aom_thread.c",
661]
662
663aom_webm_decoder_sources = [
664    "common/webmdec.cc",
665]
666
667aom_webm_encoder_sources = [
668    "common/webmenc.cc",
669]
670
671aom_rtcd_sources_gen = [
672]
673
674aom_sources_gen = [
675    "config/aom_config.c",
676]
677
678aom_version_sources_gen = [
679]
680
681aom_av1_common_sources += ["common/av1_config.c"]
682
683package {
684    default_applicable_licenses: ["external_libaom_license"],
685}
686
687// Added automatically by a large-scale-change that took the approach of
688// 'apply every license found to every target'. While this makes sure we respect
689// every license restriction, it may not be entirely correct.
690//
691// e.g. GPL in an MIT project might only apply to the contrib/ directory.
692//
693// Please consider splitting the single license below into multiple licenses,
694// taking care not to lose any license_kind information, and overriding the
695// default license using the 'licenses: [...]' property on targets as needed.
696//
697// For unused files, consider creating a 'fileGroup' with "//visibility:private"
698// to attach the license to, and including a comment whether the files may be
699// used in the current project.
700// See: http://go/android-license-faq
701license {
702    name: "external_libaom_license",
703    visibility: [":__subpackages__"],
704    license_kinds: [
705        "SPDX-license-identifier-BSD",
706        "SPDX-license-identifier-ISC",
707        "SPDX-license-identifier-MIT",
708        "legacy_by_exception_only", // by exception only
709        "legacy_unencumbered",
710    ],
711    license_text: [
712        "LICENSE",
713        "PATENTS",
714    ],
715}
716
717cc_library_static {
718    name: "libaom",
719    host_supported: true,
720    vendor_available: true,
721    cflags: [
722        "-O3",
723    ],
724
725    export_include_dirs: [
726        ".",
727    ],
728
729    min_sdk_version: "29",
730    apex_available: [
731        "//apex_available:platform",
732        "com.android.media.swcodec",
733    ],
734
735    arch: {
736        arm64: {
737            local_include_dirs: [
738                "config/",
739                "config/arm64/",
740            ],
741            srcs: aom_av1_common_sources +
742                aom_av1_decoder_sources +
743                aom_dsp_common_sources +
744                aom_dsp_decoder_sources +
745                aom_mem_sources +
746                ["aom_ports/aarch64_cpudetect.c"] +
747                aom_rtcd_sources +
748                aom_scale_sources +
749                aom_sources +
750                aom_util_sources +
751                aom_av1_common_intrin_neon +
752                aom_dsp_common_intrin_neon +
753                aom_av1_encoder_intrin_neon +
754                aom_av1_encoder_sources +
755                aom_dsp_encoder_intrin_neon +
756                aom_dsp_encoder_sources,
757        },
758
759        // configured to require the neon unit
760        arm: {
761            local_include_dirs: [
762                "config/",
763                "config/arm/",
764            ],
765            srcs: aom_av1_common_sources +
766                aom_av1_decoder_sources +
767                aom_dsp_common_sources +
768                aom_dsp_decoder_sources +
769                aom_mem_sources +
770                aom_rtcd_sources +
771                ["aom_ports/aarch32_cpudetect.c"] +
772                aom_scale_sources +
773                aom_sources +
774                aom_util_sources +
775                aom_av1_common_intrin_neon +
776                aom_dsp_common_intrin_neon +
777                aom_av1_encoder_intrin_neon +
778                aom_av1_encoder_sources +
779                aom_dsp_encoder_intrin_neon +
780                aom_dsp_encoder_sources,
781        },
782
783        x86_64: {
784            local_include_dirs: [
785                "config/",
786                "config/x86_64/",
787            ],
788            cflags: [
789                "-mssse3",
790            ],
791            srcs: aom_av1_common_sources +
792                aom_av1_decoder_sources +
793                aom_dsp_common_sources +
794                aom_dsp_decoder_sources +
795                aom_mem_sources +
796                aom_rtcd_sources +
797                aom_scale_sources +
798                aom_sources +
799                aom_util_sources +
800                aom_dsp_common_asm_sse2 +
801                aom_dsp_common_asm_ssse3 +
802                aom_ports_asm_x86 +
803                aom_av1_common_intrin_sse2 +
804                aom_dsp_common_intrin_sse2 +
805                aom_av1_common_intrin_ssse3 +
806                aom_dsp_common_intrin_ssse3 +
807                aom_av1_encoder_asm_sse2 +
808                aom_av1_encoder_asm_ssse3_x86_64 +
809                aom_av1_encoder_intrin_sse2 +
810                aom_av1_encoder_intrin_sse3 +
811                aom_av1_encoder_intrin_ssse3 +
812                aom_av1_encoder_sources +
813                aom_dsp_encoder_asm_sse2 +
814                aom_dsp_encoder_asm_sse2_x86_64 +
815                aom_dsp_encoder_asm_ssse3 +
816                aom_dsp_encoder_asm_ssse3_x86_64 +
817                aom_dsp_encoder_intrin_sse2 +
818                aom_dsp_encoder_intrin_ssse3 +
819                aom_dsp_encoder_sources,
820        },
821
822        x86: {
823            local_include_dirs: [
824                "config/",
825                "config/x86/",
826            ],
827            cflags: [
828                "-mssse3",
829            ],
830            srcs: aom_av1_common_sources +
831                aom_av1_decoder_sources +
832                aom_dsp_common_sources +
833                aom_dsp_decoder_sources +
834                aom_mem_sources +
835                aom_rtcd_sources +
836                aom_scale_sources +
837                aom_sources +
838                aom_util_sources +
839                aom_dsp_common_asm_sse2 +
840                aom_dsp_common_asm_ssse3 +
841                aom_ports_asm_x86 +
842                aom_av1_common_intrin_sse2 +
843                aom_dsp_common_intrin_sse2 +
844                aom_av1_common_intrin_ssse3 +
845                aom_dsp_common_intrin_ssse3 +
846                aom_av1_common_intrin_ssse3_x86 +
847                aom_av1_encoder_asm_sse2 +
848                aom_av1_encoder_intrin_sse2 +
849                aom_av1_encoder_intrin_sse3 +
850                aom_av1_encoder_intrin_ssse3 +
851                aom_av1_encoder_sources +
852                aom_dsp_encoder_asm_sse2 +
853                aom_dsp_encoder_asm_ssse3 +
854                aom_dsp_encoder_intrin_sse2 +
855                aom_dsp_encoder_intrin_ssse3 +
856                aom_dsp_encoder_sources,
857        },
858
859        riscv64: {
860            local_include_dirs: [
861                "config/",
862                "config/riscv64/",
863            ],
864            cflags: [
865            ],
866            srcs: aom_av1_common_sources +
867                aom_av1_decoder_sources +
868                aom_dsp_common_sources +
869                aom_dsp_decoder_sources +
870                aom_mem_sources +
871                aom_rtcd_sources +
872                aom_scale_sources +
873                aom_sources +
874                aom_util_sources +
875                aom_av1_encoder_sources +
876                aom_dsp_encoder_sources,
877        },
878    },
879
880    sanitize: {
881        blocklist: "libaom_blocklist.txt",
882    },
883
884}
885
886cc_fuzz {
887    name: "av1_dec_fuzzer",
888    host_supported: true,
889    srcs: [
890        "examples/av1_dec_fuzzer.cc",
891    ],
892    arch: {
893        arm: {
894            local_include_dirs: [
895                "config/",
896                "config/arm/",
897            ],
898        },
899
900        arm64: {
901            local_include_dirs: [
902                "config/",
903                "config/arm64/",
904            ],
905        },
906
907        x86: {
908            local_include_dirs: [
909                "config/",
910                "config/x86/",
911            ],
912        },
913
914        x86_64: {
915            local_include_dirs: [
916                "config/",
917                "config/x86_64/",
918            ],
919        },
920
921        riscv64: {
922            local_include_dirs: [
923                "config/",
924                "config/riscv64/",
925            ],
926        },
927
928    },
929    static_libs: [
930        "libaom",
931    ],
932}
933