blob: 01af9400ab7166ef0d00099eac4c52a1ad00a971 [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: [
39 "android/hardware/audio/common/PlaybackTrackMetadata.aidl",
40 "android/hardware/audio/common/RecordTrackMetadata.aidl",
41 "android/hardware/audio/common/SinkMetadata.aidl",
42 "android/hardware/audio/common/SourceMetadata.aidl",
43 ],
Steven Moreland13666142022-12-06 02:07:44 +000044 frozen: true,
Josh Wu73cddd12021-10-26 14:00:00 -070045 imports: [
Lorena Torres-Huerta308e2572022-08-29 21:48:01 +000046 "android.media.audio.common.types-V2",
Josh Wu73cddd12021-10-26 14:00:00 -070047 ],
Josh Wu73cddd12021-10-26 14:00:00 -070048 backend: {
49 cpp: {
50 enabled: true,
51 },
52 java: {
Francois Gaffie5d7af1e2022-02-02 11:12:08 +010053 sdk_version: "module_current",
54 min_sdk_version: "31",
55 apex_available: [
56 "//apex_available:platform",
57 "com.android.car.framework",
58 ],
Josh Wu73cddd12021-10-26 14:00:00 -070059 },
60 ndk: {
Roopa Sattiraju7455efc2022-02-03 14:15:22 -080061 apex_available: [
62 "//apex_available:platform",
William Escande2591c3d2022-08-22 11:27:58 -070063 "com.android.btservices",
Roopa Sattiraju7455efc2022-02-03 14:15:22 -080064 ],
65 min_sdk_version: "31",
Josh Wu73cddd12021-10-26 14:00:00 -070066 },
67 },
Jiyong Park703e9792022-03-22 14:18:48 +090068 versions_with_info: [
69 {
70 version: "1",
Lorena Torres-Huerta308e2572022-08-29 21:48:01 +000071 imports: ["android.media.audio.common.types-V2"],
Jiyong Park703e9792022-03-22 14:18:48 +090072 },
Lorena Torres-Huerta9ae4f222022-08-12 23:08:10 +000073 // IMPORTANT: Update latest_android_hardware_audio_common every time you
74 // add the latest frozen version to versions_with_info
Josh Wu73cddd12021-10-26 14:00:00 -070075 ],
Jiyong Park703e9792022-03-22 14:18:48 +090076
Josh Wu73cddd12021-10-26 14:00:00 -070077}
Mikhail Naganovbd4013f2021-11-11 20:55:41 +000078
Lorena Torres-Huerta9ae4f222022-08-12 23:08:10 +000079// Note: This should always be one version ahead of the last frozen version
Lorena Torres-Huerta308e2572022-08-29 21:48:01 +000080latest_android_hardware_audio_common = "android.hardware.audio.common-V1"
Lorena Torres-Huerta9ae4f222022-08-12 23:08:10 +000081
82// Modules that depend on android.hardware.audio.common directly can include
83// the following cc_defaults to avoid explicitly managing dependency versions
84// across many scattered files.
85cc_defaults {
Lorena Torres-Huerta308e2572022-08-29 21:48:01 +000086 name: "latest_android_hardware_audio_common_cpp_static",
87 static_libs: [
88 latest_android_hardware_audio_common + "-cpp",
89 ],
90}
91
92cc_defaults {
Lorena Torres-Huerta9ae4f222022-08-12 23:08:10 +000093 name: "latest_android_hardware_audio_common_ndk_static",
94 static_libs: [
95 latest_android_hardware_audio_common + "-ndk",
96 ],
97}
98
David Li4d361832022-11-23 15:36:37 +080099cc_defaults {
100 name: "latest_android_hardware_audio_common_ndk_shared",
101 shared_libs: [
102 latest_android_hardware_audio_common + "-ndk",
103 ],
104}
105
Mikhail Naganovbd4013f2021-11-11 20:55:41 +0000106aidl_interface {
107 name: "android.hardware.audio.core",
David Li4d361832022-11-23 15:36:37 +0800108 defaults: [
109 "android.hardware.audio_defaults",
110 ],
Mikhail Naganovbd4013f2021-11-11 20:55:41 +0000111 srcs: [
112 "android/hardware/audio/core/AudioPatch.aidl",
113 "android/hardware/audio/core/AudioRoute.aidl",
Mikhail Naganov10c6fe22022-09-30 23:49:17 +0000114 "android/hardware/audio/core/IBluetooth.aidl",
Mikhail Naganovbd4013f2021-11-11 20:55:41 +0000115 "android/hardware/audio/core/IConfig.aidl",
116 "android/hardware/audio/core/IModule.aidl",
Mikhail Naganov30301a42022-09-13 01:20:45 +0000117 "android/hardware/audio/core/IStreamCallback.aidl",
Mikhail Naganove9f10fc2022-10-14 23:31:52 +0000118 "android/hardware/audio/core/IStreamCommon.aidl",
Mikhail Naganovbd4013f2021-11-11 20:55:41 +0000119 "android/hardware/audio/core/IStreamIn.aidl",
120 "android/hardware/audio/core/IStreamOut.aidl",
Mikhail Naganov74927202022-12-19 16:37:14 +0000121 "android/hardware/audio/core/IStreamOutEventCallback.aidl",
Mikhail Naganov3b125b72022-10-05 02:12:39 +0000122 "android/hardware/audio/core/ITelephony.aidl",
Mikhail Naganovef6bc742022-10-06 00:14:19 +0000123 "android/hardware/audio/core/MicrophoneDynamicInfo.aidl",
124 "android/hardware/audio/core/MicrophoneInfo.aidl",
Mikhail Naganov6a4872d2022-06-15 21:39:04 +0000125 "android/hardware/audio/core/MmapBufferDescriptor.aidl",
Mikhail Naganov00603d12022-05-02 22:52:13 +0000126 "android/hardware/audio/core/ModuleDebug.aidl",
Mikhail Naganov6a4872d2022-06-15 21:39:04 +0000127 "android/hardware/audio/core/StreamDescriptor.aidl",
Lorena Torres-Huerta0ba91e52022-10-05 21:56:42 +0000128 "android/hardware/audio/core/SurroundSoundConfig.aidl",
Mikhail Naganove9f10fc2022-10-14 23:31:52 +0000129 "android/hardware/audio/core/VendorParameter.aidl",
Mikhail Naganovbd4013f2021-11-11 20:55:41 +0000130 ],
131 imports: [
Mikhail Naganov6a4872d2022-06-15 21:39:04 +0000132 "android.hardware.common-V2",
133 "android.hardware.common.fmq-V1",
Lorena Torres-Huerta308e2572022-08-29 21:48:01 +0000134 "android.hardware.audio.common-V1",
Vlad Popa2afbd1e2022-12-28 17:04:58 +0100135 "android.hardware.audio.core.sounddose-V1",
Mikhail Naganovfb1acde2022-12-12 18:57:36 +0000136 "android.hardware.audio.effect-V1",
Lorena Torres-Huerta308e2572022-08-29 21:48:01 +0000137 "android.media.audio.common.types-V2",
Mikhail Naganovbd4013f2021-11-11 20:55:41 +0000138 ],
Mikhail Naganovbd4013f2021-11-11 20:55:41 +0000139 backend: {
Mikhail Naganovf84d6402022-06-16 00:35:31 +0000140 // The C++ backend is disabled transitively due to use of FMQ.
141 cpp: {
142 enabled: false,
143 },
Mikhail Naganovbd4013f2021-11-11 20:55:41 +0000144 java: {
Mikhail Naganov409ce2a2022-08-04 17:20:27 +0000145 sdk_version: "module_current",
Mikhail Naganovbd4013f2021-11-11 20:55:41 +0000146 },
147 },
Lorena Torres-Huerta9ae4f222022-08-12 23:08:10 +0000148 versions_with_info: [
149 // IMPORTANT: Update latest_android_hardware_audio_core every time you
150 // add the latest frozen version to versions_with_info
151 ],
152}
153
154// Note: This should always be one version ahead of the last frozen version
155latest_android_hardware_audio_core = "android.hardware.audio.core-V1"
156
157// Modules that depend on android.hardware.audio.core directly can include
158// the following cc_defaults to avoid explicitly managing dependency versions
159// across many scattered files.
160cc_defaults {
161 name: "latest_android_hardware_audio_core_ndk_shared",
162 shared_libs: [
163 latest_android_hardware_audio_core + "-ndk",
164 ],
165}
166
167cc_defaults {
168 name: "latest_android_hardware_audio_core_ndk_static",
169 static_libs: [
170 latest_android_hardware_audio_core + "-ndk",
171 ],
Mikhail Naganovbd4013f2021-11-11 20:55:41 +0000172}
Shunkai Yaof1d60392022-06-30 17:58:56 +0000173
Vlad Popaf4fe41c2022-12-14 11:57:26 +0100174// Used for the standalone sounddose HAL
175aidl_interface {
176 name: "android.hardware.audio.core.sounddose",
177 defaults: [
178 "android.hardware.audio_defaults",
179 ],
180 srcs: [
Vlad Popa2afbd1e2022-12-28 17:04:58 +0100181 "android/hardware/audio/core/sounddose/ISoundDose.aidl",
Vlad Popaf4fe41c2022-12-14 11:57:26 +0100182 ],
183 imports: [
184 "android.media.audio.common.types-V2",
185 ],
186 backend: {
187 // The C++ backend is disabled transitively due to use of FMQ by the core HAL.
188 cpp: {
189 enabled: false,
190 },
191 java: {
192 sdk_version: "module_current",
193 },
194 },
195 versions_with_info: [
196 // IMPORTANT: Update latest_android_hardware_audio_core_sounddose every time you
197 // add the latest frozen version to versions_with_info
198 ],
199}
200
201// Note: This should always be one version ahead of the last frozen version
202latest_android_hardware_audio_core_sounddose = "android.hardware.audio.core.sounddose-V1"
203
204// Modules that depend on android.hardware.audio.core.sounddose directly can include
205// the following cc_defaults to avoid explicitly managing dependency versions
206// across many scattered files.
207cc_defaults {
208 name: "latest_android_hardware_audio_core_sounddose_ndk_shared",
209 shared_libs: [
210 latest_android_hardware_audio_core_sounddose + "-ndk",
211 ],
212}
213
214cc_defaults {
215 name: "latest_android_hardware_audio_core_sounddose_ndk_static",
216 static_libs: [
217 latest_android_hardware_audio_core_sounddose + "-ndk",
218 ],
219}
220
Shunkai Yaof1d60392022-06-30 17:58:56 +0000221aidl_interface {
222 name: "android.hardware.audio.effect",
David Li4d361832022-11-23 15:36:37 +0800223 defaults: [
224 "android.hardware.audio_defaults",
225 ],
Shunkai Yaof1d60392022-06-30 17:58:56 +0000226 srcs: [
Shunkai Yao0b58d822022-12-20 15:45:38 +0000227 "android/hardware/audio/effect/AcousticEchoCanceler.aidl",
228 "android/hardware/audio/effect/AutomaticGainControl.aidl",
Shunkai Yaoca108742023-01-25 01:15:33 +0000229 "android/hardware/audio/effect/AutomaticGainControlV1.aidl",
Shunkai Yao82a6f7a2022-10-31 21:46:08 +0000230 "android/hardware/audio/effect/BassBoost.aidl",
Shunkai Yao0632ae62022-09-28 17:37:50 +0000231 "android/hardware/audio/effect/Capability.aidl",
232 "android/hardware/audio/effect/CommandId.aidl",
Shunkai Yaof1d60392022-06-30 17:58:56 +0000233 "android/hardware/audio/effect/Descriptor.aidl",
Shunkai Yao82a6f7a2022-10-31 21:46:08 +0000234 "android/hardware/audio/effect/Downmix.aidl",
235 "android/hardware/audio/effect/DynamicsProcessing.aidl",
Shunkai Yao20e5c172022-12-12 07:09:01 +0000236 "android/hardware/audio/effect/EnvironmentalReverb.aidl",
Shunkai Yao0632ae62022-09-28 17:37:50 +0000237 "android/hardware/audio/effect/Equalizer.aidl",
238 "android/hardware/audio/effect/Flags.aidl",
Shunkai Yao82a6f7a2022-10-31 21:46:08 +0000239 "android/hardware/audio/effect/HapticGenerator.aidl",
Shunkai Yao84efa032022-08-23 17:46:10 +0000240 "android/hardware/audio/effect/IEffect.aidl",
Shunkai Yaof1d60392022-06-30 17:58:56 +0000241 "android/hardware/audio/effect/IFactory.aidl",
Shunkai Yao82a6f7a2022-10-31 21:46:08 +0000242 "android/hardware/audio/effect/LoudnessEnhancer.aidl",
Shunkai Yao0b58d822022-12-20 15:45:38 +0000243 "android/hardware/audio/effect/NoiseSuppression.aidl",
Shunkai Yao0632ae62022-09-28 17:37:50 +0000244 "android/hardware/audio/effect/Parameter.aidl",
Shunkai Yao20e5c172022-12-12 07:09:01 +0000245 "android/hardware/audio/effect/PresetReverb.aidl",
Shunkai Yao08b687d2022-10-13 21:11:11 +0000246 "android/hardware/audio/effect/Processing.aidl",
Shunkai Yao88b24b22023-01-24 22:56:26 +0000247 "android/hardware/audio/effect/Range.aidl",
Shunkai Yao0632ae62022-09-28 17:37:50 +0000248 "android/hardware/audio/effect/State.aidl",
Shunkai Yao82a6f7a2022-10-31 21:46:08 +0000249 "android/hardware/audio/effect/VendorExtension.aidl",
250 "android/hardware/audio/effect/Virtualizer.aidl",
251 "android/hardware/audio/effect/Visualizer.aidl",
252 "android/hardware/audio/effect/Volume.aidl",
Shunkai Yaof1d60392022-06-30 17:58:56 +0000253 ],
254 imports: [
Shunkai Yao0632ae62022-09-28 17:37:50 +0000255 "android.hardware.common-V2",
256 "android.hardware.common.fmq-V1",
Shunkai Yaof1d60392022-06-30 17:58:56 +0000257 "android.hardware.audio.common-V1",
Lorena Torres-Huerta308e2572022-08-29 21:48:01 +0000258 "android.media.audio.common.types-V2",
Shunkai Yaof1d60392022-06-30 17:58:56 +0000259 ],
Shunkai Yaof1d60392022-06-30 17:58:56 +0000260 backend: {
261 // The C++ backend is disabled transitively due to use of FMQ.
262 cpp: {
263 enabled: false,
264 },
265 java: {
266 sdk_version: "module_current",
267 },
268 },
269}
Shunkai Yao45905172022-08-24 18:14:02 +0000270
271latest_android_hardware_audio_effect = "android.hardware.audio.effect-V1"
272
273cc_defaults {
274 name: "latest_android_hardware_audio_effect_ndk_shared",
275 shared_libs: [
276 latest_android_hardware_audio_effect + "-ndk",
277 ],
278}
279
280cc_defaults {
281 name: "latest_android_hardware_audio_effect_ndk_static",
282 static_libs: [
283 latest_android_hardware_audio_effect + "-ndk",
284 ],
285}