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
Test: play low latency audio with supported headset and check
LOW_LATENCY mode can be selected
(cherry picked from https://android-review.googlesource.com/q/commit:25b4819e08280ea1bffa019a231e1d60edea7338)
Merged-In: Ie0626179a56334125cd48a048d162f09882888eb
Merged-In: I9d5510116225aa5857d1bd086956bc46d46a3eba
Change-Id: Ia324f0a368e47ae8b8056c190d8d1f4a2e09ecec
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
(cherry picked from commit d5f0d13ef0)
Merged-In: Ib0b8c6d1c7db9b846a508d6d4001f67feb2111c6
Make android.hardware.bluetooth.audio-V3 and
VtsHalBluetoothAudioTargetTest to depend on
android.hardware.audio.common-V2. This is needed so that
the audio HAL service can depend on
android.hardware.bluetooth.audio-V3.
Bug: 228804498
Test: m
Change-Id: Ic001e651de4cc6ef6920f1d6d80ab272c45aefe2
Merged-In: Ic001e651de4cc6ef6920f1d6d80ab272c45aefe2
(cherry picked from commit f6497dd78c)
Bug: 290666670
Bug: 289857524
Bug: 284091286
Bug: 289489060
Test: mma -j32
(cherry picked from https://android-review.googlesource.com/q/commit:44628f38d2f60a8e9c283315485d2d62605f677d)
Merged-In: I2b3c32b133e208ec2cfb1b244ccb24ad249f22df
Change-Id: I2b3c32b133e208ec2cfb1b244ccb24ad249f22df
The 32-bit libraries may not be present on the device. This makes the test more self-contained.
The "provider" is managed with a shared_ptr but we do not hold it and
instead are giving the raw inner pointer as binderDiedCallbackAidl.
This can randomly generate crash as the provider may be freed outside of
this code.
Replacing the provider with a context that we can manually allocate and
deallocate.
Setup AIBinder_DeathRecipient_setOnUnlinked to clean the data allocated
Bug: 245009140
Test: m android.hardware.bluetooth.audio-impl and start / stop session +
manually kill bluetooth process during audio play
(cherry picked from https://android-review.googlesource.com/q/commit:f3faab081a543ad43e86eec6d03cd7835ef5c712)
Merged-In: I0c14c062a8bde7e532ff02f01991d66da33ec569
Change-Id: I0c14c062a8bde7e532ff02f01991d66da33ec569
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
AptxAdaptive LE/LEX codec and AAC ABR AIDL side changes
Bug: 254567319
Tag: #feature
Test: m android.hardware.bluetooth.audio-freeze-api &&
m android.hardware.bluetooth.audio-update-api &&
atest VtsHalBluetoothAudioTargetTest
Change-Id: I74a2df64ba6ef2ae02e08850b0f6c7784b24b02b
Added two new latency modes for Audio HAL to enable Dynamic Spatial
audio with LE audio, and the path through which the head tracking data
has to be routed.
Bug: 268568163
Test: m android.hardware.bluetooth.audio-update-api
Tag: #feature
Change-Id: I92b529e4eee3c862934d46164117450975e017ef
This field is used to indicate the PCM stream source for given stream
handle
Tag: #feature
Bug: 264692800
Test: m android.hardware.bluetooth.audio-update-api
Change-Id: I3df9066e98ca552329bb58ae5fbc5346d1021b10
Merged-In: I3df9066e98ca552329bb58ae5fbc5346d1021b10
Required to automate AIDL finalization - makes errors show up
now instead of later.
Bug: 188871598
Test: build
Change-Id: I6f46a39f76a73f27a71bc36e600941249ccbe8ee
Merged-In: Ic544707bac671d8327d8cc704a9d453470141e8e
1. Parse the broadcast capability from capability file
2. Convert broadcast HAL format to stack format
3. Update test to validate broadcast capability parsing
4. Correct the map size before accessing in VTS test
Tag: #feature
Bug: 242472419
Test: atest BluetoothLeAudioCodecsProviderTest
Test: atest VtsHalBluetoothAudioTargetTest
Change-Id: I8ac88c1e9024ca03757620bf48eacdd60ada7eb4
Add unit test for BluetoothLeAudioCodecsProvider and simplify
the public interface of BluetoothLeAudioCodecsProvider class
Bug: 253569201
Test: atest VtsHalBluetoothAudioTargetTest
Test: atest BluetoothLeAudioCodecsProviderTest
Test: manual test
Change-Id: I064eb4058b129a571cf9dbb91b85bafe7236b735
Since we change the design of loading LE Audio Capabilities in BT
Audio HAL, we update the VTS test to make sure no matter a device
supports LE Audio Offload or not, it can pass all tests that they
should pass.
Also, update vts test to match C++ coding style.
Bug: 248181252
Test: atest VtsHalBluetoothAudioTargetTest
Change-Id: Ie46c86663e0a22627c324f96360063cd4d4874e4
The current LE audio offload capabilities is hardcode in the
Bluetooth audio HAL. It has the limitation that all the project
would expose the same capabilities. As the newer project comes,
if the ADSP or the controller could handle more configuration
with higher quality or higher bandwidth. It would impact older
project may not work on it. So we plan the feature to make the
le audio offload support to be more flexible.
Bug: 238983662
Test: 1. atest VtsHalBluetoothAudioTargetTest
2. make sure offload capabilities can be supported with those
devices having config XML file
Change-Id: Id82581fdcd22e38108f17c7942bca997b53bab35
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
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
Some are still in VNDK because they are used in other VNDK libs.
Bug: 234181591
Test: m
Merged-In: If999df9c78a20df931177da11742b1c5de19bc08
Change-Id: If999df9c78a20df931177da11742b1c5de19bc08
Some are still in VNDK because they are used in other VNDK libs.
Ignore-AOSP-First: some libs are still in internal master only.
Bug: 234181591
Test: m
Merged-In: If999df9c78a20df931177da11742b1c5de19bc08
Change-Id: If999df9c78a20df931177da11742b1c5de19bc08
(cherry picked from commit 5527adfd7f)
This CL adds Opus as a supported A2DP codec to the BT Audio HAL and
updates HAL compatibility matrix.
Bug: 226441860
Test: A2DP sink device using bds-dev
Change-Id: I21249e3e7e76412af7ed62a3fc9ec133434cf963
LC3 encoder/decoder expects unpacked 24 bit stream
Bug: 230578655
Test: use 24_2 configuration to play over LE Audio
Merged-In: I298d6d3a0cd9786581730de88487c982e1fa9d9d
Change-Id: I298d6d3a0cd9786581730de88487c982e1fa9d9d
LC3 encoder/decoder expects unpacked 24 bit stream
Bug: 230578655
Test: use 24_2 configuration to play over LE Audio
Change-Id: I298d6d3a0cd9786581730de88487c982e1fa9d9d