1cc_library_headers { 2 name: "libmedia_headers", 3 vendor_available: true, 4 min_sdk_version: "29", 5 6 export_include_dirs: ["include"], 7 header_libs: [ 8 "libbase_headers", 9 "libgui_headers", 10 "libstagefright_headers", 11 "media_plugin_headers", 12 ], 13 export_header_lib_headers: [ 14 "libgui_headers", 15 "libstagefright_headers", 16 "media_plugin_headers", 17 ], 18} 19 20filegroup { 21 name: "libmedia_omx_aidl", 22 srcs: [ 23 "aidl/android/IOMXBufferSource.aidl", 24 ], 25 path: "aidl", 26} 27 28filegroup { 29 name: "mediaextractorservice_aidl", 30 srcs: [ 31 "aidl/android/IMediaExtractorService.aidl", 32 ], 33 path: "aidl", 34} 35 36filegroup { 37 name: "resourcemanager_aidl", 38 srcs: [ 39 "aidl/android/media/IResourceManagerClient.aidl", 40 "aidl/android/media/IResourceManagerService.aidl", 41 "aidl/android/media/MediaResourceType.aidl", 42 "aidl/android/media/MediaResourceSubType.aidl", 43 "aidl/android/media/MediaResourceParcel.aidl", 44 "aidl/android/media/MediaResourcePolicyParcel.aidl", 45 ], 46 path: "aidl", 47} 48 49aidl_interface { 50 name: "resourcemanager_aidl_interface", 51 unstable: true, 52 local_include_dir: "aidl", 53 srcs: [ 54 ":resourcemanager_aidl", 55 ], 56} 57 58cc_library_shared { 59 name: "libmedia_omx", 60 vendor_available: true, 61 vndk: { 62 enabled: true, 63 }, 64 double_loadable: true, 65 66 srcs: [ 67 ":libmedia_omx_aidl", 68 69 "IOMX.cpp", 70 "MediaCodecBuffer.cpp", 71 "OMXBuffer.cpp", 72 "omx/1.0/WOmxBufferSource.cpp", 73 "omx/1.0/WOmxNode.cpp", 74 "omx/1.0/WOmxObserver.cpp", 75 ], 76 77 aidl: { 78 local_include_dirs: ["aidl"], 79 export_aidl_headers: true, 80 }, 81 82 local_include_dirs: [ 83 "include", 84 ], 85 86 shared_libs: [ 87 "android.hidl.token@1.0-utils", 88 "android.hardware.media.omx@1.0", 89 "libbinder", 90 "libcutils", 91 "libhidlbase", 92 "liblog", 93 "libstagefright_foundation", 94 "libui", 95 "libutils", 96 ], 97 98 export_shared_lib_headers: [ 99 "android.hidl.token@1.0-utils", 100 "android.hardware.media.omx@1.0", 101 "libstagefright_foundation", 102 "libui", 103 ], 104 105 header_libs: [ 106 "libstagefright_headers", 107 "media_plugin_headers", 108 ], 109 110 export_header_lib_headers: [ 111 "libstagefright_headers", 112 "media_plugin_headers", 113 ], 114 115 export_include_dirs: [ 116 "aidl", 117 "include", 118 ], 119 120 cflags: [ 121 "-Werror", 122 "-Wno-error=deprecated-declarations", 123 "-Wall", 124 ], 125 126 sanitize: { 127 misc_undefined: [ 128 "unsigned-integer-overflow", 129 "signed-integer-overflow", 130 ], 131 cfi: true, 132 }, 133} 134 135cc_library_shared { 136 name: "libmedia_omx_client", 137 138 srcs: [ 139 "omx/1.0/WOmx.cpp", 140 ], 141 142 local_include_dirs: [ 143 "include", 144 ], 145 146 shared_libs: [ 147 "libbinder", 148 "libcutils", 149 "libgui", 150 "libhidlbase", 151 "liblog", 152 "libmedia_omx", 153 "libstagefright_foundation", 154 "libui", 155 "libutils", 156 ], 157 158 export_shared_lib_headers: [ 159 "libgui", 160 "libmedia_omx", 161 "libstagefright_foundation", 162 "libui", 163 ], 164 165 header_libs: [ 166 "libstagefright_headers", 167 "media_plugin_headers", 168 ], 169 170 export_header_lib_headers: [ 171 "libstagefright_headers", 172 "media_plugin_headers", 173 ], 174 175 export_include_dirs: [ 176 "include", 177 ], 178 179 cflags: [ 180 "-Werror", 181 "-Wno-error=deprecated-declarations", 182 "-Wall", 183 ], 184 185 sanitize: { 186 misc_undefined: [ 187 "unsigned-integer-overflow", 188 "signed-integer-overflow", 189 ], 190 cfi: true, 191 }, 192} 193 194cc_library_static { 195 name: "libmedia_midiiowrapper", 196 197 min_sdk_version: "29", 198 199 srcs: ["MidiIoWrapper.cpp"], 200 201 static_libs: [ 202 "libsonivoxwithoutjet", 203 ], 204 205 header_libs: [ 206 "libmedia_headers", 207 "media_ndk_headers", 208 ], 209 210 cflags: [ 211 "-Werror", 212 "-Wno-error=deprecated-declarations", 213 "-Wall", 214 ], 215 216 sanitize: { 217 misc_undefined: [ 218 "unsigned-integer-overflow", 219 "signed-integer-overflow", 220 ], 221 cfi: true, 222 }, 223} 224 225cc_library_shared { 226 name: "libmedia_codeclist", 227 228 srcs: [ 229 "IMediaCodecList.cpp", 230 "MediaCodecInfo.cpp", 231 ], 232 233 local_include_dirs: [ 234 "include", 235 ], 236 237 shared_libs: [ 238 "android.hardware.media.omx@1.0", 239 "libbinder", 240 "liblog", 241 "libstagefright_foundation", 242 "libutils", 243 ], 244 245 include_dirs: [ 246 "system/libhidl/transport/token/1.0/utils/include", 247 ], 248 249 export_include_dirs: [ 250 "include", 251 ], 252 253 cflags: [ 254 "-Werror", 255 "-Wno-error=deprecated-declarations", 256 "-Wall", 257 ], 258 259 sanitize: { 260 misc_undefined: [ 261 "unsigned-integer-overflow", 262 "signed-integer-overflow", 263 ], 264 cfi: true, 265 }, 266} 267 268cc_library { 269 name: "libmedia", 270 271 srcs: [ 272 ":mediaextractorservice_aidl", 273 "IDataSource.cpp", 274 "BufferingSettings.cpp", 275 "mediaplayer.cpp", 276 "IMediaHTTPConnection.cpp", 277 "IMediaHTTPService.cpp", 278 "IMediaExtractor.cpp", 279 "IMediaPlayerService.cpp", 280 "IMediaPlayerClient.cpp", 281 "IMediaRecorderClient.cpp", 282 "IMediaPlayer.cpp", 283 "IMediaRecorder.cpp", 284 "IMediaSource.cpp", 285 "IRemoteDisplay.cpp", 286 "IRemoteDisplayClient.cpp", 287 "IStreamSource.cpp", 288 "Metadata.cpp", 289 "mediarecorder.cpp", 290 "IMediaMetadataRetriever.cpp", 291 "mediametadataretriever.cpp", 292 "MediaScanner.cpp", 293 "MediaScannerClient.cpp", 294 "CharacterEncodingDetector.cpp", 295 "IMediaDeathNotifier.cpp", 296 "MediaProfiles.cpp", 297 "MediaResource.cpp", 298 "MediaResourcePolicy.cpp", 299 "StringArray.cpp", 300 "NdkMediaFormatPriv.cpp", 301 "NdkMediaErrorPriv.cpp", 302 ], 303 304 aidl: { 305 local_include_dirs: ["aidl"], 306 export_aidl_headers: true, 307 }, 308 309 header_libs: [ 310 "libstagefright_headers", 311 "media_ndk_headers", 312 ], 313 314 export_header_lib_headers: [ 315 "libstagefright_headers", 316 "media_ndk_headers", 317 ], 318 319 shared_libs: [ 320 "android.hidl.token@1.0-utils", 321 "liblog", 322 "libcutils", 323 "libprocessgroup", 324 "libutils", 325 "libbinder", 326 "libbinder_ndk", 327 //"libsonivox", 328 "libandroidicu", 329 "libexpat", 330 "libcamera_client", 331 "libstagefright_foundation", 332 "libgui", 333 "libdl", 334 "libaudioclient", 335 "libmedia_codeclist", 336 "libmedia_omx", 337 ], 338 339 export_shared_lib_headers: [ 340 "libaudioclient", 341 "libbinder", 342 "libandroidicu", 343 //"libsonivox", 344 "libmedia_omx", 345 ], 346 347 static_libs: [ 348 "resourcemanager_aidl_interface-ndk_platform", 349 ], 350 351 export_static_lib_headers: [ 352 "resourcemanager_aidl_interface-ndk_platform", 353 ], 354 355 export_include_dirs: [ 356 "include", 357 ], 358 359 cflags: [ 360 "-Werror", 361 "-Wno-error=deprecated-declarations", 362 "-Wall", 363 ], 364 365 version_script: "exports.lds", 366 367 sanitize: { 368 misc_undefined: [ 369 "unsigned-integer-overflow", 370 "signed-integer-overflow", 371 ], 372 cfi: true, 373 }, 374} 375