Commit Graph

98 Commits

Author SHA1 Message Date
Devin Moore
329f3b35ad Freeze android.hardware.audio* interfaces
Already frozen internally. Freezing now in aosp to enable developement
on 202504 interfaces.

Merged-In: Ie6d38d27a287e258c30516e0030ad8c931d06432
Test: verify .hash file is the same as internally
Test: lunch cf_x86_64_phone-next-userdebug
Bug: 328236210
Change-Id: I14e49a7ed7a1069cd1ca9b92ce7664f646b18054
2024-03-06 21:30:16 +00:00
Shunkai Yao
5b15e005a9 Effect AIDL: add IEffect.reopen to update the effect instances data FMQ
The effect instance may choose to reallocate the input data message
queue under specific conditions. For example, when the input format
changes, requiring an update to the data message queue allocated during
the open time.
In such cases, the effect instance can destroy the existing data message
queue, when the audio framework see a valid status MQ and invalid data MQ,
it call reopen to get the new data message queue.

Bug: 302036943
Test: m android.hardware.audio.effect-update-api, m
Change-Id: Ia245b154176f64bc3cc6e6049bca4f9c68ad482d
Merged-In: Ia245b154176f64bc3cc6e6049bca4f9c68ad482d
2024-01-12 17:23:14 +00:00
jiabin
dd23b0e58e AHAL: add API to notify the HAL module about disconnecting device.
When external device is about to disconnect, the audio framework will
notify the HAL module about the coming device disconnection so that the
HAL module could abort any active read/write operations on drivers to
avoid problems with the HW interfaces.

Bug: 279824103
Test: atest VtsHalAudioCoreModuleTargetTest
Change-Id: I9f960b8ae5df11a764e70bd63f98c0f8b8386c34
Merged-In: I9f960b8ae5df11a764e70bd63f98c0f8b8386c34
2023-12-13 01:02:21 +00:00
Shunkai Yao
421ca19c14 Effect AIDL: add AudioTrack metadata as a common parameter for effects
Bug: 307368176
Test: m android.hardware.audio.effect-update-api
Test: atest --test-mapping hardware/interfaces/audio/aidl
Change-Id: I5affc96c09445a425361f326f728b8ef9b04daee
2023-11-29 17:04:58 +00:00
Shunkai Yao
d5b19ea384 Add Headtracking connection mode for Spatializer AIDL
Bug: 311474218
Test: m android.hardware.audio.effect-update-api
Test: m
Change-Id: I2578cc37f55000d881211048a10256e67aa26532
2023-11-17 04:27:23 +00:00
Shunkai Yao
992b009bc5 Effect AIDL: add Spatializer aidl in audio effect HAL
Spatializer is a union representing parameters for audio spatialization effects

Bug: 273373363
Test: Build
Change-Id: I6e8414238256903aeae171c5b7b7a98fe5f96f89
2023-11-10 05:33:58 +00:00
Shunkai Yao
dd6ec5291a Freeze Audio AIDL interfaces
Fix Visualizer and Volume type UUID

Bug: 279432911
Test: m
Test: atest --test-mapping hardware/interfaces/audio/aidl/vts:presubmit
Change-Id: I3e7d145aa37fb67d78cf05c06da22f74c0ea07ad
Merged-In: I3e7d145aa37fb67d78cf05c06da22f74c0ea07ad
2023-05-02 00:55:22 +00:00
Vlad Popa
4d7aa9279b CSD: rename get/setOutputRs2 to include upper bound
RS2 represents an interval of power levels. This is why it is clearer to
specify upper bound in the naming to make it clear that we refer to the
upper limit which when exceeded will trigger a momentary exposure.

Test: atest VtsHalAudioCoreTargetTest
Bug: 273961110
Change-Id: If4e065deeedb32c3e5e81caf4cd6924fb5815dc0
Merged-In: If4e065deeedb32c3e5e81caf4cd6924fb5815dc0
2023-03-17 02:57:47 +01:00
Shunkai Yao
d30ff8fb80 Add some Effect type UUID and offload indicater in common parameter
Bug: 271500140
Test: atest --test-mapping hardware/interfaces/audio/aidl/vts:presubmit
Change-Id: I61ebf268600564cb5abddc90979070b675a85541
2023-03-14 16:07:25 +00:00
Mikhail Naganov
b4f8e67e1c audio: Add offload reconfiguration event to IBluetoothLe
Since BT LE can also have offloaded codecs, it might need
a reconfiguration event similar to the one that BT A2DP
receives.

Bug: 272658632
Test: atest VtsHalAudioCoreTargetTest
Change-Id: I04fb7c99f0457f87e1f4aaf7e77165317163387b
2023-03-10 12:44:52 -08:00
Mikhail Naganov
b5647da1ad audio: Add IBluetoothLe
Similar to IBluetooth and IBluetoothA2dp interfaces,
IBluetoothLe controls the LE profile. This interface
replaces the following string parameter:

"LeAudioSuspended"

Bug: 270731693
Test: atest VtsHalAudioCoreTargetTest
Change-Id: I9df28053cd270fc2d446ba9a8ada4dd6ab761c7b
Merged-In: I9df28053cd270fc2d446ba9a8ada4dd6ab761c7b
2023-03-08 09:28:00 -08:00
Mikhail Naganov
6f3474a98e audio: Add IStreamCommon.prepareToClose method
This method is needed to implement HAL modules that
are proxies for other subsystems, for example
the "bluetooth" and "r_submix" modules. This method
replaces string parameters "exiting=1" and "closing=true"
which the framework sends to streams prior to closing
them in order to unblock the I/O thread of the stream.

Bug: 270731693
Test: atest VtsHalAudioCoreTargetTest
Change-Id: I3d13fe34535ab853c9f8237a08c31cdafadbb390
Merged-In: I3d13fe34535ab853c9f8237a08c31cdafadbb390
2023-03-07 09:41:08 -08:00
Shunkai Yao
b2325e55e9 Add vendor extension effect example
Update Parameter.id from int to ParcelableHolder

Bug: 271601435
Test: Build, atest VtsHalAudioEffectTargetTest
Change-Id: I5450fa90e95bdebe931c222f6bb177dbdef35c69
2023-03-04 02:01:33 +00:00
Mikhail Naganov
7499a00c04 audio: Add IBluetoothA2dp
Similar to IBluetooth interface which controls SCO/HFP,
IBluetoothA2dp controls the A2DP profile. This interface
replaces the following string parameters:

AUDIO_PARAMETER_A2DP_RECONFIG_SUPPORTED
AUDIO_PARAMETER_RECONFIG_A2DP
"A2dpSuspended"

Also, refactor fields used by Module implementation
for persistent child interfaces.

Bug: 270731693
Test: atest VtsHalAudioCoreTargetTest
Change-Id: Ie62952c3bc3af2f53535d716e5b57bf48c661306
Merged-In: Ie62952c3bc3af2f53535d716e5b57bf48c661306
2023-03-01 13:29:29 -08:00
Mikhail Naganov
d150942aa7 audio: Add AudioOffloadMetadata and a method to update it
AudioOffloadMetadata contains the same information
as 'AUDIO_OFFLOAD_CODEC_*' framework parameters.
It is updated via a new method IStreamOut.updateOffloadMetadata
which only works for compressed offload streams.

Bug: 270731693
Test: atest VtsHalAudioCoreTargetTest
Change-Id: I6c8a8853f216438284082f79e3f57e511a2a1f06
Merged-In: I6c8a8853f216438284082f79e3f57e511a2a1f06
2023-02-28 19:26:14 +00:00
Shunkai Yao
2ddafc227b [AIDL CTS] pass EnvReverb implementation cts
Bug: 270158223
Test: atest android.media.audio.cts.EnvReverbTest
Change-Id: Ie7fcc2d65a8daaef5d7a76cc6ca3ec6e13d4b547
2023-02-21 18:19:48 +00:00
Mikhail Naganov
e1ad6497a9 Merge "audio: Move Microphone[Dynamic]Info structs from core" 2023-02-16 15:39:31 +00:00
Shunkai Yao
c2e1b5f7f1 Merge "Effect AIDL: Add default extension with vector<uint8_t>" 2023-02-16 02:24:38 +00:00
Shunkai Yao
85b0169fca Effect AIDL: Add default extension with vector<uint8_t>
Bug: 258124419
Test: atest --test-mapping hardware/interfaces/audio/aidl/vts:presubmit
Change-Id: I3fa7f78ed2227d00b999c7e594d1b1d205f585e7
2023-02-16 00:28:21 +00:00
Mikhail Naganov
6725ef536b audio: Move Microphone[Dynamic]Info structs from core
These parcelables are also used by the framework.

Bug: 263964254
Test: atest VtsHalAudioCoreTargetTest
Change-Id: Ib30b69c325040e474fb58a8e7e515912fccab4c7
Merged-In: Ib30b69c325040e474fb58a8e7e515912fccab4c7
2023-02-15 10:15:42 -08:00
Shraddha Basantwani
cac2e68b40 Audio AIDL : Add placeholder implementation and VTS test case for AGC1
Bug: 258124419
Test: atest VtsHalAGC1TargetTest
Change-Id: Ia9894ac21b284a554f8c2d66966d07e5e4621ccd
2023-02-15 23:36:06 +05:30
Shraddha Basantwani
84ea32e419 Audio AIDL : Rename AutomaticGainControl to AutomaticGainControlV2
Bug: 258124419
Test: atest VtsHalAGC2TargetTest
Change-Id: Ia3de57a109852e21d2f6e2b003e8f4286f8278b3
2023-02-15 18:11:11 +05:30
Shunkai Yao
376dbd96d3 Effect AIDL: Refactor effect capability with Range
Bug: 258124419
Test: atest --test-mapping hardware/interfaces/audio/aidl/vts:presubmit
Change-Id: I608fb7654591fb46061ecd5edbff20ccc977c5dd
2023-02-14 20:38:17 +00:00
Shunkai Yao
58aaf5bf0a Effect AIDL: Add back some effect parameters.
Bug: 258124419
Test: atest VtsHalAudioEffectTargetTest
Change-Id: I4daeb8cec2a0c0e33a55a9ffaea3e78b362bc949
2023-02-07 23:13:29 +00:00
Shunkai Yao
41500c1261 Effect AIDL: Rename Flags.noProcessing to Flags.bypass
Bug: 258124419
Test: atest VtsHalAudioEffectTargetTest
Change-Id: I3838fa71bed3aeb7824a7cdfb71d43041ddb4368
2023-02-03 01:39:23 +00:00
Shunkai Yao
ca10874012 AIDL effect: add AutomaticGainControlV1 AIDL
Bug: 261129656
Test: Compile and build, will add usage and test code in followup CL.
Change-Id: Ib20ff6e8f8fe9b7c3ac3286c5c05edc6880a44fe
2023-01-26 05:24:27 +00:00
Shunkai Yao
88b24b2dea AIDL effect: add Range for effect capabilities
Bug: 261129656
Test: Compile and build, will add usage in effect capabilities.
Change-Id: I29b80ee8b3e08fa3b6f0e5cf0e9349096adddb43
2023-01-25 19:46:10 +00:00
Shunkai Yao
32d8c29f51 AIDL effect: add VERY_HIGH level in NoiseSuppression
Bug: 261129656
Test: atest VtsHalAudioEffectTargetTest
Test: atest VtsHalNSTargetTest
Change-Id: I2afed63259f55b81101e4ae1239877d207fb740d
2023-01-21 00:37:26 +00:00
jiabin
b76981e2a7 Add interfaces to query aaudio hardware information.
Add interfaces to query aaudio hardware information. The new interfaces
are supposed to replace the system properties. The information includes
aaudio mixer burst count and aaudio hardware burst minimum usec.

Bug: 193275465
Test: atest VtsHalAudioCoreTargetTest
Change-Id: Id3442dae15937baba84f053f2e244bc294f4d718
2023-01-19 18:06:22 +00:00
Eric Laurent
e2432ea1a7 audio: Add supportsBluetoothVariableLatency API to IModule
Add API to query if the Module supports control of variable latency over
playback paths.

Bug: 197823000
Test: atest VtsHalAudioCoreTargetTest
Change-Id: I3a08d682a1a639d8373869725e12702fff962d53
2023-01-16 11:32:02 +01:00
jiabin
9a8e686628 Add API to query mmap policy information.
Bug: 193275465
Test: atest VtsHalAudioCoreTargetTest
Change-Id: I8374a6e7942d68259d820b5de1f4ec597f1b6473
2023-01-13 22:57:34 +00:00
Mikhail Naganov
04ae822302 audio: Remove android.hardware.audio.core.AudioMode type
I missed that there is already android.media.audio.common.AudioMode.
However, due to use by the framework, it contains more values
(all of them are SYS_RESERVED), thus the implementation and VTS
have to be updated as well.

Bug: 205884982
Test: atest VtsHalAudioCoreTargetTest
Change-Id: If260413b1f774a69514de978792d5ad2eb46481a
Merged-In: If260413b1f774a69514de978792d5ad2eb46481a
2023-01-12 17:42:02 +00:00
Shunkai Yao
5df4e6c4b0 AIDL effect: update AudioDeviceDescription to list
Bug: 261129656
Test: atest VtsHalAudioEffectTargetTest
Change-Id: I424afb287fa97a6bf39221ba64d6af50c1d697eb
2023-01-11 17:02:21 +00:00
Sham Rathod
e362a46cd9 EnvironmentalReverb : Add minimum and maximum capabilities for params.
Bug: 263416041
Test: atest VtsHalEnvironmentalReverbTest
Change-Id: I7acd88483f844792776ccc2a310623d84b76c3ae
2023-01-09 16:33:58 +05:30
Shunkai Yao
5bfe81fb79 DynamicsProcessing: update AIDL interface definition
Enum change aidl_api was automatically generated.

Bug: 258124419
Test: atest VtsHalDynamicsProcessingTargetTest
Change-Id: I942c20124190f91efdebbf2fd8d66692699a65cd
2023-01-06 23:00:09 +00:00
Treehugger Robot
7d183a48c8 Merge "audio: Add IBluetooth core interface" 2023-01-03 23:06:00 +00:00
Mikhail Naganov
10c6fe2b8f audio: Add IBluetooth core interface
This interface corresponds to BT-specific functions
of the IPrimaryDevice in the HIDL HAL.

Bug: 205884982
Test: atest VtsHalAudioCoreTargetTest
Change-Id: I5f52d65e06f42e1a5fb2e51d27b79e94fe423eaa
2023-01-03 18:23:33 +00:00
Treehugger Robot
fb6e7a8fb2 Merge "Haptic Generator : Modify HapticScale param to be a list" 2023-01-03 18:19:16 +00:00
Mikhail Naganov
0f8849795f Merge "audio: Implement ITelephony core interface for telecom" 2023-01-03 18:10:13 +00:00
Shraddha Basantwani
c7d237de07 Haptic Generator : Modify HapticScale param to be a list
Bug: 258124419
Test: atest VtsHalHapticGeneratorTargetTest

Change-Id: I8c44709e92410fbad4dda7aaea66846ed4893786
2023-01-03 16:58:41 +00:00
Treehugger Robot
98c73f7a47 Merge "Virtualizer : Add minimum and maximum capabilities for params." 2022-12-28 21:11:50 +00:00
Treehugger Robot
6a891fd22d Merge "Volume : Add minimum and maximum capabilities for params." 2022-12-28 20:28:33 +00:00
Treehugger Robot
1afdbc0e9c Merge "Refactor the ISoundDose.aidl interface" 2022-12-28 20:01:49 +00:00
Treehugger Robot
6c1368fba8 Merge "BassBoost : Add minimum and maximum capabilities for params." 2022-12-28 19:50:30 +00:00
Treehugger Robot
11dcbb943d Merge "EnvironmentalReverb: Add AIDL placeholder implementation and its unit test" 2022-12-28 18:46:33 +00:00
Sham Rathod
8411fd2e94 BassBoost : Add minimum and maximum capabilities for params.
Bug: 263416041
Test: atest VtsHalBassBoostTargetTest
Change-Id: I9ab9c6aa10dd860104ed2d45f9cf96e32d55cc1f
2022-12-28 23:38:31 +05:30
Sham Rathod
e808b07200 Virtualizer : Add minimum and maximum capabilities for params.
Bug: 263416041
Test: atest VtsHalVirtualizerTargetTest
Change-Id: Ic51135ffa685f64a945898bd0f9ebf12f8832ea6
2022-12-28 23:37:52 +05:30
Vlad Popa
2afbd1e549 Refactor the ISoundDose.aidl interface
This refactoring is fixing the hal_implementation_test workaround from
aosp/2363076. Adjusted the package name to match the aidl_interface and
declared the ISoundDose interface types only.

Test: VtsHalSoundDoseFactoryTargetTest, VtsHalAudioCoreTargetTest,
hal_implementation_test
Bug: 263388737

Change-Id: Ibce4cd95aaf600de2096179f137243939114ba6a
Merged-In: Ibce4cd95aaf600de2096179f137243939114ba6a
2022-12-28 18:01:01 +01:00
Sham Rathod
85793d8c86 Volume : Add minimum and maximum capabilities for params.
Bug: 263416041
Test: atest VtsHalVolumeTargetTest

Change-Id: Iea1253d9bfb049916f8f60e675eacf8e9040d087
2022-12-28 20:46:51 +05:30
Mikhail Naganov
ae0e88ca5c Merge "audio: Add presentation and latency control to IStreamOut" 2022-12-27 23:10:53 +00:00