blob: 5a009fe6747cfefbc2057742c688ad5eb5930ac1 [file] [log] [blame]
Josh Wu73cddd12021-10-26 14:00:00 -07001/*
2 * Copyright (C) 2021 The Android Open Source Project
3 *
4 * Licensed under the Apache License, Version 2.0 (the "License");
5 * you may not use this file except in compliance with the License.
6 * You may obtain a copy of the License at
7 *
8 * http://www.apache.org/licenses/LICENSE-2.0
9 *
10 * Unless required by applicable law or agreed to in writing, software
11 * distributed under the License is distributed on an "AS IS" BASIS,
12 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 * See the License for the specific language governing permissions and
14 * limitations under the License.
15 */
16
17package {
18 // See: http://go/android-license-faq
19 // A large-scale-change added 'default_applicable_licenses' to import
20 // all of the 'license_kinds' from "hardware_interfaces_license"
21 // to get the below license kinds:
22 // SPDX-license-identifier-Apache-2.0
23 default_applicable_licenses: ["hardware_interfaces_license"],
24}
25
David Li4d361832022-11-23 15:36:37 +080026aidl_interface_defaults {
27 name: "android.hardware.audio_defaults",
28 host_supported: true,
29 vendor_available: true,
30 stability: "vintf",
31}
32
Josh Wu73cddd12021-10-26 14:00:00 -070033aidl_interface {
34 name: "android.hardware.audio.common",
David Li4d361832022-11-23 15:36:37 +080035 defaults: [
36 "android.hardware.audio_defaults",
37 ],
Josh Wu73cddd12021-10-26 14:00:00 -070038 srcs: [
Mikhail Naganov9940a552023-02-24 19:50:51 -080039 "android/hardware/audio/common/AudioOffloadMetadata.aidl",
Josh Wu73cddd12021-10-26 14:00:00 -070040 "android/hardware/audio/common/PlaybackTrackMetadata.aidl",
41 "android/hardware/audio/common/RecordTrackMetadata.aidl",
42 "android/hardware/audio/common/SinkMetadata.aidl",
43 "android/hardware/audio/common/SourceMetadata.aidl",
44 ],
Alex Buynytskyyec1198d2023-04-04 19:52:27 +000045 frozen: true,
Josh Wu73cddd12021-10-26 14:00:00 -070046 imports: [
Lorena Torres-Huerta308e2572022-08-29 21:48:01 +000047 "android.media.audio.common.types-V2",
Josh Wu73cddd12021-10-26 14:00:00 -070048 ],
Josh Wu73cddd12021-10-26 14:00:00 -070049 backend: {
50 cpp: {
51 enabled: true,
52 },
53 java: {
Francois Gaffie5d7af1e2022-02-02 11:12:08 +010054 sdk_version: "module_current",
55 min_sdk_version: "31",
56 apex_available: [
57 "//apex_available:platform",
58 "com.android.car.framework",
59 ],
Josh Wu73cddd12021-10-26 14:00:00 -070060 },
61 ndk: {
Roopa Sattiraju7455efc2022-02-03 14:15:22 -080062 apex_available: [
63 "//apex_available:platform",
William Escande2591c3d2022-08-22 11:27:58 -070064 "com.android.btservices",
Roopa Sattiraju7455efc2022-02-03 14:15:22 -080065 ],
66 min_sdk_version: "31",
Josh Wu73cddd12021-10-26 14:00:00 -070067 },
68 },
Jiyong Park703e9792022-03-22 14:18:48 +090069 versions_with_info: [
70 {
71 version: "1",
Lorena Torres-Huerta308e2572022-08-29 21:48:01 +000072 imports: ["android.media.audio.common.types-V2"],
Jiyong Park703e9792022-03-22 14:18:48 +090073 },
Alex Buynytskyyec1198d2023-04-04 19:52:27 +000074 {
75 version: "2",
76 imports: ["android.media.audio.common.types-V2"],
77 },
78
Lorena Torres-Huerta9ae4f222022-08-12 23:08:10 +000079 // IMPORTANT: Update latest_android_hardware_audio_common every time you
80 // add the latest frozen version to versions_with_info
Josh Wu73cddd12021-10-26 14:00:00 -070081 ],
Jiyong Park703e9792022-03-22 14:18:48 +090082
Josh Wu73cddd12021-10-26 14:00:00 -070083}
Mikhail Naganovbd4013f2021-11-11 20:55:41 +000084
Lorena Torres-Huerta9ae4f222022-08-12 23:08:10 +000085// Note: This should always be one version ahead of the last frozen version
Mikhail Naganov9940a552023-02-24 19:50:51 -080086latest_android_hardware_audio_common = "android.hardware.audio.common-V2"
Lorena Torres-Huerta9ae4f222022-08-12 23:08:10 +000087
88// Modules that depend on android.hardware.audio.common directly can include
89// the following cc_defaults to avoid explicitly managing dependency versions
90// across many scattered files.
91cc_defaults {
Lorena Torres-Huerta308e2572022-08-29 21:48:01 +000092 name: "latest_android_hardware_audio_common_cpp_static",
93 static_libs: [
94 latest_android_hardware_audio_common + "-cpp",
95 ],
96}
97
98cc_defaults {
Lorena Torres-Huerta9ae4f222022-08-12 23:08:10 +000099 name: "latest_android_hardware_audio_common_ndk_static",
100 static_libs: [
101 latest_android_hardware_audio_common + "-ndk",
102 ],
103}
104
David Li4d361832022-11-23 15:36:37 +0800105cc_defaults {
106 name: "latest_android_hardware_audio_common_ndk_shared",
107 shared_libs: [
108 latest_android_hardware_audio_common + "-ndk",
109 ],
110}
111
Mikhail Naganovbd4013f2021-11-11 20:55:41 +0000112aidl_interface {
113 name: "android.hardware.audio.core",
David Li4d361832022-11-23 15:36:37 +0800114 defaults: [
115 "android.hardware.audio_defaults",
116 ],
Mikhail Naganovbd4013f2021-11-11 20:55:41 +0000117 srcs: [
118 "android/hardware/audio/core/AudioPatch.aidl",
119 "android/hardware/audio/core/AudioRoute.aidl",
Mikhail Naganov10c6fe22022-09-30 23:49:17 +0000120 "android/hardware/audio/core/IBluetooth.aidl",
Mikhail Naganov3caf6592023-02-27 18:51:44 -0800121 "android/hardware/audio/core/IBluetoothA2dp.aidl",
Mikhail Naganov4fae3192023-03-06 14:37:38 -0800122 "android/hardware/audio/core/IBluetoothLe.aidl",
Mikhail Naganovbd4013f2021-11-11 20:55:41 +0000123 "android/hardware/audio/core/IConfig.aidl",
124 "android/hardware/audio/core/IModule.aidl",
Mikhail Naganov30301a42022-09-13 01:20:45 +0000125 "android/hardware/audio/core/IStreamCallback.aidl",
Mikhail Naganove9f10fc2022-10-14 23:31:52 +0000126 "android/hardware/audio/core/IStreamCommon.aidl",
Mikhail Naganovbd4013f2021-11-11 20:55:41 +0000127 "android/hardware/audio/core/IStreamIn.aidl",
128 "android/hardware/audio/core/IStreamOut.aidl",
Mikhail Naganov74927202022-12-19 16:37:14 +0000129 "android/hardware/audio/core/IStreamOutEventCallback.aidl",
Mikhail Naganov3b125b72022-10-05 02:12:39 +0000130 "android/hardware/audio/core/ITelephony.aidl",
Mikhail Naganov6a4872d2022-06-15 21:39:04 +0000131 "android/hardware/audio/core/MmapBufferDescriptor.aidl",
Mikhail Naganov00603d12022-05-02 22:52:13 +0000132 "android/hardware/audio/core/ModuleDebug.aidl",
Mikhail Naganov6a4872d2022-06-15 21:39:04 +0000133 "android/hardware/audio/core/StreamDescriptor.aidl",
Lorena Torres-Huerta0ba91e52022-10-05 21:56:42 +0000134 "android/hardware/audio/core/SurroundSoundConfig.aidl",
Mikhail Naganove9f10fc2022-10-14 23:31:52 +0000135 "android/hardware/audio/core/VendorParameter.aidl",
Mikhail Naganovbd4013f2021-11-11 20:55:41 +0000136 ],
137 imports: [
Mikhail Naganov6a4872d2022-06-15 21:39:04 +0000138 "android.hardware.common-V2",
139 "android.hardware.common.fmq-V1",
Mikhail Naganov9940a552023-02-24 19:50:51 -0800140 "android.hardware.audio.common-V2",
Vlad Popa2afbd1e2022-12-28 17:04:58 +0100141 "android.hardware.audio.core.sounddose-V1",
Mikhail Naganovfb1acde2022-12-12 18:57:36 +0000142 "android.hardware.audio.effect-V1",
Lorena Torres-Huerta308e2572022-08-29 21:48:01 +0000143 "android.media.audio.common.types-V2",
Mikhail Naganovbd4013f2021-11-11 20:55:41 +0000144 ],
Mikhail Naganovbd4013f2021-11-11 20:55:41 +0000145 backend: {
Mikhail Naganovf84d6402022-06-16 00:35:31 +0000146 // The C++ backend is disabled transitively due to use of FMQ.
147 cpp: {
148 enabled: false,
149 },
Mikhail Naganovbd4013f2021-11-11 20:55:41 +0000150 java: {
Mikhail Naganov409ce2a2022-08-04 17:20:27 +0000151 sdk_version: "module_current",
Mikhail Naganovbd4013f2021-11-11 20:55:41 +0000152 },
153 },
Lorena Torres-Huerta9ae4f222022-08-12 23:08:10 +0000154 versions_with_info: [
Alex Buynytskyyec1198d2023-04-04 19:52:27 +0000155 {
156 version: "1",
157 imports: [
158 "android.hardware.common-V2",
159 "android.hardware.common.fmq-V1",
160 "android.hardware.audio.common-V2",
161 "android.hardware.audio.core.sounddose-V1",
162 "android.hardware.audio.effect-V1",
163 "android.media.audio.common.types-V2",
164 ],
165 },
166
Lorena Torres-Huerta9ae4f222022-08-12 23:08:10 +0000167 // IMPORTANT: Update latest_android_hardware_audio_core every time you
168 // add the latest frozen version to versions_with_info
169 ],
Alex Buynytskyyec1198d2023-04-04 19:52:27 +0000170 frozen: true,
Lorena Torres-Huerta9ae4f222022-08-12 23:08:10 +0000171}
172
173// Note: This should always be one version ahead of the last frozen version
174latest_android_hardware_audio_core = "android.hardware.audio.core-V1"
175
176// Modules that depend on android.hardware.audio.core directly can include
177// the following cc_defaults to avoid explicitly managing dependency versions
178// across many scattered files.
179cc_defaults {
180 name: "latest_android_hardware_audio_core_ndk_shared",
181 shared_libs: [
182 latest_android_hardware_audio_core + "-ndk",
183 ],
184}
185
186cc_defaults {
187 name: "latest_android_hardware_audio_core_ndk_static",
188 static_libs: [
189 latest_android_hardware_audio_core + "-ndk",
190 ],
Mikhail Naganovbd4013f2021-11-11 20:55:41 +0000191}
Shunkai Yaof1d60392022-06-30 17:58:56 +0000192
Vlad Popaf4fe41c2022-12-14 11:57:26 +0100193// Used for the standalone sounddose HAL
194aidl_interface {
195 name: "android.hardware.audio.core.sounddose",
196 defaults: [
197 "android.hardware.audio_defaults",
198 ],
199 srcs: [
Vlad Popa2afbd1e2022-12-28 17:04:58 +0100200 "android/hardware/audio/core/sounddose/ISoundDose.aidl",
Vlad Popaf4fe41c2022-12-14 11:57:26 +0100201 ],
202 imports: [
203 "android.media.audio.common.types-V2",
204 ],
205 backend: {
206 // The C++ backend is disabled transitively due to use of FMQ by the core HAL.
207 cpp: {
208 enabled: false,
209 },
210 java: {
211 sdk_version: "module_current",
212 },
213 },
214 versions_with_info: [
Alex Buynytskyyec1198d2023-04-04 19:52:27 +0000215 {
216 version: "1",
217 imports: ["android.media.audio.common.types-V2"],
218 },
219
Vlad Popaf4fe41c2022-12-14 11:57:26 +0100220 // IMPORTANT: Update latest_android_hardware_audio_core_sounddose every time you
221 // add the latest frozen version to versions_with_info
222 ],
Alex Buynytskyyec1198d2023-04-04 19:52:27 +0000223 frozen: true,
Vlad Popaf4fe41c2022-12-14 11:57:26 +0100224}
225
226// Note: This should always be one version ahead of the last frozen version
227latest_android_hardware_audio_core_sounddose = "android.hardware.audio.core.sounddose-V1"
228
229// Modules that depend on android.hardware.audio.core.sounddose directly can include
230// the following cc_defaults to avoid explicitly managing dependency versions
231// across many scattered files.
232cc_defaults {
233 name: "latest_android_hardware_audio_core_sounddose_ndk_shared",
234 shared_libs: [
235 latest_android_hardware_audio_core_sounddose + "-ndk",
236 ],
237}
238
239cc_defaults {
240 name: "latest_android_hardware_audio_core_sounddose_ndk_static",
241 static_libs: [
242 latest_android_hardware_audio_core_sounddose + "-ndk",
243 ],
244}
245
Shunkai Yaof1d60392022-06-30 17:58:56 +0000246aidl_interface {
247 name: "android.hardware.audio.effect",
David Li4d361832022-11-23 15:36:37 +0800248 defaults: [
249 "android.hardware.audio_defaults",
250 ],
Shunkai Yaof1d60392022-06-30 17:58:56 +0000251 srcs: [
Shunkai Yao0b58d822022-12-20 15:45:38 +0000252 "android/hardware/audio/effect/AcousticEchoCanceler.aidl",
Shunkai Yaoca108742023-01-25 01:15:33 +0000253 "android/hardware/audio/effect/AutomaticGainControlV1.aidl",
Shraddha Basantwani84ea32e2023-02-01 16:22:37 +0530254 "android/hardware/audio/effect/AutomaticGainControlV2.aidl",
Shunkai Yao82a6f7a2022-10-31 21:46:08 +0000255 "android/hardware/audio/effect/BassBoost.aidl",
Shunkai Yao0632ae62022-09-28 17:37:50 +0000256 "android/hardware/audio/effect/Capability.aidl",
257 "android/hardware/audio/effect/CommandId.aidl",
Shunkai Yao85b01692023-02-15 22:04:57 +0000258 "android/hardware/audio/effect/DefaultExtension.aidl",
Shunkai Yaof1d60392022-06-30 17:58:56 +0000259 "android/hardware/audio/effect/Descriptor.aidl",
Shunkai Yao82a6f7a2022-10-31 21:46:08 +0000260 "android/hardware/audio/effect/Downmix.aidl",
261 "android/hardware/audio/effect/DynamicsProcessing.aidl",
Shunkai Yao20e5c172022-12-12 07:09:01 +0000262 "android/hardware/audio/effect/EnvironmentalReverb.aidl",
Shunkai Yao0632ae62022-09-28 17:37:50 +0000263 "android/hardware/audio/effect/Equalizer.aidl",
264 "android/hardware/audio/effect/Flags.aidl",
Shunkai Yao82a6f7a2022-10-31 21:46:08 +0000265 "android/hardware/audio/effect/HapticGenerator.aidl",
Shunkai Yao84efa032022-08-23 17:46:10 +0000266 "android/hardware/audio/effect/IEffect.aidl",
Shunkai Yaof1d60392022-06-30 17:58:56 +0000267 "android/hardware/audio/effect/IFactory.aidl",
Shunkai Yao82a6f7a2022-10-31 21:46:08 +0000268 "android/hardware/audio/effect/LoudnessEnhancer.aidl",
Shunkai Yao0b58d822022-12-20 15:45:38 +0000269 "android/hardware/audio/effect/NoiseSuppression.aidl",
Shunkai Yao0632ae62022-09-28 17:37:50 +0000270 "android/hardware/audio/effect/Parameter.aidl",
Shunkai Yao20e5c172022-12-12 07:09:01 +0000271 "android/hardware/audio/effect/PresetReverb.aidl",
Shunkai Yao08b687d2022-10-13 21:11:11 +0000272 "android/hardware/audio/effect/Processing.aidl",
Shunkai Yao88b24b22023-01-24 22:56:26 +0000273 "android/hardware/audio/effect/Range.aidl",
Shunkai Yao0632ae62022-09-28 17:37:50 +0000274 "android/hardware/audio/effect/State.aidl",
Shunkai Yao82a6f7a2022-10-31 21:46:08 +0000275 "android/hardware/audio/effect/VendorExtension.aidl",
276 "android/hardware/audio/effect/Virtualizer.aidl",
277 "android/hardware/audio/effect/Visualizer.aidl",
278 "android/hardware/audio/effect/Volume.aidl",
Shunkai Yaof1d60392022-06-30 17:58:56 +0000279 ],
280 imports: [
Shunkai Yao0632ae62022-09-28 17:37:50 +0000281 "android.hardware.common-V2",
282 "android.hardware.common.fmq-V1",
Mikhail Naganov9940a552023-02-24 19:50:51 -0800283 "android.hardware.audio.common-V2",
Lorena Torres-Huerta308e2572022-08-29 21:48:01 +0000284 "android.media.audio.common.types-V2",
Shunkai Yaof1d60392022-06-30 17:58:56 +0000285 ],
Shunkai Yaof1d60392022-06-30 17:58:56 +0000286 backend: {
287 // The C++ backend is disabled transitively due to use of FMQ.
288 cpp: {
289 enabled: false,
290 },
291 java: {
292 sdk_version: "module_current",
293 },
294 },
Alex Buynytskyyec1198d2023-04-04 19:52:27 +0000295 versions_with_info: [
296 {
297 version: "1",
298 imports: [
299 "android.hardware.common-V2",
300 "android.hardware.common.fmq-V1",
301 "android.hardware.audio.common-V2",
302 "android.media.audio.common.types-V2",
303 ],
304 },
305 ],
306 frozen: true,
307
Shunkai Yaof1d60392022-06-30 17:58:56 +0000308}
Shunkai Yao45905172022-08-24 18:14:02 +0000309
310latest_android_hardware_audio_effect = "android.hardware.audio.effect-V1"
311
312cc_defaults {
313 name: "latest_android_hardware_audio_effect_ndk_shared",
314 shared_libs: [
315 latest_android_hardware_audio_effect + "-ndk",
316 ],
317}
318
319cc_defaults {
320 name: "latest_android_hardware_audio_effect_ndk_static",
321 static_libs: [
322 latest_android_hardware_audio_effect + "-ndk",
323 ],
324}