blob: e9efbe58760461cf262801b08bdcec8b98d59ce2 [file] [log] [blame]
Bob Badourc0aae292021-02-12 15:15:50 -08001package {
2 default_applicable_licenses: ["external_libavc_license"],
3}
4
5// Added automatically by a large-scale-change
6// See: http://go/android-license-faq
7license {
8 name: "external_libavc_license",
9 visibility: [":__subpackages__"],
10 license_kinds: [
11 "SPDX-license-identifier-Apache-2.0",
12 ],
13 license_text: [
14 "NOTICE",
15 ],
16}
17
Ray Essick7faf1312022-01-25 18:44:23 -080018cc_library_headers {
19 name: "libavcdec_headers",
20 export_include_dirs: [
21 "common",
22 "decoder",
23 ],
24 min_sdk_version: "29",
25}
26
27cc_library_headers {
28 name: "libavcenc_headers",
29 export_include_dirs: [
30 "common",
31 "encoder",
32 ],
33 min_sdk_version: "29",
34}
35
Colin Crossfc442e12017-04-20 14:31:47 -070036cc_library_static {
37 name: "libavcdec",
Jiyong Park4bd04b12017-08-07 13:14:45 +090038 vendor_available: true,
Jooyung Han669c6bb2020-04-16 18:48:27 +090039 host_supported: true,
40 shared_libs: [
41 "liblog",
42 "libcutils",
43 ],
Colin Crossfc442e12017-04-20 14:31:47 -070044
45 cflags: [
46 "-fPIC",
47 "-O3",
Chih-Hung Hsieh4852fbb2017-09-28 13:30:53 -070048 "-Wall",
49 "-Werror",
50 "-Wno-unused-variable",
Yi Kong9908df52018-12-12 02:45:09 -080051 "-Wno-null-pointer-arithmetic",
Manisha Jajood1e64cc2020-07-22 13:49:11 +053052 // #KEEP_THREAD_ACTIVE is experimental
53 "-UKEEP_THREADS_ACTIVE",
Colin Crossfc442e12017-04-20 14:31:47 -070054 ],
55
56 export_include_dirs: [
Colin Crossfc442e12017-04-20 14:31:47 -070057 "common",
Ray Essick7faf1312022-01-25 18:44:23 -080058 "decoder",
Colin Crossfc442e12017-04-20 14:31:47 -070059 ],
60
61 srcs: [
62 "common/ih264_buf_mgr.c",
63 "common/ih264_disp_mgr.c",
64 "common/ih264_inter_pred_filters.c",
65 "common/ih264_luma_intra_pred_filters.c",
66 "common/ih264_chroma_intra_pred_filters.c",
67 "common/ih264_padding.c",
68 "common/ih264_mem_fns.c",
69 "common/ih264_deblk_edge_filters.c",
70 "common/ih264_iquant_itrans_recon.c",
71 "common/ih264_ihadamard_scaling.c",
72 "common/ih264_weighted_pred.c",
73 "common/ithread.c",
74 "decoder/ih264d_cabac.c",
75 "decoder/ih264d_parse_mb_header.c",
76 "decoder/ih264d_parse_cabac.c",
77 "decoder/ih264d_process_intra_mb.c",
78 "decoder/ih264d_inter_pred.c",
79 "decoder/ih264d_parse_bslice.c",
80 "decoder/ih264d_parse_pslice.c",
81 "decoder/ih264d_parse_islice.c",
82 "decoder/ih264d_cabac_init_tables.c",
83 "decoder/ih264d_bitstrm.c",
84 "decoder/ih264d_compute_bs.c",
85 "decoder/ih264d_deblocking.c",
86 "decoder/ih264d_parse_headers.c",
87 "decoder/ih264d_mb_utils.c",
88 "decoder/ih264d_mvpred.c",
89 "decoder/ih264d_utils.c",
90 "decoder/ih264d_process_bslice.c",
91 "decoder/ih264d_process_pslice.c",
92 "decoder/ih264d_parse_slice.c",
93 "decoder/ih264d_quant_scaling.c",
94 "decoder/ih264d_parse_cavlc.c",
95 "decoder/ih264d_dpb_mgr.c",
96 "decoder/ih264d_nal.c",
97 "decoder/ih264d_sei.c",
98 "decoder/ih264d_tables.c",
99 "decoder/ih264d_vui.c",
100 "decoder/ih264d_format_conv.c",
101 "decoder/ih264d_thread_parse_decode.c",
102 "decoder/ih264d_api.c",
103 "decoder/ih264d_thread_compute_bs.c",
104 "decoder/ih264d_function_selector_generic.c",
105 ],
106
107 arch: {
108 arm: {
109 local_include_dirs: [
110 "decoder/arm",
111 "common/arm",
112 ],
113
114 srcs: [
115 "decoder/arm/ih264d_function_selector.c",
116 "common/arm/ih264_arm_memory_barrier.s",
117 ],
118
119 cflags: [
120 "-DARM",
121
122 // These will be overriden by armv7_a_neon
123 "-DDISABLE_NEON",
124 "-DDEFAULT_ARCH=D_ARCH_ARM_NONEON",
125 ],
126
Isaac Chen78002912017-09-12 16:57:35 +0800127 neon: {
Colin Crossfc442e12017-04-20 14:31:47 -0700128 srcs: [
129 "decoder/arm/ih264d_function_selector_a9q.c",
130 "common/arm/ih264_intra_pred_chroma_a9q.s",
131 "common/arm/ih264_intra_pred_luma_16x16_a9q.s",
132 "common/arm/ih264_intra_pred_luma_4x4_a9q.s",
133 "common/arm/ih264_intra_pred_luma_8x8_a9q.s",
134 "common/arm/ih264_inter_pred_chroma_a9q.s",
135 "common/arm/ih264_inter_pred_filters_luma_horz_a9q.s",
136 "common/arm/ih264_inter_pred_filters_luma_vert_a9q.s",
137 "common/arm/ih264_inter_pred_luma_copy_a9q.s",
138 "common/arm/ih264_inter_pred_luma_horz_qpel_a9q.s",
139 "common/arm/ih264_inter_pred_luma_vert_qpel_a9q.s",
140 "common/arm/ih264_inter_pred_luma_horz_hpel_vert_hpel_a9q.s",
141 "common/arm/ih264_inter_pred_luma_horz_qpel_vert_qpel_a9q.s",
142 "common/arm/ih264_inter_pred_luma_horz_qpel_vert_hpel_a9q.s",
143 "common/arm/ih264_inter_pred_luma_horz_hpel_vert_qpel_a9q.s",
144 "common/arm/ih264_default_weighted_pred_a9q.s",
145 "common/arm/ih264_weighted_pred_a9q.s",
146 "common/arm/ih264_weighted_bi_pred_a9q.s",
147 "common/arm/ih264_deblk_chroma_a9.s",
148 "common/arm/ih264_deblk_luma_a9.s",
149 "common/arm/ih264_padding_neon.s",
150 "common/arm/ih264_iquant_itrans_recon_a9.s",
151 "common/arm/ih264_iquant_itrans_recon_dc_a9.s",
152 "common/arm/ih264_ihadamard_scaling_a9.s",
153 ],
154 cflags: [
155 "-UDISABLE_NEON",
156 "-UDEFAULT_ARCH",
157 "-DDEFAULT_ARCH=D_ARCH_ARM_A9Q",
158 ],
159 },
160 },
161
162 arm64: {
163 cflags: [
164 "-DARMV8",
165 "-DARM",
166 "-DDEFAULT_ARCH=D_ARCH_ARMV8_GENERIC",
167 ],
168 local_include_dirs: [
169 "decoder/arm",
170 "common/armv8",
171 ],
172
173 srcs: [
174 "decoder/arm/ih264d_function_selector.c",
175 "decoder/arm/ih264d_function_selector_av8.c",
176 "common/armv8/ih264_intra_pred_chroma_av8.s",
177 "common/armv8/ih264_intra_pred_luma_16x16_av8.s",
178 "common/armv8/ih264_intra_pred_luma_4x4_av8.s",
179 "common/armv8/ih264_inter_pred_chroma_av8.s",
180 "common/armv8/ih264_inter_pred_filters_luma_horz_av8.s",
181 "common/armv8/ih264_inter_pred_filters_luma_vert_av8.s",
182 "common/armv8/ih264_inter_pred_luma_copy_av8.s",
183 "common/armv8/ih264_inter_pred_luma_horz_qpel_av8.s",
184 "common/armv8/ih264_inter_pred_luma_vert_qpel_av8.s",
185 "common/armv8/ih264_inter_pred_luma_horz_hpel_vert_hpel_av8.s",
186 "common/armv8/ih264_inter_pred_luma_horz_qpel_vert_qpel_av8.s",
187 "common/armv8/ih264_inter_pred_luma_horz_qpel_vert_hpel_av8.s",
188 "common/armv8/ih264_inter_pred_luma_horz_hpel_vert_qpel_av8.s",
189 "common/armv8/ih264_default_weighted_pred_av8.s",
190 "common/armv8/ih264_weighted_pred_av8.s",
191 "common/armv8/ih264_weighted_bi_pred_av8.s",
192 "common/armv8/ih264_deblk_chroma_av8.s",
193 "common/armv8/ih264_deblk_luma_av8.s",
194 "common/armv8/ih264_padding_neon_av8.s",
195 "common/armv8/ih264_iquant_itrans_recon_av8.s",
196 "common/armv8/ih264_iquant_itrans_recon_dc_av8.s",
197 "common/armv8/ih264_ihadamard_scaling_av8.s",
198 "common/armv8/ih264_intra_pred_luma_8x8_av8.s",
199 ],
200 },
201
Colin Crossfc442e12017-04-20 14:31:47 -0700202 x86: {
203 cflags: [
204 "-DX86",
205 "-msse4.2",
206 "-DDEFAULT_ARCH=D_ARCH_X86_SSE42",
207 ],
208
209 local_include_dirs: [
210 "decoder/x86",
211 "common/x86",
212 ],
213
214 srcs: [
215 "decoder/x86/ih264d_function_selector.c",
216 "decoder/x86/ih264d_function_selector_sse42.c",
217 "decoder/x86/ih264d_function_selector_ssse3.c",
218 "common/x86/ih264_inter_pred_filters_ssse3.c",
219 "common/x86/ih264_deblk_luma_ssse3.c",
220 "common/x86/ih264_deblk_chroma_ssse3.c",
221 "common/x86/ih264_padding_ssse3.c",
222 "common/x86/ih264_mem_fns_ssse3.c",
223 "common/x86/ih264_iquant_itrans_recon_dc_ssse3.c",
224 "common/x86/ih264_iquant_itrans_recon_ssse3.c",
225 "common/x86/ih264_luma_intra_pred_filters_ssse3.c",
226 "common/x86/ih264_chroma_intra_pred_filters_ssse3.c",
227 "common/x86/ih264_iquant_itrans_recon_sse42.c",
228 "common/x86/ih264_weighted_pred_sse42.c",
229 "common/x86/ih264_ihadamard_scaling_sse42.c",
230 ],
231 },
232
233 x86_64: {
234 cflags: [
235 "-DX86",
236 "-msse4.2",
237 "-DDEFAULT_ARCH=D_ARCH_X86_SSE42",
238 ],
239
240 local_include_dirs: [
241 "decoder/x86",
242 "common/x86",
243 ],
244
245 srcs: [
246 "decoder/x86/ih264d_function_selector.c",
247 "decoder/x86/ih264d_function_selector_sse42.c",
248 "decoder/x86/ih264d_function_selector_ssse3.c",
249 "common/x86/ih264_inter_pred_filters_ssse3.c",
250 "common/x86/ih264_deblk_luma_ssse3.c",
251 "common/x86/ih264_deblk_chroma_ssse3.c",
252 "common/x86/ih264_padding_ssse3.c",
253 "common/x86/ih264_mem_fns_ssse3.c",
254 "common/x86/ih264_iquant_itrans_recon_dc_ssse3.c",
255 "common/x86/ih264_iquant_itrans_recon_ssse3.c",
256 "common/x86/ih264_luma_intra_pred_filters_ssse3.c",
257 "common/x86/ih264_chroma_intra_pred_filters_ssse3.c",
258 "common/x86/ih264_iquant_itrans_recon_sse42.c",
259 "common/x86/ih264_weighted_pred_sse42.c",
260 "common/x86/ih264_ihadamard_scaling_sse42.c",
261 ],
262 },
263 },
Wonsik Kim83355ea2018-01-22 11:33:09 -0800264
265 sanitize: {
Ivan Lozanoce461812018-07-10 11:52:52 -0700266 integer_overflow: true,
Ivan Lozanodef7f772018-10-04 10:55:09 -0700267 misc_undefined: ["bounds"],
Cindy Zhou91b4a012020-12-02 10:20:30 -0800268 cfi: true,
269 config: {
270 cfi_assembly_support: true,
271 },
Pirama Arumuga Nainar6d44b362020-07-28 14:27:20 -0700272 blocklist: "libavc_blocklist.txt",
Wonsik Kim83355ea2018-01-22 11:33:09 -0800273 },
Jooyung Han669c6bb2020-04-16 18:48:27 +0900274 apex_available: [
Jiyong Park89a12022020-04-24 21:39:20 +0900275 "//apex_available:platform", // used by libstagefright_soft_avcdec
Jooyung Han669c6bb2020-04-16 18:48:27 +0900276 "com.android.media.swcodec",
277 ],
278 min_sdk_version: "29",
Colin Crossfc442e12017-04-20 14:31:47 -0700279}
280
281cc_library_static {
282 name: "libavcenc",
Jiyong Park4bd04b12017-08-07 13:14:45 +0900283 vendor_available: true,
Harish Mahendrakare2b463d2019-08-13 15:35:06 -0700284 host_supported: true,
Jooyung Han669c6bb2020-04-16 18:48:27 +0900285 shared_libs: [
286 "liblog",
287 "libcutils",
288 ],
Colin Crossfc442e12017-04-20 14:31:47 -0700289
290 cflags: [
291 "-DNDEBUG",
292 "-UHP_PL",
293 "-DN_MB_ENABLE",
294 "-fPIC",
295
296 "-O3",
Chih-Hung Hsieh4852fbb2017-09-28 13:30:53 -0700297 "-Wall",
298 "-Werror",
299 "-Wno-error=constant-conversion",
Colin Crossfc442e12017-04-20 14:31:47 -0700300 ],
301
302 export_include_dirs: [
Colin Crossfc442e12017-04-20 14:31:47 -0700303 "common",
Ray Essick7faf1312022-01-25 18:44:23 -0800304 "encoder",
Colin Crossfc442e12017-04-20 14:31:47 -0700305 ],
306
307 srcs: [ //Rate Control
308 "common/ih264_resi_trans_quant.c",
309 "common/ih264_iquant_itrans_recon.c",
310 "common/ih264_ihadamard_scaling.c",
311 "common/ih264_inter_pred_filters.c",
312 "common/ih264_luma_intra_pred_filters.c",
313 "common/ih264_chroma_intra_pred_filters.c",
314 "common/ih264_padding.c",
315 "common/ih264_mem_fns.c",
316 "common/ih264_deblk_edge_filters.c",
317 "common/ih264_deblk_tables.c",
318 "common/ih264_cavlc_tables.c",
319 "common/ih264_cabac_tables.c",
320 "common/ih264_common_tables.c",
321 "common/ih264_trans_data.c",
322 "common/ih264_buf_mgr.c",
323 "common/ih264_dpb_mgr.c",
324 "common/ih264_list.c",
325 "common/ithread.c",
326 "encoder/ih264e_globals.c",
327 "encoder/ih264e_intra_modes_eval.c",
328 "encoder/ih264e_half_pel.c",
329 "encoder/ih264e_mc.c",
330 "encoder/ih264e_me.c",
331 "encoder/ih264e_rc_mem_interface.c",
332 "encoder/ih264e_time_stamp.c",
333 "encoder/ih264e_modify_frm_rate.c",
334 "encoder/ih264e_rate_control.c",
335 "encoder/ih264e_core_coding.c",
336 "encoder/ih264e_deblk.c",
337 "encoder/ih264e_api.c",
338 "encoder/ih264e_process.c",
339 "encoder/ih264e_encode.c",
340 "encoder/ih264e_utils.c",
341 "encoder/ih264e_version.c",
342 "encoder/ih264e_bitstream.c",
343 "encoder/ih264e_cavlc.c",
344 "encoder/ih264e_cabac_init.c",
345 "encoder/ih264e_cabac.c",
346 "encoder/ih264e_cabac_encode.c",
347 "encoder/ih264e_encode_header.c",
348 "encoder/ih264e_function_selector_generic.c",
349 "encoder/ih264e_fmt_conv.c",
350 "encoder/irc_rate_control_api.c",
351 "encoder/irc_bit_allocation.c",
352 "encoder/irc_cbr_buffer_control.c",
353 "encoder/irc_est_sad.c",
354 "encoder/irc_fixed_point_error_bits.c",
355 "encoder/irc_frame_info_collector.c",
356 "encoder/irc_mb_model_based.c",
357 "encoder/irc_picture_type.c",
358 "encoder/irc_rd_model.c",
359 "encoder/irc_vbr_storage_vbv.c",
360 "encoder/irc_vbr_str_prms.c",
361 "encoder/ime.c",
362 "encoder/ime_distortion_metrics.c",
Chamarthi Kishoread2eaf82019-10-01 11:59:43 +0530363 "encoder/ih264e_sei.c",
Colin Crossfc442e12017-04-20 14:31:47 -0700364 ],
365
366 arch: {
367 arm: {
368 local_include_dirs: [
369 "encoder/arm",
370 "common/arm",
371 ],
372
373 srcs: [
374 "encoder/arm/ih264e_function_selector.c",
375 "common/arm/ih264_arm_memory_barrier.s",
376 ],
377
378 cflags: [
379 "-DARM",
380
381 // This will be overriden by armv7_a_neon
382 "-DDISABLE_NEON",
383 ],
384
Isaac Chen78002912017-09-12 16:57:35 +0800385 neon: {
Colin Crossfc442e12017-04-20 14:31:47 -0700386 srcs: [
387 "encoder/arm/ih264e_function_selector_a9q.c",
388 "common/arm/ih264_resi_trans_quant_a9.s",
389 "common/arm/ih264_iquant_itrans_recon_a9.s",
390 "common/arm/ih264_iquant_itrans_recon_dc_a9.s",
391 "common/arm/ih264_ihadamard_scaling_a9.s",
392 "common/arm/ih264_deblk_chroma_a9.s",
393 "common/arm/ih264_deblk_luma_a9.s",
394 "common/arm/ih264_intra_pred_chroma_a9q.s",
395 "common/arm/ih264_intra_pred_luma_16x16_a9q.s",
396 "common/arm/ih264_intra_pred_luma_4x4_a9q.s",
397 "common/arm/ih264_intra_pred_luma_8x8_a9q.s",
398 "common/arm/ih264_inter_pred_chroma_a9q.s",
399 "common/arm/ih264_inter_pred_filters_luma_horz_a9q.s",
400 "common/arm/ih264_inter_pred_filters_luma_vert_a9q.s",
401 "common/arm/ih264_inter_pred_luma_bilinear_a9q.s",
402 "common/arm/ih264_inter_pred_luma_copy_a9q.s",
403 "common/arm/ih264_padding_neon.s",
404 "common/arm/ih264_mem_fns_neon.s",
405 "encoder/arm/ih264e_evaluate_intra16x16_modes_a9q.s",
406 "encoder/arm/ih264e_evaluate_intra4x4_modes_a9q.s",
407 "encoder/arm/ih264e_evaluate_intra_chroma_modes_a9q.s",
408 "encoder/arm/ih264e_half_pel.s",
409 "encoder/arm/ih264e_fmt_conv.s",
410 "encoder/arm/ime_distortion_metrics_a9q.s",
411 ],
412
413 cflags: [
414 "-UDISABLE_NEON",
415 ],
416 },
417 },
418
419 arm64: {
420 cflags: [
421 "-DARMV8",
422 "-DARM",
423 ],
424
425 local_include_dirs: [
426 "encoder/arm",
427 "encoder/armv8",
428 "common/armv8",
429 ],
430
431 srcs: [
432 "encoder/arm/ih264e_function_selector.c",
433 "encoder/arm/ih264e_function_selector_av8.c",
434 "common/armv8/ih264_resi_trans_quant_av8.s",
435 "common/armv8/ih264_iquant_itrans_recon_av8.s",
436 "common/armv8/ih264_iquant_itrans_recon_dc_av8.s",
437 "common/armv8/ih264_ihadamard_scaling_av8.s",
438 "common/armv8/ih264_intra_pred_chroma_av8.s",
439 "common/armv8/ih264_intra_pred_luma_16x16_av8.s",
440 "common/armv8/ih264_intra_pred_luma_4x4_av8.s",
441 "common/armv8/ih264_intra_pred_luma_8x8_av8.s",
442 "common/armv8/ih264_inter_pred_luma_copy_av8.s",
443 "common/armv8/ih264_inter_pred_chroma_av8.s",
444 "common/armv8/ih264_inter_pred_filters_luma_horz_av8.s",
445 "common/armv8/ih264_inter_pred_filters_luma_vert_av8.s",
446 "common/armv8/ih264_padding_neon_av8.s",
447 "common/armv8/ih264_mem_fns_neon_av8.s",
448 "common/armv8/ih264_deblk_luma_av8.s",
449 "common/armv8/ih264_deblk_chroma_av8.s",
450 "encoder/armv8/ih264e_evaluate_intra16x16_modes_av8.s",
451 "encoder/armv8/ih264e_evaluate_intra_chroma_modes_av8.s",
452 "encoder/armv8/ih264e_half_pel_av8.s",
453 "encoder/armv8/ime_distortion_metrics_av8.s",
454 ],
455 },
456
Colin Crossfc442e12017-04-20 14:31:47 -0700457 x86: {
458 cflags: [
459 "-DX86",
460 "-msse4.2",
461 ],
462
463 local_include_dirs: [
464 "encoder/x86",
465 "common/x86",
466 ],
467
468 srcs: [
469 "encoder/x86/ih264e_function_selector.c",
470 "encoder/x86/ih264e_function_selector_sse42.c",
471 "encoder/x86/ih264e_function_selector_ssse3.c",
472 "common/x86/ih264_iquant_itrans_recon_ssse3.c",
473 "common/x86/ih264_iquant_itrans_recon_dc_ssse3.c",
474 "common/x86/ih264_ihadamard_scaling_ssse3.c",
475 "common/x86/ih264_inter_pred_filters_ssse3.c",
476 "common/x86/ih264_mem_fns_ssse3.c",
477 "common/x86/ih264_padding_ssse3.c",
478 "common/x86/ih264_luma_intra_pred_filters_ssse3.c",
479 "common/x86/ih264_chroma_intra_pred_filters_ssse3.c",
480 "common/x86/ih264_deblk_chroma_ssse3.c",
481 "common/x86/ih264_deblk_luma_ssse3.c",
482 "common/x86/ih264_iquant_itrans_recon_sse42.c",
483 "common/x86/ih264_ihadamard_scaling_sse42.c",
484 "common/x86/ih264_resi_trans_quant_sse42.c",
485 "common/x86/ih264_weighted_pred_sse42.c",
486 "encoder/x86/ih264e_half_pel_ssse3.c",
487 "encoder/x86/ih264e_intra_modes_eval_ssse3.c",
488 "encoder/x86/ime_distortion_metrics_sse42.c",
489 ],
490 },
491
492 x86_64: {
493 cflags: [
494 "-DX86",
495 "-msse4.2",
496 ],
497
498 local_include_dirs: [
499 "encoder/x86",
500 "common/x86",
501 ],
502
503 srcs: [
504 "encoder/x86/ih264e_function_selector.c",
505 "encoder/x86/ih264e_function_selector_sse42.c",
506 "encoder/x86/ih264e_function_selector_ssse3.c",
507 "common/x86/ih264_iquant_itrans_recon_ssse3.c",
508 "common/x86/ih264_iquant_itrans_recon_dc_ssse3.c",
509 "common/x86/ih264_ihadamard_scaling_ssse3.c",
510 "common/x86/ih264_inter_pred_filters_ssse3.c",
511 "common/x86/ih264_mem_fns_ssse3.c",
512 "common/x86/ih264_padding_ssse3.c",
513 "common/x86/ih264_luma_intra_pred_filters_ssse3.c",
514 "common/x86/ih264_chroma_intra_pred_filters_ssse3.c",
515 "common/x86/ih264_deblk_chroma_ssse3.c",
516 "common/x86/ih264_deblk_luma_ssse3.c",
517 "common/x86/ih264_iquant_itrans_recon_sse42.c",
518 "common/x86/ih264_ihadamard_scaling_sse42.c",
519 "common/x86/ih264_resi_trans_quant_sse42.c",
520 "common/x86/ih264_weighted_pred_sse42.c",
521 "encoder/x86/ih264e_half_pel_ssse3.c",
522 "encoder/x86/ih264e_intra_modes_eval_ssse3.c",
523 "encoder/x86/ime_distortion_metrics_sse42.c",
524 ],
525 },
526 },
Wonsik Kim83355ea2018-01-22 11:33:09 -0800527
528 sanitize: {
Ivan Lozanoce461812018-07-10 11:52:52 -0700529 integer_overflow: true,
Ivan Lozanodef7f772018-10-04 10:55:09 -0700530 misc_undefined: ["bounds"],
Cindy Zhou91b4a012020-12-02 10:20:30 -0800531 cfi: true,
532 config: {
533 cfi_assembly_support: true,
534 },
Pirama Arumuga Nainar6d44b362020-07-28 14:27:20 -0700535 blocklist: "libavc_blocklist.txt",
Wonsik Kim83355ea2018-01-22 11:33:09 -0800536 },
Jooyung Han669c6bb2020-04-16 18:48:27 +0900537 apex_available: [
Jiyong Park89a12022020-04-24 21:39:20 +0900538 "//apex_available:platform", //due to libstagefright_soft_avcenc
Jooyung Han669c6bb2020-04-16 18:48:27 +0900539 "com.android.media.swcodec",
540 ],
541 min_sdk_version: "29",
Colin Crossfc442e12017-04-20 14:31:47 -0700542}
543
544subdirs = ["test"]