1// Copyright 2020, The Android Open Source Project 2// 3// Licensed under the Apache License, Version 2.0 (the "License"); 4// you may not use this file except in compliance with the License. 5// You may obtain a copy of the License at 6// 7// http://www.apache.org/licenses/LICENSE-2.0 8// 9// Unless required by applicable law or agreed to in writing, software 10// distributed under the License is distributed on an "AS IS" BASIS, 11// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 12// See the License for the specific language governing permissions and 13// limitations under the License. 14 15package { 16 default_applicable_licenses: ["Android-Apache-2.0"], 17} 18 19aidl_interface { 20 name: "android.media.audio.common.types", 21 vendor_available: true, 22 host_supported: true, 23 double_loadable: true, 24 flags: [ 25 "-Werror", 26 "-Weverything", 27 ], 28 local_include_dir: "aidl", 29 srcs: [ 30 "aidl/android/media/audio/common/AudioAttributes.aidl", 31 "aidl/android/media/audio/common/AudioChannelLayout.aidl", 32 "aidl/android/media/audio/common/AudioConfig.aidl", 33 "aidl/android/media/audio/common/AudioConfigBase.aidl", 34 "aidl/android/media/audio/common/AudioContentType.aidl", 35 "aidl/android/media/audio/common/AudioDevice.aidl", 36 "aidl/android/media/audio/common/AudioDeviceAddress.aidl", 37 "aidl/android/media/audio/common/AudioDeviceDescription.aidl", 38 "aidl/android/media/audio/common/AudioDeviceType.aidl", 39 "aidl/android/media/audio/common/AudioDualMonoMode.aidl", 40 "aidl/android/media/audio/common/AudioEncapsulationMetadataType.aidl", 41 "aidl/android/media/audio/common/AudioEncapsulationMode.aidl", 42 "aidl/android/media/audio/common/AudioEncapsulationType.aidl", 43 "aidl/android/media/audio/common/AudioFlag.aidl", 44 "aidl/android/media/audio/common/AudioFormatDescription.aidl", 45 "aidl/android/media/audio/common/AudioFormatType.aidl", 46 "aidl/android/media/audio/common/AudioGain.aidl", 47 "aidl/android/media/audio/common/AudioGainConfig.aidl", 48 "aidl/android/media/audio/common/AudioGainMode.aidl", 49 "aidl/android/media/audio/common/AudioHalAttributesGroup.aidl", 50 "aidl/android/media/audio/common/AudioHalCapConfiguration.aidl", 51 "aidl/android/media/audio/common/AudioHalCapCriterion.aidl", 52 "aidl/android/media/audio/common/AudioHalCapCriterionV2.aidl", 53 "aidl/android/media/audio/common/AudioHalCapCriterionType.aidl", 54 "aidl/android/media/audio/common/AudioHalCapDomain.aidl", 55 "aidl/android/media/audio/common/AudioHalCapParameter.aidl", 56 "aidl/android/media/audio/common/AudioHalCapRule.aidl", 57 "aidl/android/media/audio/common/AudioHalEngineConfig.aidl", 58 "aidl/android/media/audio/common/AudioHalProductStrategy.aidl", 59 "aidl/android/media/audio/common/AudioHalVolumeCurve.aidl", 60 "aidl/android/media/audio/common/AudioHalVolumeGroup.aidl", 61 "aidl/android/media/audio/common/AudioInputFlags.aidl", 62 "aidl/android/media/audio/common/AudioIoFlags.aidl", 63 "aidl/android/media/audio/common/AudioLatencyMode.aidl", 64 "aidl/android/media/audio/common/AudioMMapPolicy.aidl", 65 "aidl/android/media/audio/common/AudioMMapPolicyInfo.aidl", 66 "aidl/android/media/audio/common/AudioMMapPolicyType.aidl", 67 "aidl/android/media/audio/common/AudioMode.aidl", 68 "aidl/android/media/audio/common/AudioOffloadInfo.aidl", 69 "aidl/android/media/audio/common/AudioOutputFlags.aidl", 70 "aidl/android/media/audio/common/AudioPlaybackRate.aidl", 71 "aidl/android/media/audio/common/AudioPolicyForceUse.aidl", 72 "aidl/android/media/audio/common/AudioPort.aidl", 73 "aidl/android/media/audio/common/AudioPortConfig.aidl", 74 "aidl/android/media/audio/common/AudioPortDeviceExt.aidl", 75 "aidl/android/media/audio/common/AudioPortExt.aidl", 76 "aidl/android/media/audio/common/AudioPortMixExt.aidl", 77 "aidl/android/media/audio/common/AudioPortMixExtUseCase.aidl", 78 "aidl/android/media/audio/common/AudioProductStrategyType.aidl", 79 "aidl/android/media/audio/common/AudioProfile.aidl", 80 "aidl/android/media/audio/common/AudioSource.aidl", 81 "aidl/android/media/audio/common/AudioStandard.aidl", 82 "aidl/android/media/audio/common/AudioStreamType.aidl", 83 "aidl/android/media/audio/common/AudioUsage.aidl", 84 "aidl/android/media/audio/common/AudioUuid.aidl", 85 "aidl/android/media/audio/common/AudioVolumeGroupChangeEvent.aidl", 86 "aidl/android/media/audio/common/Boolean.aidl", 87 "aidl/android/media/audio/common/Byte.aidl", 88 "aidl/android/media/audio/common/ExtraAudioDescriptor.aidl", 89 "aidl/android/media/audio/common/Float.aidl", 90 "aidl/android/media/audio/common/Double.aidl", 91 "aidl/android/media/audio/common/HeadTracking.aidl", 92 "aidl/android/media/audio/common/Int.aidl", 93 "aidl/android/media/audio/common/Long.aidl", 94 "aidl/android/media/audio/common/MicrophoneDynamicInfo.aidl", 95 "aidl/android/media/audio/common/MicrophoneInfo.aidl", 96 "aidl/android/media/audio/common/PcmType.aidl", 97 "aidl/android/media/audio/common/Spatialization.aidl", 98 "aidl/android/media/audio/common/Void.aidl", 99 ], 100 stability: "vintf", 101 backend: { 102 cpp: { 103 min_sdk_version: "29", 104 apex_available: [ 105 "//apex_available:platform", 106 "com.android.media", 107 ], 108 }, 109 java: { 110 sdk_version: "module_current", 111 min_sdk_version: "29", 112 apex_available: [ 113 "//apex_available:platform", 114 "com.android.car.framework", 115 ], 116 lint: { 117 baseline_filename: "lint-baseline.xml", 118 }, 119 }, 120 ndk: { 121 min_sdk_version: "29", 122 apex_available: [ 123 "//apex_available:platform", 124 "com.android.btservices", 125 ], 126 }, 127 rust: { 128 enabled: true, 129 }, 130 }, 131 versions_with_info: [ 132 { 133 version: "1", 134 imports: [], 135 }, 136 { 137 version: "2", 138 imports: [], 139 }, 140 { 141 version: "3", 142 imports: [], 143 }, 144 145 // IMPORTANT: Update latest_android_media_audio_common_types every time 146 // you add the latest frozen version to versions_with_info 147 ], 148 frozen: false, 149 150} 151 152// Note: This should always be one version ahead of the last frozen version 153latest_android_media_audio_common_types = "android.media.audio.common.types-V4" 154 155// Modules that depend on android.media.audio.common.types directly can include 156// the following cc_defaults to avoid explicitly managing dependency versions 157// across many scattered files. 158cc_defaults { 159 name: "latest_android_media_audio_common_types_cpp_shared", 160 shared_libs: [ 161 latest_android_media_audio_common_types + "-cpp", 162 ], 163} 164 165cc_defaults { 166 name: "latest_android_media_audio_common_types_cpp_export_shared", 167 defaults: [ 168 "latest_android_media_audio_common_types_cpp_shared", 169 ], 170 export_shared_lib_headers: [ 171 latest_android_media_audio_common_types + "-cpp", 172 ], 173} 174 175cc_defaults { 176 name: "latest_android_media_audio_common_types_cpp_static", 177 static_libs: [ 178 latest_android_media_audio_common_types + "-cpp", 179 ], 180} 181 182cc_defaults { 183 name: "latest_android_media_audio_common_types_cpp_export_static", 184 defaults: [ 185 "latest_android_media_audio_common_types_cpp_static", 186 ], 187 export_static_lib_headers: [ 188 latest_android_media_audio_common_types + "-cpp", 189 ], 190} 191 192cc_defaults { 193 name: "latest_android_media_audio_common_types_ndk_shared", 194 shared_libs: [ 195 latest_android_media_audio_common_types + "-ndk", 196 ], 197} 198 199cc_defaults { 200 name: "latest_android_media_audio_common_types_ndk_static", 201 static_libs: [ 202 latest_android_media_audio_common_types + "-ndk", 203 ], 204} 205 206cc_defaults { 207 name: "latest_android_media_audio_common_types_cpp_target_shared", 208 target: { 209 android: { 210 shared_libs: [ 211 latest_android_media_audio_common_types + "-cpp", 212 ], 213 }, 214 }, 215} 216 217rust_defaults { 218 name: "latest_android_media_audio_common_types_rust", 219 rustlibs: [ 220 latest_android_media_audio_common_types + "-rust", 221 ], 222} 223 224aidl_interface_defaults { 225 name: "latest_android_media_audio_common_types_import_interface", 226 imports: [ 227 latest_android_media_audio_common_types, 228 ], 229} 230 231aidl_interface { 232 name: "android.media.soundtrigger.types", 233 vendor_available: true, 234 host_supported: true, 235 flags: [ 236 "-Werror", 237 "-Weverything", 238 ], 239 local_include_dir: "aidl", 240 srcs: [ 241 "aidl/android/media/soundtrigger/AudioCapabilities.aidl", 242 "aidl/android/media/soundtrigger/ConfidenceLevel.aidl", 243 "aidl/android/media/soundtrigger/ModelParameter.aidl", 244 "aidl/android/media/soundtrigger/ModelParameterRange.aidl", 245 "aidl/android/media/soundtrigger/Phrase.aidl", 246 "aidl/android/media/soundtrigger/PhraseRecognitionEvent.aidl", 247 "aidl/android/media/soundtrigger/PhraseRecognitionExtra.aidl", 248 "aidl/android/media/soundtrigger/PhraseSoundModel.aidl", 249 "aidl/android/media/soundtrigger/Properties.aidl", 250 "aidl/android/media/soundtrigger/RecognitionConfig.aidl", 251 "aidl/android/media/soundtrigger/RecognitionEvent.aidl", 252 "aidl/android/media/soundtrigger/RecognitionMode.aidl", 253 "aidl/android/media/soundtrigger/RecognitionStatus.aidl", 254 "aidl/android/media/soundtrigger/SoundModel.aidl", 255 "aidl/android/media/soundtrigger/SoundModelType.aidl", 256 "aidl/android/media/soundtrigger/Status.aidl", 257 ], 258 stability: "vintf", 259 backend: { 260 cpp: { 261 enabled: true, 262 }, 263 java: { 264 sdk_version: "module_current", 265 }, 266 }, 267 imports: [ 268 latest_android_media_audio_common_types, 269 ], 270 versions_with_info: [ 271 { 272 version: "1", 273 imports: ["android.media.audio.common.types-V2"], 274 }, 275 { 276 version: "2", 277 imports: ["android.media.audio.common.types-V3"], 278 }, 279 280 ], 281 frozen: false, 282 283} 284 285// Note: This should always be one version ahead of the last frozen version 286latest_android_media_soundtrigger_types = "android.media.soundtrigger.types-V3" 287 288cc_defaults { 289 name: "latest_android_media_soundtrigger_types_cpp_shared", 290 shared_libs: [ 291 latest_android_media_soundtrigger_types + "-cpp", 292 ], 293} 294 295cc_defaults { 296 name: "latest_android_media_soundtrigger_types_cpp_export_shared", 297 defaults: [ 298 "latest_android_media_soundtrigger_types_cpp_shared", 299 ], 300 export_shared_lib_headers: [ 301 latest_android_media_soundtrigger_types + "-cpp", 302 ], 303} 304 305cc_defaults { 306 name: "latest_android_media_soundtrigger_types_cpp_static", 307 static_libs: [ 308 latest_android_media_soundtrigger_types + "-cpp", 309 ], 310} 311 312cc_defaults { 313 name: "latest_android_media_soundtrigger_types_cpp_export_static", 314 defaults: [ 315 "latest_android_media_soundtrigger_types_cpp_static", 316 ], 317 export_static_lib_headers: [ 318 latest_android_media_soundtrigger_types + "-cpp", 319 ], 320} 321 322cc_defaults { 323 name: "latest_android_media_soundtrigger_types_ndk_shared", 324 shared_libs: [ 325 latest_android_media_soundtrigger_types + "-ndk", 326 ], 327} 328 329cc_defaults { 330 name: "latest_android_media_soundtrigger_types_ndk_static", 331 static_libs: [ 332 latest_android_media_soundtrigger_types + "-ndk", 333 ], 334} 335 336cc_defaults { 337 name: "latest_android_media_soundtrigger_types_cpp_target_shared", 338 target: { 339 android: { 340 shared_libs: [ 341 latest_android_media_soundtrigger_types + "-cpp", 342 ], 343 }, 344 }, 345} 346 347aidl_interface_defaults { 348 name: "latest_android_media_soundtrigger_types_import_interface", 349 imports: [ 350 latest_android_media_soundtrigger_types, 351 ], 352} 353 354aidl_interface { 355 name: "android.media.audio.eraser.types", 356 vendor_available: true, 357 host_supported: true, 358 flags: [ 359 "-Werror", 360 "-Weverything", 361 ], 362 local_include_dir: "aidl", 363 srcs: [ 364 "aidl/android/media/audio/eraser/Capability.aidl", 365 "aidl/android/media/audio/eraser/Classification.aidl", 366 "aidl/android/media/audio/eraser/ClassificationConfig.aidl", 367 "aidl/android/media/audio/eraser/ClassificationMetadata.aidl", 368 "aidl/android/media/audio/eraser/ClassificationMetadataList.aidl", 369 "aidl/android/media/audio/eraser/ClassifierCapability.aidl", 370 "aidl/android/media/audio/eraser/Configuration.aidl", 371 "aidl/android/media/audio/eraser/IEraserCallback.aidl", 372 "aidl/android/media/audio/eraser/Mode.aidl", 373 "aidl/android/media/audio/eraser/RemixerCapability.aidl", 374 "aidl/android/media/audio/eraser/SeparatorCapability.aidl", 375 "aidl/android/media/audio/eraser/SoundClassification.aidl", 376 ], 377 stability: "vintf", 378 backend: { 379 cpp: { 380 enabled: true, 381 }, 382 java: { 383 sdk_version: "module_current", 384 }, 385 }, 386 imports: [ 387 latest_android_media_audio_common_types, 388 ], 389 frozen: false, 390} 391 392// Note: This should always be one version ahead of the last frozen version 393latest_android_media_audio_eraser_types = "android.media.audio.eraser.types-V1" 394 395cc_defaults { 396 name: "latest_android_media_audio_eraser_types_cpp_shared", 397 shared_libs: [ 398 latest_android_media_audio_eraser_types + "-cpp", 399 ], 400} 401 402cc_defaults { 403 name: "latest_android_media_audio_eraser_types_cpp_export_shared", 404 defaults: [ 405 "latest_android_media_audio_eraser_types_cpp_shared", 406 ], 407 export_shared_lib_headers: [ 408 latest_android_media_audio_eraser_types + "-cpp", 409 ], 410} 411 412cc_defaults { 413 name: "latest_android_media_audio_eraser_types_cpp_static", 414 static_libs: [ 415 latest_android_media_audio_eraser_types + "-cpp", 416 ], 417} 418 419cc_defaults { 420 name: "latest_android_media_audio_eraser_types_cpp_export_static", 421 defaults: [ 422 "latest_android_media_audio_eraser_types_cpp_static", 423 ], 424 export_static_lib_headers: [ 425 latest_android_media_audio_eraser_types + "-cpp", 426 ], 427} 428 429cc_defaults { 430 name: "latest_android_media_audio_eraser_types_ndk_shared", 431 shared_libs: [ 432 latest_android_media_audio_eraser_types + "-ndk", 433 ], 434} 435 436cc_defaults { 437 name: "latest_android_media_audio_eraser_types_ndk_static", 438 static_libs: [ 439 latest_android_media_audio_eraser_types + "-ndk", 440 ], 441} 442 443cc_defaults { 444 name: "latest_android_media_audio_eraser_types_cpp_target_shared", 445 target: { 446 android: { 447 shared_libs: [ 448 latest_android_media_audio_eraser_types + "-cpp", 449 ], 450 }, 451 }, 452} 453 454aidl_interface_defaults { 455 name: "latest_android_media_audio_eraser_types_import_interface", 456 imports: [ 457 latest_android_media_audio_eraser_types, 458 ], 459} 460