Commit Graph

28 Commits

Author SHA1 Message Date
Mikhail Naganov
a88cf60b87 audio: Fix BT AIDL HAL module implementation
In order to align with legacy behavior, when opening a stream,
the module must suggest the current configuration of the BT session.
For that to work, the BT device proxy must be opened prior
to creating a stream, code moved to ModuleBluetooth.

Fix minor inconsistencies and bugs found during testing.

Bug: 301213930
Bug: 316027906
Test: atest pts-bot
Change-Id: I04ddaf73be82f872a3f32a789563c3cbd648eb61
2023-12-26 16:34:58 -08:00
Limon Mia
b58cee4af7 BTAudio HAL: Added feature flag for DSA Over LEA
Test: atest VtsHalBluetoothAudioTargetTest
Bug: 270987427
Change-Id: Ifef0b97d20c7c12001b7d04cc7f8ce9da5fb1920
2023-12-15 05:30:09 +00:00
Antoine SOULIER
4e34d05b7b Codec Extensibility A2DP HAL Reference Implementation
Test: m
Bug: 297037759
Change-Id: I84b32c2ef22da8c3e920e497501b9f16feaf803c
2023-12-07 16:51:57 +00:00
Yuyang Huang
aa70c11126 Add HFP to BluetoothAudioSession
Test: m .
Bug: 265057196
Change-Id: I0e2e9d0f34ebf3f732c4f2da799c4c30f52bdeef
2023-12-07 05:54:59 +00:00
Alice Kuo
42b85abe9c Minor handle refine for setLowLatencyModeAllowed
setLowLatencyModeAllowed API is only used for A2DP offload session. For
this case, we shouldn't report ReportLowLatencyModeAllowedChanged
callback for the other session

Bug: 270987427
Test: atest VtsHalBluetoothAudioTargetTest
Change-Id: I1991ee93b3523717c6ca26b1638e34a196253a5b
2023-11-20 08:24:51 +00:00
Limon Mia
7c48034d32 BTAudio HAL: implement changes for DSA Over LEA
Test: atest VtsHalBluetoothAudioTargetTest
Bug: 270987427
(cherry picked from https://googleplex-android-review.googlesource.com/q/commit:f6a9577ac7585a5c284896736ba3508f7ed7528a)
Merged-In: I341e3af726da7870e23f5bb0943066ebcdd34e35
Change-Id: I341e3af726da7870e23f5bb0943066ebcdd34e35
2023-11-20 07:56:19 +00:00
Xin Li
879960bdce Merge Android U (ab/10368041)
Bug: 291102124
Merged-In: I7b6fffac2ada0e039f79bad8cc9b4d954e9c3460
Change-Id: I9466127d8d0fa38df36ca99f704853b2db871e67
2023-08-25 13:29:30 -07:00
kuanyuhuang
25b4819e08 BT: add LOW_LATENCY mode if low latency allowed
LatencyMode is not updatable after audio session started.
Currently, if low latency is allowed, audio session should have
LOW_LATENCY latency mode.
Create a workaround to add LOW_LATENCY when low_latency_allowed_ set to
ture at ReportLowLatencyModeAllowedChanged.

Bug: 291760415
Bug: 294498919
Test: play low latency audio with supported headset and check
LOW_LATENCY mode can be selected

Change-Id: Ia324f0a368e47ae8b8056c190d8d1f4a2e09ecec
2023-08-07 05:05:52 +00:00
Mikhail Naganov
d5f0d13ef0 bluetooth: Add AudioSession/Control methods for AIDL track metadata
Add overloads for UpdateSink/SourceMetadata that
accept android.hardware.audio.common.Sink/SourceMetadata types.
Move include of hardware/audio.h to BluetoothAudioSession.cpp.
This allows to use this code from "pure AIDL" modules.

Bug: 228804498
Test: m
Change-Id: Ib0b8c6d1c7db9b846a508d6d4001f67feb2111c6
2023-08-01 13:38:47 -07:00
Patty Huang
f5b38af6df Always use audio_configuration_changed_cb_ to notify the config update
There is a new API `isStreamActive` can indicate the stream handle
state. We don't need to use soft_audio_configuration_change_cb to
update the connection map and audio location

Bug: 249614160
Bug: 277857154
Test: LE audio offload disappear and later join with downmix enable
Change-Id: I02357ebe09425525e356ba0f793a3f081953d866
2023-04-13 10:31:20 +08:00
Alice Kuo
851ef342ed Add soft_audio_configuration_changed_cb_ to handle the streamMap changed
Based on the stream status and Bluetooth Audio Session to switch the
different configuration_changed_cb_ notifcation.

audio_configuration_changed_cb_ for the context type handover case
soft_audio_configuration_changed_cb_ for the streamMap changed during
media stream case

Bug: 231084798
Test: LE audio offload later join and disappear with downmix enable
Change-Id: I199c2b765b128875fb2c66abb1a500e4a6c820b7
2022-09-13 00:06:42 +08:00
Alice Kuo
ee398a93f5 Bluetooth audio hal check broadcast configuraiton for the broadcast offload
The patch contains the following changes
1. Check the broadcast audio configuration as starting broadcast offload
   session
2. Update audio configuration checker for broadcast offload
3. Remove the IsOffloadLeAudioConfigurationValid function that the audio
   configuraiton is invalid as session started, so we don't need to
   check it at that time

Bug: 210987580
Test: start the offload broadcast stream, and check the session status
Change-Id: I60b1b506051873f6d942f2febace6562634fc12a
2022-07-13 04:39:00 +00:00
Alice Kuo
36a879796b Supoort audio configuration update to audio HAL for broadcast offload
Bug: 210987580
Test: start the broadcast offload, check log
Change-Id: Iadae625d10ad179089b952ac94ff66ae90a6236e
2022-07-08 00:35:08 +08:00
Alice Kuo
adcceec9ad Add A2dp decode software and offload session type
1. Add the interface
2. Add the default implementation
3. Add VTS

Bug: 206601670
Test: atest VtsHalBluetoothAudioTargetTest
Change-Id: I54d8037eeb09312c9f1fb75d2167cc50ac7cae8c
2022-03-29 15:09:50 +08:00
Chen Chen
3b46c05d95 SpatialAudio: fix crashes in BluetoothAudioSession
Bug: 224578221
Bug: 214615268
Test: build
Change-Id: I0fd7e0887200e39dc996b0d84de421ec13897e94
2022-03-14 18:04:27 -07:00
Cheney Ni
6ecbc76603 SpatialAudio: Export LatencyMode functions to BluetoothAudioSession
BluetoothAudioSession utility supports latency control functions, so
audio_bluetooth_hw can get / set the LatencyMode easily.

Bug: 214615268
Bug: 218708371
Test: build
Tag: #feature
Change-Id: Ia85581c74fc91f406309539755d60d36c173f5e0
2022-03-08 11:55:41 +08:00
Chen Chen
0a68a920cc SpatialAudio: Init codec and buffer size from startStream()
Bug: 214615268
Test: build
Tag: #feature
Change-Id: I26d82da0dfc82fcb6cab6b879bced8e892e8cf44
2022-02-24 18:40:27 +00:00
Chen Chen
585dc0b0b2 Merge "SpatialAudio: Remove codec interface from audio HAL. Codec switch logic will be inside Bluetooth" 2022-02-14 19:26:29 +00:00
Chen Chen
359bf32091 SpatialAudio: Remove codec interface from audio HAL. Codec switch logic will be inside Bluetooth
Bug: 214615268
Test: Build
Tag: #feature
Change-Id: Ic2a997614e16abfd745c80dc87ecf5d340497691
2022-02-11 12:25:27 -08:00
Greg Kaiser
42d931a271 Use parens to fix output
We want our ternary conditional to evaluate before the << operator,
so we use parenthesis to make this happen.

Bug: 214615268
Test: TreeHugger
Change-Id: I0efb22487d0cf3778f8a12d2391a0f1a7a87995d
2022-02-11 06:45:43 -08:00
Chen Chen
9e09eec46b Merge "Spatial Audio: Implement setLowLatencyAllowed functions in BluetoothAudioSession" 2022-02-11 00:53:24 +00:00
Chen Chen
81f38e55c1 Spatial Audio: Implement setLowLatencyAllowed functions in BluetoothAudioSession
Bug: 214615268
Test: Build:
Tag: #feature
Change-Id: I01c182b46fe72ee8f7c8e12e59ea2413c423b061
2022-02-10 22:10:56 +00:00
Treehugger Robot
b8e8c57ac6 Merge changes from topic "bt-broadcast-aidl"
* changes:
  BT: Broadcast AIDL more handle on the default implementation
  BT: Broadcast AIDL simplification
2022-02-10 05:49:31 +00:00
Alice Kuo
e80a576850 BT: Broadcast AIDL more handle on the default implementation
* seperate the provider for unicast and broadcast
* add handle for the audio configuration broadcast offload

Bug: 150670922
Test: make
Tag: #feature
Change-Id: Ie41496be24e3742b2f1fa438bc4ed4b127e72dd0
2022-02-09 12:40:10 -08:00
Chen Chen
a4c4c61eed Spatial Audio: Add setLatencyMode and setCodecType API with empty
implementation

Bug: 216832331
Test: build
Tag: #feature

Change-Id: I0ccfee39d1f86da81b50f0757de87b6645baacf8
2022-02-08 02:30:17 +00:00
Josh Wu
75462aafb5 BtAudio: Improve LE offload compatability
Bug: 203490261
Test: m android.hardware.bluetooth.audio-V1-impl
Change-Id: I7dd37cb697b03bb5fe0bdc467f8e190575e0e2e1
2022-01-23 08:30:13 -08:00
Josh Wu
98d7e083bd BtAudio: Fix default implementation typos
Bug: 203490261
Test: m android.hardware.bluetooth.audio-V1-impl
Change-Id: I80f39d844ec5bb44830341f310143b3626593d79
2022-01-21 03:09:33 -08:00
Josh Wu
20bac52a5b Add Bluetooth Audio AIDL utils
Test: manual
Bug: 203490261
Change-Id: Ia299a61e89273ea1c9d132425598975418f57a03
2022-01-17 06:32:52 +00:00