• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1package {
2    default_applicable_licenses: ["frameworks_av_media_libmedia_license"],
3}
4
5// Added automatically by a large-scale-change
6// See: http://go/android-license-faq
7license {
8    name: "frameworks_av_media_libmedia_license",
9    visibility: [":__subpackages__"],
10    license_kinds: [
11        "SPDX-license-identifier-Apache-2.0",
12    ],
13    license_text: [
14        "NOTICE",
15    ],
16}
17
18cc_library_headers {
19    name: "libmedia_headers",
20    vendor_available: true,
21    min_sdk_version: "29",
22    apex_available: [
23        "//apex_available:platform",
24        "com.android.media.swcodec",
25    ],
26
27    export_include_dirs: ["include"],
28    header_libs: [
29        "av-headers",
30        "libbase_headers",
31        "libgui_headers",
32        "libstagefright_headers",
33        "media_plugin_headers",
34    ],
35    export_header_lib_headers: [
36        "av-headers",
37        "libgui_headers",
38        "libstagefright_headers",
39        "media_plugin_headers",
40    ],
41}
42
43cc_library_headers {
44    name: "libmedia_datasource_headers",
45    export_include_dirs: ["include"],
46    host_supported: true,
47    target: {
48        darwin: {
49            enabled: false,
50        },
51    },
52    header_libs: [
53        "libbinder_headers",
54    ],
55    export_header_lib_headers: [
56        "libbinder_headers",
57    ],
58    apex_available: [
59        "//apex_available:platform",
60        "com.android.media",
61    ],
62    min_sdk_version: "29",
63}
64
65filegroup {
66    name: "libmedia_omx_aidl",
67    srcs: [
68        "aidl/android/IOMXBufferSource.aidl",
69    ],
70    path: "aidl",
71}
72
73filegroup {
74    name: "mediaextractorservice_aidl",
75    srcs: [
76        "aidl/android/IMediaExtractorService.aidl",
77    ],
78    path: "aidl",
79}
80
81cc_library_shared {
82    name: "libmedia_omx",
83    vendor_available: true,
84    vndk: {
85        enabled: true,
86    },
87    double_loadable: true,
88
89    srcs: [
90        ":libmedia_omx_aidl",
91
92        "IOMX.cpp",
93        "MediaCodecBuffer.cpp",
94        "OMXBuffer.cpp",
95        "omx/1.0/WOmxBufferSource.cpp",
96        "omx/1.0/WOmxNode.cpp",
97        "omx/1.0/WOmxObserver.cpp",
98    ],
99
100    aidl: {
101        local_include_dirs: ["aidl"],
102        export_aidl_headers: true,
103    },
104
105    local_include_dirs: [
106        "include",
107    ],
108
109    shared_libs: [
110        "android.hidl.token@1.0-utils",
111        "android.hardware.media.omx@1.0",
112        "libbinder",
113        "libcutils",
114        "libhidlbase",
115        "liblog",
116        "libstagefright_foundation",
117        "libui",
118        "libutils",
119    ],
120
121    export_shared_lib_headers: [
122        "android.hidl.token@1.0-utils",
123        "android.hardware.media.omx@1.0",
124        "libstagefright_foundation",
125        "libui",
126    ],
127
128    header_libs: [
129        "libstagefright_headers",
130        "media_plugin_headers",
131    ],
132
133    export_header_lib_headers: [
134        "libstagefright_headers",
135        "media_plugin_headers",
136    ],
137
138    export_include_dirs: [
139        "aidl",
140        "include",
141    ],
142
143    cflags: [
144        "-Werror",
145        "-Wno-error=deprecated-declarations",
146        "-Wall",
147    ],
148
149    sanitize: {
150        misc_undefined: [
151            "unsigned-integer-overflow",
152            "signed-integer-overflow",
153        ],
154        cfi: true,
155    },
156}
157
158cc_library_shared {
159    name: "libmedia_omx_client",
160
161    srcs: [
162        "omx/1.0/WOmx.cpp",
163    ],
164
165    local_include_dirs: [
166        "include",
167    ],
168
169    shared_libs: [
170        "libbinder",
171        "libcutils",
172        "libgui",
173        "libhidlbase",
174        "liblog",
175        "libmedia_omx",
176        "libstagefright_foundation",
177        "libui",
178        "libutils",
179    ],
180
181    export_shared_lib_headers: [
182        "libgui",
183        "libmedia_omx",
184        "libstagefright_foundation",
185        "libui",
186    ],
187
188    header_libs: [
189        "libstagefright_headers",
190        "media_plugin_headers",
191    ],
192
193    export_header_lib_headers: [
194        "libstagefright_headers",
195        "media_plugin_headers",
196    ],
197
198    export_include_dirs: [
199        "include",
200    ],
201
202    cflags: [
203        "-Werror",
204        "-Wno-error=deprecated-declarations",
205        "-Wall",
206    ],
207
208    sanitize: {
209        misc_undefined: [
210            "unsigned-integer-overflow",
211            "signed-integer-overflow",
212        ],
213        cfi: true,
214    },
215}
216
217cc_library_static {
218    name: "libmedia_midiiowrapper",
219
220    min_sdk_version: "29",
221    apex_available: [
222        "//apex_available:platform",
223        "com.android.media",
224    ],
225
226
227    srcs: ["MidiIoWrapper.cpp"],
228
229    static_libs: [
230        "libsonivoxwithoutjet",
231    ],
232
233    header_libs: [
234        "libmedia_datasource_headers",
235        "media_ndk_headers",
236    ],
237
238    cflags: [
239        "-Werror",
240        "-Wno-error=deprecated-declarations",
241        "-Wall",
242    ],
243
244    sanitize: {
245        misc_undefined: [
246            "unsigned-integer-overflow",
247            "signed-integer-overflow",
248        ],
249        cfi: true,
250    },
251
252    host_supported: true,
253
254    target: {
255        darwin: {
256            enabled: false,
257        },
258    },
259}
260
261cc_library_shared {
262    name: "libmedia_codeclist",
263
264    srcs: [
265        "IMediaCodecList.cpp",
266        "MediaCodecInfo.cpp",
267    ],
268
269    local_include_dirs: [
270        "include",
271    ],
272
273    shared_libs: [
274        "android.hardware.media.omx@1.0",
275        "libbinder",
276        "liblog",
277        "libstagefright_foundation",
278        "libutils",
279    ],
280
281    include_dirs: [
282        "system/libhidl/transport/token/1.0/utils/include",
283    ],
284
285    export_include_dirs: [
286        "include",
287    ],
288
289    cflags: [
290        "-Werror",
291        "-Wno-error=deprecated-declarations",
292        "-Wall",
293    ],
294
295    sanitize: {
296        misc_undefined: [
297            "unsigned-integer-overflow",
298            "signed-integer-overflow",
299        ],
300        cfi: true,
301    },
302}
303
304cc_library {
305    name: "libmedia",
306
307    defaults: [
308        "latest_android_media_audio_common_types_cpp_shared",
309    ],
310
311    srcs: [
312        ":mediaextractorservice_aidl",
313        "IDataSource.cpp",
314        "BufferingSettings.cpp",
315        "mediaplayer.cpp",
316        "IMediaHTTPConnection.cpp",
317        "IMediaHTTPService.cpp",
318        "IMediaExtractor.cpp",
319        "IMediaPlayerService.cpp",
320        "IMediaPlayerClient.cpp",
321        "IMediaRecorderClient.cpp",
322        "IMediaPlayer.cpp",
323        "IMediaRecorder.cpp",
324        "IMediaSource.cpp",
325        "IRemoteDisplay.cpp",
326        "IRemoteDisplayClient.cpp",
327        "IStreamSource.cpp",
328        "Metadata.cpp",
329        "mediarecorder.cpp",
330        "IMediaMetadataRetriever.cpp",
331        "mediametadataretriever.cpp",
332        "MediaScanner.cpp",
333        "MediaScannerClient.cpp",
334        "CharacterEncodingDetector.cpp",
335        "IMediaDeathNotifier.cpp",
336        "MediaProfiles.cpp",
337        "MediaResource.cpp",
338        "MediaResourcePolicy.cpp",
339        "StringArray.cpp",
340        "NdkMediaFormatPriv.cpp",
341        "NdkMediaErrorPriv.cpp",
342    ],
343
344    aidl: {
345        local_include_dirs: ["aidl"],
346        export_aidl_headers: true,
347    },
348
349    header_libs: [
350        "libstagefright_headers",
351        "media_ndk_headers",
352        "jni_headers",
353    ],
354
355    export_header_lib_headers: [
356        "libstagefright_headers",
357        "media_ndk_headers",
358        "jni_headers",
359    ],
360
361    shared_libs: [
362        "android.hidl.token@1.0-utils",
363        "audioclient-types-aidl-cpp",
364        "av-types-aidl-cpp",
365        "liblog",
366        "libcutils",
367        "libprocessgroup",
368        "libutils",
369        "libbinder",
370        "libbinder_ndk",
371        //"libsonivox",
372        "libandroidicu",
373        "libexpat",
374        "libcamera_client",
375        "libstagefright_foundation",
376        "libgui",
377        "libdl",
378        "libaudioclient",
379        "libmedia_codeclist",
380        "libmedia_omx",
381        "framework-permission-aidl-cpp",
382    ],
383
384    export_shared_lib_headers: [
385        "libaudioclient",
386        "libbinder",
387        //"libsonivox",
388        "libmedia_omx",
389        "framework-permission-aidl-cpp",
390    ],
391
392    static_libs: [
393        "resourcemanager_aidl_interface-ndk",
394        "framework-permission-aidl-cpp",
395    ],
396
397    export_static_lib_headers: [
398        "resourcemanager_aidl_interface-ndk",
399        "framework-permission-aidl-cpp",
400    ],
401
402    export_include_dirs: [
403        "include",
404    ],
405
406    cflags: [
407        "-Werror",
408        "-Wno-error=deprecated-declarations",
409        "-Wall",
410    ],
411
412    version_script: "exports.lds",
413
414    sanitize: {
415        misc_undefined: [
416            "unsigned-integer-overflow",
417            "signed-integer-overflow",
418        ],
419        cfi: true,
420    },
421}
422
423cc_library_static {
424    name: "libmedia_ndkformatpriv",
425
426    host_supported: true,
427
428    srcs: [
429        "NdkMediaFormatPriv.cpp",
430        "NdkMediaErrorPriv.cpp",
431    ],
432
433    header_libs: [
434        "libstagefright_foundation_headers",
435        "libstagefright_headers",
436        "media_ndk_headers",
437    ],
438
439    cflags: [
440        "-DEXPORT=__attribute__((visibility(\"default\")))",
441        "-Werror",
442        "-Wall",
443    ],
444
445    export_include_dirs: ["include"],
446
447    target: {
448        darwin: {
449            enabled: false,
450        },
451    },
452
453    apex_available: [
454        "//apex_available:platform",
455        "com.android.media",
456    ],
457}
458