You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
486 lines
14 KiB
486 lines
14 KiB
package {
|
|
// See: http://go/android-license-faq
|
|
// A large-scale-change added 'default_applicable_licenses' to import
|
|
// all of the 'license_kinds' from "frameworks_av_license"
|
|
// to get the below license kinds:
|
|
// SPDX-license-identifier-Apache-2.0
|
|
default_applicable_licenses: ["frameworks_av_license"],
|
|
}
|
|
|
|
cc_library_headers {
|
|
name: "libaudioclient_headers",
|
|
vendor_available: true,
|
|
min_sdk_version: "29",
|
|
host_supported: true,
|
|
|
|
header_libs: [
|
|
"libaudiofoundation_headers",
|
|
],
|
|
export_include_dirs: [
|
|
"include",
|
|
],
|
|
export_header_lib_headers: [
|
|
"libaudiofoundation_headers",
|
|
],
|
|
static_libs: [
|
|
"audioflinger-aidl-cpp",
|
|
"audiopolicy-aidl-cpp",
|
|
"av-types-aidl-cpp",
|
|
],
|
|
export_static_lib_headers: [
|
|
"audioflinger-aidl-cpp",
|
|
"audiopolicy-aidl-cpp",
|
|
"av-types-aidl-cpp",
|
|
],
|
|
target: {
|
|
darwin: {
|
|
enabled: false,
|
|
},
|
|
},
|
|
}
|
|
|
|
cc_library_shared {
|
|
name: "libaudiopolicy",
|
|
srcs: [
|
|
"AudioAttributes.cpp",
|
|
"AudioPolicy.cpp",
|
|
"AudioProductStrategy.cpp",
|
|
"AudioVolumeGroup.cpp",
|
|
"PolicyAidlConversion.cpp"
|
|
],
|
|
shared_libs: [
|
|
"audioclient-types-aidl-cpp",
|
|
"audioflinger-aidl-cpp",
|
|
"audiopolicy-aidl-cpp",
|
|
"audiopolicy-types-aidl-cpp",
|
|
"capture_state_listener-aidl-cpp",
|
|
"libaudiofoundation",
|
|
"libaudioclient_aidl_conversion",
|
|
"libaudioutils",
|
|
"libbinder",
|
|
"libcutils",
|
|
"liblog",
|
|
"libutils",
|
|
],
|
|
cflags: [
|
|
"-Werror",
|
|
"-Wall",
|
|
],
|
|
include_dirs: ["system/media/audio_utils/include"],
|
|
export_include_dirs: ["include"],
|
|
export_shared_lib_headers: [
|
|
"audioclient-types-aidl-cpp",
|
|
"audioflinger-aidl-cpp",
|
|
"audiopolicy-aidl-cpp",
|
|
"audiopolicy-types-aidl-cpp",
|
|
"capture_state_listener-aidl-cpp",
|
|
"libaudiofoundation",
|
|
"libaudioclient_aidl_conversion",
|
|
],
|
|
header_libs: ["libaudioclient_headers"],
|
|
}
|
|
|
|
cc_library {
|
|
name: "libaudioclient",
|
|
|
|
aidl: {
|
|
export_aidl_headers: true,
|
|
local_include_dirs: ["aidl"],
|
|
include_dirs: [
|
|
"frameworks/av/aidl",
|
|
],
|
|
},
|
|
|
|
srcs: [
|
|
// AIDL files for audioclient interfaces
|
|
// The headers for these interfaces will be available to any modules that
|
|
// include libaudioclient, at the path "aidl/package/path/BnFoo.h"
|
|
":libaudioclient_aidl",
|
|
|
|
"AudioEffect.cpp",
|
|
"AudioRecord.cpp",
|
|
"AudioSystem.cpp",
|
|
"AudioTrack.cpp",
|
|
"AudioTrackShared.cpp",
|
|
"IAudioFlinger.cpp",
|
|
"ToneGenerator.cpp",
|
|
"PlayerBase.cpp",
|
|
"RecordingActivityTracker.cpp",
|
|
"TrackPlayerBase.cpp",
|
|
],
|
|
shared_libs: [
|
|
"audioclient-types-aidl-cpp",
|
|
"audioflinger-aidl-cpp",
|
|
"audiopolicy-aidl-cpp",
|
|
"audiopolicy-types-aidl-cpp",
|
|
"av-types-aidl-cpp",
|
|
"capture_state_listener-aidl-cpp",
|
|
"libaudioclient_aidl_conversion",
|
|
"libaudiofoundation",
|
|
"libaudioutils",
|
|
"libaudiopolicy",
|
|
"libaudiomanager",
|
|
"libbinder",
|
|
"libcutils",
|
|
"libdl",
|
|
"liblog",
|
|
"libmedia_helper",
|
|
"libmediametrics",
|
|
"libmediautils",
|
|
"libnblog",
|
|
"libprocessgroup",
|
|
"libshmemcompat",
|
|
"libutils",
|
|
"libvibrator",
|
|
"framework-permission-aidl-cpp",
|
|
],
|
|
export_shared_lib_headers: [
|
|
"audioflinger-aidl-cpp",
|
|
"audiopolicy-aidl-cpp",
|
|
"framework-permission-aidl-cpp",
|
|
"libbinder",
|
|
],
|
|
|
|
include_dirs: [
|
|
"frameworks/av/media/libnbaio/include_mono/",
|
|
],
|
|
local_include_dirs: [
|
|
"include/media",
|
|
"aidl",
|
|
],
|
|
header_libs: [
|
|
"libaudioclient_headers",
|
|
"libbase_headers",
|
|
"libmedia_headers",
|
|
],
|
|
export_header_lib_headers: ["libaudioclient_headers"],
|
|
export_static_lib_headers: [
|
|
"effect-aidl-cpp",
|
|
"shared-file-region-aidl-cpp",
|
|
],
|
|
|
|
static_libs: [
|
|
"effect-aidl-cpp",
|
|
// for memory heap analysis
|
|
"libc_malloc_debug_backtrace",
|
|
"shared-file-region-aidl-cpp",
|
|
],
|
|
cflags: [
|
|
"-Wall",
|
|
"-Werror",
|
|
"-Wno-error=deprecated-declarations",
|
|
],
|
|
sanitize: {
|
|
misc_undefined: [
|
|
"unsigned-integer-overflow",
|
|
"signed-integer-overflow",
|
|
],
|
|
},
|
|
}
|
|
|
|
// This is intended for clients needing to include AidlConversionUtil.h, without dragging in a lot of extra
|
|
// dependencies.
|
|
cc_library_headers {
|
|
name: "libaudioclient_aidl_conversion_util",
|
|
host_supported: true,
|
|
vendor_available: true,
|
|
double_loadable: true,
|
|
min_sdk_version: "29",
|
|
export_include_dirs: [
|
|
"include",
|
|
],
|
|
header_libs: [
|
|
"libbase_headers",
|
|
],
|
|
export_header_lib_headers: [
|
|
"libbase_headers",
|
|
],
|
|
apex_available: [
|
|
"//apex_available:platform",
|
|
"com.android.bluetooth.updatable",
|
|
"com.android.media",
|
|
"com.android.media.swcodec",
|
|
],
|
|
target: {
|
|
darwin: {
|
|
enabled: false,
|
|
},
|
|
},
|
|
}
|
|
|
|
cc_library {
|
|
name: "libaudioclient_aidl_conversion",
|
|
srcs: ["AidlConversion.cpp"],
|
|
export_include_dirs: ["include"],
|
|
host_supported: true,
|
|
vendor_available: true,
|
|
double_loadable: true,
|
|
min_sdk_version: "29",
|
|
header_libs: [
|
|
"libaudioclient_aidl_conversion_util",
|
|
"libaudio_system_headers",
|
|
],
|
|
export_header_lib_headers: [
|
|
"libaudioclient_aidl_conversion_util",
|
|
],
|
|
shared_libs: [
|
|
"audioclient-types-aidl-cpp",
|
|
"libbase",
|
|
"libbinder",
|
|
"liblog",
|
|
"libshmemcompat",
|
|
"libutils",
|
|
"shared-file-region-aidl-cpp",
|
|
"framework-permission-aidl-cpp",
|
|
],
|
|
export_shared_lib_headers: [
|
|
"audioclient-types-aidl-cpp",
|
|
"libbase",
|
|
"shared-file-region-aidl-cpp",
|
|
],
|
|
cflags: [
|
|
"-Wall",
|
|
"-Werror",
|
|
"-Wno-error=deprecated-declarations",
|
|
],
|
|
sanitize: {
|
|
misc_undefined: [
|
|
"unsigned-integer-overflow",
|
|
"signed-integer-overflow",
|
|
],
|
|
},
|
|
target: {
|
|
darwin: {
|
|
enabled: false,
|
|
},
|
|
},
|
|
}
|
|
|
|
// AIDL interface between libaudioclient and framework.jar
|
|
filegroup {
|
|
name: "libaudioclient_aidl",
|
|
srcs: [
|
|
"aidl/android/media/IPlayer.aidl",
|
|
],
|
|
path: "aidl",
|
|
}
|
|
|
|
aidl_interface {
|
|
name: "capture_state_listener-aidl",
|
|
unstable: true,
|
|
local_include_dir: "aidl",
|
|
host_supported: true,
|
|
double_loadable: true,
|
|
vendor_available: true,
|
|
srcs: [
|
|
"aidl/android/media/ICaptureStateListener.aidl",
|
|
],
|
|
}
|
|
|
|
aidl_interface {
|
|
name: "effect-aidl",
|
|
unstable: true,
|
|
local_include_dir: "aidl",
|
|
host_supported: true,
|
|
double_loadable: true,
|
|
vendor_available: true,
|
|
srcs: [
|
|
"aidl/android/media/IEffect.aidl",
|
|
"aidl/android/media/IEffectClient.aidl",
|
|
],
|
|
imports: [
|
|
"shared-file-region-aidl",
|
|
],
|
|
}
|
|
|
|
aidl_interface {
|
|
name: "audioclient-types-aidl",
|
|
unstable: true,
|
|
host_supported: true,
|
|
vendor_available: true,
|
|
double_loadable: true,
|
|
local_include_dir: "aidl",
|
|
srcs: [
|
|
"aidl/android/media/AudioAttributesInternal.aidl",
|
|
"aidl/android/media/AudioClient.aidl",
|
|
"aidl/android/media/AudioConfig.aidl",
|
|
"aidl/android/media/AudioConfigBase.aidl",
|
|
"aidl/android/media/AudioContentType.aidl",
|
|
"aidl/android/media/AudioDevice.aidl",
|
|
"aidl/android/media/AudioDualMonoMode.aidl",
|
|
"aidl/android/media/AudioEncapsulationMode.aidl",
|
|
"aidl/android/media/AudioEncapsulationMetadataType.aidl",
|
|
"aidl/android/media/AudioEncapsulationType.aidl",
|
|
"aidl/android/media/AudioFlag.aidl",
|
|
"aidl/android/media/AudioGain.aidl",
|
|
"aidl/android/media/AudioGainConfig.aidl",
|
|
"aidl/android/media/AudioGainMode.aidl",
|
|
"aidl/android/media/AudioInputFlags.aidl",
|
|
"aidl/android/media/AudioIoConfigEvent.aidl",
|
|
"aidl/android/media/AudioIoDescriptor.aidl",
|
|
"aidl/android/media/AudioIoFlags.aidl",
|
|
"aidl/android/media/AudioMixLatencyClass.aidl",
|
|
"aidl/android/media/AudioMode.aidl",
|
|
"aidl/android/media/AudioOffloadInfo.aidl",
|
|
"aidl/android/media/AudioOutputFlags.aidl",
|
|
"aidl/android/media/AudioPatch.aidl",
|
|
"aidl/android/media/AudioPlaybackRate.aidl",
|
|
"aidl/android/media/AudioPort.aidl",
|
|
"aidl/android/media/AudioPortConfig.aidl",
|
|
"aidl/android/media/AudioPortConfigType.aidl",
|
|
"aidl/android/media/AudioPortConfigDeviceExt.aidl",
|
|
"aidl/android/media/AudioPortConfigExt.aidl",
|
|
"aidl/android/media/AudioPortConfigMixExt.aidl",
|
|
"aidl/android/media/AudioPortConfigMixExtUseCase.aidl",
|
|
"aidl/android/media/AudioPortConfigSessionExt.aidl",
|
|
"aidl/android/media/AudioPortDeviceExt.aidl",
|
|
"aidl/android/media/AudioPortExt.aidl",
|
|
"aidl/android/media/AudioPortMixExt.aidl",
|
|
"aidl/android/media/AudioPortRole.aidl",
|
|
"aidl/android/media/AudioPortSessionExt.aidl",
|
|
"aidl/android/media/AudioPortType.aidl",
|
|
"aidl/android/media/AudioProfile.aidl",
|
|
"aidl/android/media/AudioSourceType.aidl",
|
|
"aidl/android/media/AudioStandard.aidl",
|
|
"aidl/android/media/AudioStreamType.aidl",
|
|
"aidl/android/media/AudioTimestampInternal.aidl",
|
|
"aidl/android/media/AudioUniqueIdUse.aidl",
|
|
"aidl/android/media/AudioUsage.aidl",
|
|
"aidl/android/media/AudioUuid.aidl",
|
|
"aidl/android/media/AudioVibratorInfo.aidl",
|
|
"aidl/android/media/EffectDescriptor.aidl",
|
|
"aidl/android/media/ExtraAudioDescriptor.aidl",
|
|
"aidl/android/media/TrackSecondaryOutputInfo.aidl",
|
|
],
|
|
imports: [
|
|
"audio_common-aidl",
|
|
"framework-permission-aidl",
|
|
],
|
|
backend: {
|
|
cpp: {
|
|
min_sdk_version: "29",
|
|
apex_available: [
|
|
"//apex_available:platform",
|
|
"com.android.media",
|
|
],
|
|
},
|
|
},
|
|
}
|
|
aidl_interface {
|
|
name: "audiopolicy-types-aidl",
|
|
unstable: true,
|
|
host_supported: true,
|
|
vendor_available: true,
|
|
double_loadable: true,
|
|
local_include_dir: "aidl",
|
|
srcs: [
|
|
"aidl/android/media/AudioAttributesEx.aidl",
|
|
"aidl/android/media/AudioMix.aidl",
|
|
"aidl/android/media/AudioMixCallbackFlag.aidl",
|
|
"aidl/android/media/AudioMixMatchCriterion.aidl",
|
|
"aidl/android/media/AudioMixMatchCriterionValue.aidl",
|
|
"aidl/android/media/AudioMixRouteFlag.aidl",
|
|
"aidl/android/media/AudioMixType.aidl",
|
|
"aidl/android/media/AudioOffloadMode.aidl",
|
|
"aidl/android/media/AudioPolicyDeviceState.aidl",
|
|
"aidl/android/media/AudioPolicyForceUse.aidl",
|
|
"aidl/android/media/AudioPolicyForcedConfig.aidl",
|
|
"aidl/android/media/AudioProductStrategy.aidl",
|
|
"aidl/android/media/AudioVolumeGroup.aidl",
|
|
"aidl/android/media/DeviceRole.aidl",
|
|
"aidl/android/media/SoundTriggerSession.aidl",
|
|
],
|
|
imports: [
|
|
"audio_common-aidl",
|
|
"audioclient-types-aidl",
|
|
],
|
|
backend: {
|
|
cpp: {
|
|
min_sdk_version: "29",
|
|
apex_available: [
|
|
"//apex_available:platform",
|
|
"com.android.media",
|
|
],
|
|
},
|
|
},
|
|
}
|
|
|
|
aidl_interface {
|
|
name: "audioflinger-aidl",
|
|
unstable: true,
|
|
local_include_dir: "aidl",
|
|
host_supported: true,
|
|
vendor_available: true,
|
|
srcs: [
|
|
"aidl/android/media/CreateEffectRequest.aidl",
|
|
"aidl/android/media/CreateEffectResponse.aidl",
|
|
"aidl/android/media/CreateRecordRequest.aidl",
|
|
"aidl/android/media/CreateRecordResponse.aidl",
|
|
"aidl/android/media/CreateTrackRequest.aidl",
|
|
"aidl/android/media/CreateTrackResponse.aidl",
|
|
"aidl/android/media/OpenInputRequest.aidl",
|
|
"aidl/android/media/OpenInputResponse.aidl",
|
|
"aidl/android/media/OpenOutputRequest.aidl",
|
|
"aidl/android/media/OpenOutputResponse.aidl",
|
|
"aidl/android/media/RenderPosition.aidl",
|
|
|
|
"aidl/android/media/IAudioFlingerService.aidl",
|
|
"aidl/android/media/IAudioFlingerClient.aidl",
|
|
"aidl/android/media/IAudioRecord.aidl",
|
|
"aidl/android/media/IAudioTrack.aidl",
|
|
"aidl/android/media/IAudioTrackCallback.aidl",
|
|
],
|
|
imports: [
|
|
"audio_common-aidl",
|
|
"audioclient-types-aidl",
|
|
"av-types-aidl",
|
|
"effect-aidl",
|
|
"shared-file-region-aidl",
|
|
"framework-permission-aidl",
|
|
],
|
|
double_loadable: true,
|
|
backend: {
|
|
cpp: {
|
|
min_sdk_version: "29",
|
|
apex_available: [
|
|
"//apex_available:platform",
|
|
"com.android.media",
|
|
],
|
|
},
|
|
},
|
|
}
|
|
|
|
aidl_interface {
|
|
name: "audiopolicy-aidl",
|
|
unstable: true,
|
|
local_include_dir: "aidl",
|
|
host_supported: true,
|
|
vendor_available: true,
|
|
srcs: [
|
|
"aidl/android/media/GetInputForAttrResponse.aidl",
|
|
"aidl/android/media/GetOutputForAttrResponse.aidl",
|
|
"aidl/android/media/Int.aidl",
|
|
"aidl/android/media/RecordClientInfo.aidl",
|
|
"aidl/android/media/IAudioPolicyService.aidl",
|
|
"aidl/android/media/IAudioPolicyServiceClient.aidl",
|
|
],
|
|
imports: [
|
|
"audio_common-aidl",
|
|
"audioclient-types-aidl",
|
|
"audiopolicy-types-aidl",
|
|
"capture_state_listener-aidl",
|
|
"framework-permission-aidl",
|
|
],
|
|
|
|
double_loadable: true,
|
|
backend: {
|
|
cpp: {
|
|
min_sdk_version: "29",
|
|
apex_available: [
|
|
"//apex_available:platform",
|
|
"com.android.media",
|
|
],
|
|
},
|
|
},
|
|
}
|