package { default_applicable_licenses: ["frameworks_av_media_libmedia_license"], } // Added automatically by a large-scale-change // See: http://go/android-license-faq license { name: "frameworks_av_media_libmedia_license", visibility: [":__subpackages__"], license_kinds: [ "SPDX-license-identifier-Apache-2.0", ], license_text: [ "NOTICE", ], } cc_library_headers { name: "libmedia_headers", vendor_available: true, min_sdk_version: "29", apex_available: [ "//apex_available:platform", "com.android.media.swcodec", ], export_include_dirs: ["include"], header_libs: [ "av-headers", "libbase_headers", "libgui_headers", "libstagefright_headers", "media_plugin_headers", ], export_header_lib_headers: [ "av-headers", "libgui_headers", "libstagefright_headers", "media_plugin_headers", ], } cc_library_headers { name: "libmedia_datasource_headers", export_include_dirs: ["include"], host_supported: true, target: { darwin: { enabled: false, }, }, header_libs: [ "libbinder_headers", ], export_header_lib_headers: [ "libbinder_headers", ], apex_available: [ "//apex_available:platform", "com.android.media", ], min_sdk_version: "29", } filegroup { name: "libmedia_omx_aidl", srcs: [ "aidl/android/IOMXBufferSource.aidl", ], path: "aidl", } filegroup { name: "mediaextractorservice_aidl", srcs: [ "aidl/android/IMediaExtractorService.aidl", ], path: "aidl", } cc_library_shared { name: "libmedia_omx", vendor_available: true, vndk: { enabled: true, }, double_loadable: true, srcs: [ ":libmedia_omx_aidl", "IOMX.cpp", "MediaCodecBuffer.cpp", "OMXBuffer.cpp", "omx/1.0/WOmxBufferSource.cpp", "omx/1.0/WOmxNode.cpp", "omx/1.0/WOmxObserver.cpp", ], aidl: { local_include_dirs: ["aidl"], export_aidl_headers: true, }, local_include_dirs: [ "include", ], shared_libs: [ "android.hidl.token@1.0-utils", "android.hardware.media.omx@1.0", "libbinder", "libcutils", "libhidlbase", "liblog", "libstagefright_foundation", "libui", "libutils", ], export_shared_lib_headers: [ "android.hidl.token@1.0-utils", "android.hardware.media.omx@1.0", "libstagefright_foundation", "libui", ], header_libs: [ "libstagefright_headers", "media_plugin_headers", ], export_header_lib_headers: [ "libstagefright_headers", "media_plugin_headers", ], export_include_dirs: [ "aidl", "include", ], cflags: [ "-Werror", "-Wno-error=deprecated-declarations", "-Wall", ], sanitize: { misc_undefined: [ "unsigned-integer-overflow", "signed-integer-overflow", ], cfi: true, }, } cc_library_shared { name: "libmedia_omx_client", srcs: [ "omx/1.0/WOmx.cpp", ], local_include_dirs: [ "include", ], shared_libs: [ "libbinder", "libcutils", "libgui", "libhidlbase", "liblog", "libmedia_omx", "libstagefright_foundation", "libui", "libutils", ], export_shared_lib_headers: [ "libgui", "libmedia_omx", "libstagefright_foundation", "libui", ], header_libs: [ "libstagefright_headers", "media_plugin_headers", ], export_header_lib_headers: [ "libstagefright_headers", "media_plugin_headers", ], export_include_dirs: [ "include", ], cflags: [ "-Werror", "-Wno-error=deprecated-declarations", "-Wall", ], sanitize: { misc_undefined: [ "unsigned-integer-overflow", "signed-integer-overflow", ], cfi: true, }, } cc_library_static { name: "libmedia_midiiowrapper", min_sdk_version: "29", apex_available: [ "//apex_available:platform", "com.android.media", ], srcs: ["MidiIoWrapper.cpp"], static_libs: [ "libsonivoxwithoutjet", ], header_libs: [ "libmedia_datasource_headers", "media_ndk_headers", ], cflags: [ "-Werror", "-Wno-error=deprecated-declarations", "-Wall", ], sanitize: { misc_undefined: [ "unsigned-integer-overflow", "signed-integer-overflow", ], cfi: true, }, host_supported: true, target: { darwin: { enabled: false, }, }, } cc_library_shared { name: "libmedia_codeclist", srcs: [ "IMediaCodecList.cpp", "MediaCodecInfo.cpp", ], local_include_dirs: [ "include", ], shared_libs: [ "android.hardware.media.omx@1.0", "libbinder", "liblog", "libstagefright_foundation", "libutils", ], include_dirs: [ "system/libhidl/transport/token/1.0/utils/include", ], export_include_dirs: [ "include", ], cflags: [ "-Werror", "-Wno-error=deprecated-declarations", "-Wall", ], sanitize: { misc_undefined: [ "unsigned-integer-overflow", "signed-integer-overflow", ], cfi: true, }, } cc_library { name: "libmedia", srcs: [ ":mediaextractorservice_aidl", "IDataSource.cpp", "BufferingSettings.cpp", "mediaplayer.cpp", "IMediaHTTPConnection.cpp", "IMediaHTTPService.cpp", "IMediaExtractor.cpp", "IMediaPlayerService.cpp", "IMediaPlayerClient.cpp", "IMediaRecorderClient.cpp", "IMediaPlayer.cpp", "IMediaRecorder.cpp", "IMediaSource.cpp", "IRemoteDisplay.cpp", "IRemoteDisplayClient.cpp", "IStreamSource.cpp", "Metadata.cpp", "mediarecorder.cpp", "IMediaMetadataRetriever.cpp", "mediametadataretriever.cpp", "MediaScanner.cpp", "MediaScannerClient.cpp", "CharacterEncodingDetector.cpp", "IMediaDeathNotifier.cpp", "MediaProfiles.cpp", "MediaResource.cpp", "MediaResourcePolicy.cpp", "StringArray.cpp", "NdkMediaFormatPriv.cpp", "NdkMediaErrorPriv.cpp", ], aidl: { local_include_dirs: ["aidl"], export_aidl_headers: true, }, header_libs: [ "libstagefright_headers", "media_ndk_headers", "jni_headers", ], export_header_lib_headers: [ "libstagefright_headers", "media_ndk_headers", "jni_headers", ], shared_libs: [ "android.hidl.token@1.0-utils", "android.media.audio.common.types-V1-cpp", "audioclient-types-aidl-cpp", "av-types-aidl-cpp", "liblog", "libcutils", "libprocessgroup", "libutils", "libbinder", "libbinder_ndk", //"libsonivox", "libandroidicu", "libexpat", "libcamera_client", "libstagefright_foundation", "libgui", "libdl", "libaudioclient", "libmedia_codeclist", "libmedia_omx", "framework-permission-aidl-cpp", ], export_shared_lib_headers: [ "libaudioclient", "libbinder", "libandroidicu", //"libsonivox", "libmedia_omx", "framework-permission-aidl-cpp", ], static_libs: [ "resourcemanager_aidl_interface-ndk", "framework-permission-aidl-cpp", ], export_static_lib_headers: [ "resourcemanager_aidl_interface-ndk", "framework-permission-aidl-cpp", ], export_include_dirs: [ "include", ], cflags: [ "-Werror", "-Wno-error=deprecated-declarations", "-Wall", ], version_script: "exports.lds", sanitize: { misc_undefined: [ "unsigned-integer-overflow", "signed-integer-overflow", ], cfi: true, }, } cc_library_static { name: "libmedia_ndkformatpriv", host_supported: true, srcs: [ "NdkMediaFormatPriv.cpp", "NdkMediaErrorPriv.cpp", ], header_libs: [ "libstagefright_foundation_headers", "libstagefright_headers", "media_ndk_headers", ], cflags: [ "-DEXPORT=__attribute__((visibility(\"default\")))", "-Werror", "-Wall", ], export_include_dirs: ["include"], target: { darwin: { enabled: false, }, }, apex_available: [ "//apex_available:platform", "com.android.media", ], }