1package {
2    default_applicable_licenses: ["frameworks_base_media_jni_license"],
3}
4
5// Added automatically by a large-scale-change
6// See: http://go/android-license-faq
7license {
8    name: "frameworks_base_media_jni_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_shared {
19    name: "libmedia_jni",
20
21    defaults: ["libcodec2-internal-defaults"],
22    min_sdk_version: "",
23
24    srcs: [
25        "android_media_ImageWriter.cpp",
26        "android_media_ImageReader.cpp",
27        "android_media_JetPlayer.cpp",
28        "android_media_MediaCrypto.cpp",
29        "android_media_MediaCodec.cpp",
30        "android_media_MediaCodecList.cpp",
31        "android_media_MediaDataSource.cpp",
32        "android_media_MediaDescrambler.cpp",
33        "android_media_MediaDrm.cpp",
34        "android_media_MediaExtractor.cpp",
35        "android_media_MediaHTTPConnection.cpp",
36        "android_media_MediaMetadataRetriever.cpp",
37        "android_media_MediaMuxer.cpp",
38        "android_media_MediaPlayer.cpp",
39        "android_media_MediaProfiles.cpp",
40        "android_media_MediaRecorder.cpp",
41        "android_media_MediaSync.cpp",
42        "android_media_PublicFormatUtils.cpp",
43        "android_media_ResampleInputStream.cpp",
44        "android_media_Streams.cpp",
45        "android_media_SyncParams.cpp",
46        "android_mtp_MtpDatabase.cpp",
47        "android_mtp_MtpDevice.cpp",
48        "android_mtp_MtpServer.cpp",
49        "JetPlayer.cpp",
50    ],
51
52    shared_libs: [
53        "audioclient-types-aidl-cpp",
54        "av-types-aidl-cpp",
55        "framework-permission-aidl-cpp",
56        "libandroid_runtime",
57        "libaudioclient",
58        "libnativehelper",
59        "libnativewindow",
60        "libutils",
61        "libbinder",
62        "libmedia",
63        "libmedia_codeclist",
64        "libmedia_jni_utils",
65        "libmedia_omx",
66        "libmediametrics",
67        "libmediadrm",
68        "libmediadrmmetrics_consumer",
69        "libhwui",
70        "libui",
71        "liblog",
72        "libcutils",
73        "libgui",
74        "libstagefright",
75        "libstagefright_foundation",
76        "libcamera_client",
77        "libmtp",
78        "libpiex",
79        "libprocessgroup",
80        "libandroidfw",
81        "libhidlallocatorutils",
82        "libhidlbase",
83        "libsonivox",
84        "android.hardware.cas@1.0",
85        "android.hardware.cas.native@1.0",
86        "android.hardware.drm@1.3",
87        "android.hardware.drm@1.4",
88        "android.hidl.memory@1.0",
89        "android.hidl.token@1.0-utils",
90        "android.hardware.drm-V1-ndk",
91        "android.hardware.tv.tuner-V2-ndk",
92    ],
93
94    header_libs: [
95        "libhardware_headers",
96        "libmediadrm_headers",
97    ],
98
99    static_libs: [
100        "libgrallocusage",
101        "libmedia_midiiowrapper",
102    ],
103
104    include_dirs: [
105        "frameworks/base/core/jni",
106        "frameworks/native/include/media/openmax",
107        "system/media/camera/include",
108    ],
109
110    export_include_dirs: ["."],
111
112    export_shared_lib_headers: [
113        "libpiex",
114    ],
115
116    cflags: [
117        "-Wall",
118        "-Werror",
119        "-Wno-error=deprecated-declarations",
120        "-Wunused",
121        "-Wunreachable-code",
122    ],
123
124    // Workaround Clang LTO crash.
125    lto: {
126        never: true,
127    },
128}
129
130cc_library_shared {
131    name: "libmedia_jni_utils",
132    srcs: [
133        ":libgui_frame_event_aidl",
134        "android_media_Utils.cpp",
135    ],
136
137    header_libs: [
138        "libgui_headers",
139    ],
140
141    shared_libs: [
142        "liblog",
143        "libui",
144        "libutils",
145    ],
146
147    include_dirs: [
148        "system/media/camera/include",
149    ],
150
151    export_include_dirs: ["."],
152
153    cflags: [
154        "-Wall",
155        "-Werror",
156        "-Wno-error=deprecated-declarations",
157        "-Wunused",
158        "-Wunreachable-code",
159    ],
160}
161
162cc_library_shared {
163    name: "libmedia_tv_tuner",
164    min_sdk_version: "",
165    srcs: [
166        "android_media_tv_Tuner.cpp",
167        "tuner/DemuxClient.cpp",
168        "tuner/DescramblerClient.cpp",
169        "tuner/DvrClient.cpp",
170        "tuner/FilterClient.cpp",
171        "tuner/FrontendClient.cpp",
172        "tuner/LnbClient.cpp",
173        "tuner/TimeFilterClient.cpp",
174        "tuner/TunerClient.cpp",
175    ],
176
177    shared_libs: [
178        "android.hardware.graphics.bufferqueue@2.0",
179        "android.hardware.tv.tuner-V2-ndk",
180        "libbinder_ndk",
181        "libandroid_runtime",
182        "libcutils",
183        "libfmq",
184        "libhidlbase",
185        "liblog",
186        "libmedia",
187        "libnativehelper",
188        "libutils",
189        "tv_tuner_aidl_interface-ndk",
190    ],
191
192    static_libs: [
193        "libaidlcommonsupport",
194    ],
195
196    defaults: [
197        "libcodec2-impl-defaults",
198    ],
199
200    header_libs: [
201        "libcodec2_internal",
202        "libstagefright_foundation_headers",
203    ],
204
205    // TunerService is a system service required for Tuner feature.
206    // TunerJNI is a client of TunerService so we build the dependency here.
207    required: ["mediatuner"],
208
209    export_include_dirs: ["."],
210
211    cflags: [
212        "-Wall",
213        "-Werror",
214        "-Wno-error=deprecated-declarations",
215        "-Wunused",
216        "-Wunreachable-code",
217    ],
218}
219