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 double_loadable: true, 85 86 srcs: [ 87 ":libmedia_omx_aidl", 88 89 "IOMX.cpp", 90 "MediaCodecBuffer.cpp", 91 "OMXBuffer.cpp", 92 "omx/1.0/WOmxBufferSource.cpp", 93 "omx/1.0/WOmxNode.cpp", 94 "omx/1.0/WOmxObserver.cpp", 95 ], 96 97 aidl: { 98 local_include_dirs: ["aidl"], 99 export_aidl_headers: true, 100 }, 101 102 local_include_dirs: [ 103 "include", 104 ], 105 106 shared_libs: [ 107 "android.hidl.token@1.0-utils", 108 "android.hardware.media.omx@1.0", 109 "libbinder", 110 "libcutils", 111 "libhidlbase", 112 "liblog", 113 "libstagefright_foundation", 114 "libui", 115 "libutils", 116 ], 117 118 export_shared_lib_headers: [ 119 "android.hidl.token@1.0-utils", 120 "android.hardware.media.omx@1.0", 121 "libstagefright_foundation", 122 "libui", 123 ], 124 125 header_libs: [ 126 "libstagefright_headers", 127 "media_plugin_headers", 128 ], 129 130 export_header_lib_headers: [ 131 "libstagefright_headers", 132 "media_plugin_headers", 133 ], 134 135 export_include_dirs: [ 136 "aidl", 137 "include", 138 ], 139 140 cflags: [ 141 "-Werror", 142 "-Wno-error=deprecated-declarations", 143 "-Wall", 144 ], 145 146 sanitize: { 147 misc_undefined: [ 148 "unsigned-integer-overflow", 149 "signed-integer-overflow", 150 ], 151 cfi: true, 152 }, 153} 154 155cc_library_shared { 156 name: "libmedia_omx_client", 157 158 srcs: [ 159 "omx/1.0/WOmx.cpp", 160 ], 161 162 local_include_dirs: [ 163 "include", 164 ], 165 166 shared_libs: [ 167 "libbinder", 168 "libcutils", 169 "libgui", 170 "libhidlbase", 171 "liblog", 172 "libmedia_omx", 173 "libstagefright_foundation", 174 "libui", 175 "libutils", 176 ], 177 178 export_shared_lib_headers: [ 179 "libgui", 180 "libmedia_omx", 181 "libstagefright_foundation", 182 "libui", 183 ], 184 185 header_libs: [ 186 "libstagefright_headers", 187 "media_plugin_headers", 188 ], 189 190 export_header_lib_headers: [ 191 "libstagefright_headers", 192 "media_plugin_headers", 193 ], 194 195 export_include_dirs: [ 196 "include", 197 ], 198 199 cflags: [ 200 "-Werror", 201 "-Wno-error=deprecated-declarations", 202 "-Wall", 203 ], 204 205 sanitize: { 206 misc_undefined: [ 207 "unsigned-integer-overflow", 208 "signed-integer-overflow", 209 ], 210 cfi: true, 211 }, 212} 213 214cc_library_static { 215 name: "libmedia_midiiowrapper", 216 217 min_sdk_version: "29", 218 apex_available: [ 219 "//apex_available:platform", 220 "com.android.media", 221 ], 222 223 srcs: ["MidiIoWrapper.cpp"], 224 225 static_libs: [ 226 "libsonivoxwithoutjet", 227 ], 228 229 header_libs: [ 230 "libmedia_datasource_headers", 231 "media_ndk_headers", 232 ], 233 234 cflags: [ 235 "-Werror", 236 "-Wno-error=deprecated-declarations", 237 "-Wall", 238 ], 239 240 sanitize: { 241 misc_undefined: [ 242 "unsigned-integer-overflow", 243 "signed-integer-overflow", 244 ], 245 cfi: true, 246 }, 247 248 host_supported: true, 249 250 target: { 251 darwin: { 252 enabled: false, 253 }, 254 }, 255} 256 257cc_library_shared { 258 name: "libmedia_codeclist", 259 260 srcs: [ 261 "IMediaCodecList.cpp", 262 "MediaCodecInfo.cpp", 263 ], 264 265 local_include_dirs: [ 266 "include", 267 ], 268 269 shared_libs: [ 270 "android.hardware.media.omx@1.0", 271 "libbinder", 272 "liblog", 273 "libstagefright_foundation", 274 "libutils", 275 ], 276 277 static_libs: [ 278 "android.media.codec-aconfig-cc", 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