| Commit message (Collapse) | Author | Age | Files | Lines |
| |\
| |
| |
| |
| |
| |
| |
| | |
https://android.googlesource.com/platform/packages/modules/Bluetooth into t13.0
Android 13.0.0 Release 52 (TQ3A.230605.012)
Change-Id: I379845946815b7c623f83a1d33036ae615f090fb
|
| | |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
AServiceManager_getService is deprecated.
Bug: 264611736
Test: atest pts-bot
Change-Id: If7022e9726b91990723922408284f2a885abbf3a
(cherry picked from commit 84b8cf7eaaf7a3ddba984e2f59fab04dd63c7f64)
Merged-In: If7022e9726b91990723922408284f2a885abbf3a
|
| |/
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The following commit:
29d38ad3c2 Add support for Opus in BT Audio HAL
Added
BTAV_A2DP_CODEC_INDEX_SOURCE_LC3
BTAV_A2DP_CODEC_INDEX_SOURCE_OPUS
BTAV_A2DP_CODEC_INDEX_SINK_OPUS
to the available codecs.
This causes UpdateOffloadingCapabilities to return early with failure
when handling BTAV_A2DP_CODEC_INDEX_SOURCE_LC3 which casues fallback
to SW encoding even when other codecs than lc3 is available for HW
offloading. Also add case for BTAV_A2DP_CODEC_INDEX_SINK_OPUS for
completeness.
The following can be observed in the log:
[ERROR:codec_status_aidl.cc(558)] UpdateOffloadingCapabilities: Unknown codec_type=5
Test: See issue
Bug: 266208838
Change-Id: I7b145a6f74a3540ca2083630afb97fcc154c841d
|
| |
|
|
|
|
|
|
|
|
|
|
|
| |
Uses atomic compare and exchange to avoid cases where the confirmed
stream request is not registered and overwritten. This happens when
the other thread confirms the request after we already checked the
state, but before it is set here.
Bug: 258127534
Test: Manual testing
Change-Id: I3528e97d6944949bf5031975b9f8e436db68aa3c
Merged-In: I3528e97d6944949bf5031975b9f8e436db68aa3c
(cherry picked from commit cb1b6c8f4d26c27820212afe5dd4dbd32cc5a947)
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
On bramble and likely other phones that use A2DP HIDL HAL, when
connected to Pixel Buds Pro, we try to select the OPUS codec as it is
the preferred codec for Pixel Buds Pro. However, since OPUS support was
added to Android after A2DP HIDL HAL freeze, we get an error from the
HIDL HAL.
While initializing codecs, check if we are using the A2DP HIDL HAL and
disable OPUS codec if that is true.
Bug: 254231581
Tag: #refactor
Test: Manually tested using barbet which also has using the A2DP HIDL
HAL
Ignore-AOSP-First: OPUS codec support does not exist on AOSP yet
Change-Id: I1bf9d7a6121d6d6d13098ee38bebb363e444ebaf
|
| |
|
|
|
|
|
|
|
|
| |
Bug: 241795539
Bug: 239651157
Tag: #feature
Test: atest --host bluetooth_le_audio_test bluetooth_le_audio_client_test --no-bazel-mode
Change-Id: Icbe7666789d4a4df248405a39f11d0e753cf5f23
Merged-In: Icbe7666789d4a4df248405a39f11d0e753cf5f23
(cherry picked from commit f7029ac1dfdff23f59745fd623f1544d81701545)
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This patch fix possible race on startRequest.
It could happen that ConfirmStreamingRequest is called in the main
thread before, StartRequest() ends and sets pending flag.
That could lead to incorrect Bluetooth Audio Hal state - stay in
STARTING state.
08-30 11:14:06.921114 8896 11089 I bt_stack: [INFO:le_audio_software_aidl.cc(69)] StartRequest
08-30 11:14:06.921221 8896 8965 I bt_stack: [INFO:client.cc(2967)] OnAudioSinkResume
08-30 11:14:06.921272 8896 8965 I bt_stack: audio_receiver_state: IDLE
08-30 11:14:06.921272 8896 8965 I bt_stack: audio_sender_state: READY_TO_RELEASE
08-30 11:14:06.921272 8896 8965 I bt_stack: configuration_context_type_: 4
08-30 11:14:06.921299 8896 8965 I bt_stack: [INFO:client_audio.cc(428)] ConfirmStreamingRequest
08-30 11:14:06.921314 8896 8965 I bt_stack: [INFO:le_audio_software.cc(197)] ConfirmStreamingRequest
08-30 11:14:06.921327 8896 8965 W bt_stack: [WARNING:le_audio_software.cc(212)] , no pending start stream request
<snip>
08-30 11:14:11.421940 817 12545 E BTAudioHalDeviceProxyAIDL: Start: session_type=LE_AUDIO_SOFTWARE_ENCODING_DATAPATH, cookie=0x400, state=STARTING failure
08-30 11:14:11.422137 817 12545 E BTAudioHalStream: out_write: state=STARTING failed to resume
08-30 11:14:11.438755 817 12545 I BTAudioHalStream: out_write: state=STARTING first time bytes=1920
08-30 11:14:11.438829 817 12545 W BTAudioHalStream: out_resume: state=STARTING NOT ready to resume?!
08-30 11:14:11.438852 817 12545 E BTAudioHalStream: out_write: state=STARTING failed to resume
Bug: 244299911
Bug: 244384741
Test: atest BluetoothInstrumentationTests
Test: manual testing media -> phone call->media switch
Tag: #feature
Merged-In: I55e7c9d4301bc027e6f1dd505813bb2b05799629
Change-Id: I55e7c9d4301bc027e6f1dd505813bb2b05799629
(cherry picked from commit ed42483ca2dcb037317956eb2f5d3535553c32b1)
|
| |\
| |
| |
| |
| |
| |
| | |
* changes:
Add support for Opus over A2DP
Add support for Opus in BT Audio HAL
Add support for Opus in BT Java Service
|
| | |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
This CL provides support for IETF RFC 2012-6716 Opus as a BT A2DP codec
for source or sink devices to the AOSP BT stack. During AVDTP handshake
for A2DP, codec capabilities are negotiated between the source and sink
devices, and the connection is established accordingly. The CL provides
support for Opus codec selection through Developer Options.
The Opus codec provides a highly optimized perceptual coding
implementation, with the following core features:
* Hybrid, Music (CELT) and Speech (SILK) modes
* Scalable Bitrate from 6 - 510 kbps
* Framesizes from 2.5 - 60ms
* Support for Packet Loss Concealment
* High efficiency coding with 3 byte frames to encode silence
The core function calls for the codec are:
opus_encode (OpusEncoder *st,
const opus_int16 *pcm,
int frame_size,
unsigned char *data,
opus_int32 max_data_bytes)
opus_decode (OpusDecoder *st,
const unsigned char *data,
opus_int32 len,
opus_int16 *pcm,
int frame_size,
int decode_fec)
The majority of this CL implements the addition of the vendor codec in
the A2DP stack, interfacing of the audio through the A2DP HAL, and codec
capability negotiation over AVDTP.
Bug: 226441860
Test: atest net_test_stack:StackA2dpTest and bds-dev sink
Tag: #feature
Ignore-AOSP-First: TM QPR1 Feature
Change-Id: I05ecf07ab01f8045166b3d2da60fc2315c743cd2
|
| | |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Provide support for software codec and DSP offload
Bug: 226441860
Test: Verification using bds-dev sink device
Tag: #feature
Ignore-AOSP-First: TM QPR1 Feature
Change-Id: I3e771473294ab59cc6e9513835ce0d54b72a8f84
|
| |\ \
| |/
|/|
| |
| |
| | |
* changes:
Support setting BT controller Low Latency mode(2/2)
Support setting BT controller Low Latency mode(1/2)
|
| | |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Handle audio api StartRequest and SetLatencyMode in a2dp to send stream latency
through btif_av to bta event.
Bug: 240637363
Bug: 223126227
Tag: #feature
Ignore-AOSP-First: TM QPR1 feature
Test: test on sink device support dynamic spatial audio
Change-Id: I9ad4a23a58eeca6128a9f04a530ae6c90c773da5
|
| |\ \
| |/
|/| |
|
| | |
| |
| |
| |
| |
| |
| |
| | |
Bug: 226441860
Test: run sink device using bds-dev
Tag: #feature
Ignore-AOSP-First: TM QPR1 Feature
Change-Id: Ic7bccdc29abcb3861eda4620904e9372e3814d3c
|
| |/
|
|
|
|
|
|
|
|
|
|
|
| |
1. Control the broadcast offload audio config in codec_manager
2. Gather the stream handle from BIG event
3. Bring the braodcast offload audio config as broadcast offload
session start
Bug: 210987580
Test: verify broadcast offload stream with broadcast sink
Change-Id: I4b1210a68aedcc14b0df6094ec446b5d2652931f
Merged-In: I4b1210a68aedcc14b0df6094ec446b5d2652931f
(cherry picked from commit 954fe539bbe8d825bb8e227cb5ec679c6ede9665)
|
| |\
| |
| |
| |
| |
| | |
* changes:
Check the broadcast offload audio configuraiton and session type
Set broadcast ISO data path based on the codecLocation
|
| | |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
We should check the audio configuration mapping is correct for the
unicast and the broadcast offload session respectively
Bug: 210987580
Test: start the broadcast for the offload, check the configuration
checker
Change-Id: I49269a504fc423d03826657ad363cfe9ca09bfcd
Merged-In: I49269a504fc423d03826657ad363cfe9ca09bfcd
(cherry picked from commit 49fe7aca6efdc41f5be69fd4edfa34989a75b869)
|
| |/
|
|
|
|
|
|
|
|
|
|
|
| |
For the broadcast offload, the audio data wouldn't go throught via
bluetooth stack, so we don't need to setup the data mq and flush the audio
Bug: 210987580
Test: start the offload broadcast source, check the session could be
started
Change-Id: I51078755363d1546b088405a1eede80a3a09e870
Merged-In: I51078755363d1546b088405a1eede80a3a09e870
(cherry picked from commit eb4b018aed5a62abbd49ff8011aecb93ecf46d16)
|
| |\ |
|
| | |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
The module availability to Bluetooth is currently hard-coded in apex.go.
We are in the process of cleaning the apex.go by adding the availability
in each required module
Test: Build + TH + boot phone & use bluetooth
Bug: 216433795
Ignore-AOSP-First: No apex in aosp
Change-Id: I98a8ce2054f6b9fe49b583abf681bc4cb53d2951
|
| |\ \
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
e880d2196e
Original change: https://googleplex-android-review.googlesource.com/c/platform/packages/modules/Bluetooth/+/19000753
Change-Id: I14f055aef19324fc1d8ec166468806867f1ecd7c
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
|
| | | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Ignore-AOSP-First: QPR update
Bug: 232865497
Tag: #stability
Test: atest BluetoothInstrumentationTests
Change-Id: I945f8c4820c50bd8712b77e09d5743a3588afdfb
|
| | |/
|/|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Initialize factory_provider_ and check for its validity
before attempting to unlinkToDeath
Bug: 233961816
Tag: #refactor
Test: atest BluetoothInstrumentationTests
Change-Id: If0a883968a563da3df56aecfb97b2d97f6bbc4e5
Merged-In: If0a883968a563da3df56aecfb97b2d97f6bbc4e5
(cherry picked from commit bb8637682c99fd7693b5aa0ca473acc65d6e4c96)
|
| |/
|
|
|
|
|
|
|
|
|
|
|
|
| |
Ensure that the object to the factory provider is stored
in the BluetoothAudio client interface because the death
receipt would be received on that object from the AIDL
framework if the server were to crash.
Bug: 233961816
Tag: #refactor
Test: atest BluetoothInstrumentationTests
Change-Id: Id9769b13d59653d1aa4a8e5cff4edfb2b0f1276c
Merged-In: Id9769b13d59653d1aa4a8e5cff4edfb2b0f1276c
(cherry picked from commit 8b314973c1e505f1075f831809af36a8c7093b71)
|
| |\ |
|
| | |
| |
| |
| |
| |
| |
| | |
Bug: 226441860
Test: A2DP sink device using bds-dev
Ignore-AOSP-First: Merge to internal and cherry-pick to AOSP
Change-Id: Idbde911cabe454c675a85a98624440ab44d7872a
|
| |/
|
|
|
|
|
|
|
|
|
| |
Add 32_2 config support for conversational
Bug: 230402180
Tag: #feature
Test: atest --host bluetooth_le_audio_test
Change-Id: I7325490dc3063f21c503911682c802daec0dc3de
(cherry picked from commit 160e3295b8847e9f88a903ed60299b3149267bde)
Merged-In: I7325490dc3063f21c503911682c802daec0dc3de
|
| |
|
|
|
|
|
|
|
|
|
| |
Add 24_2 config support for media
Bug: 230402180
Tag: #feature
Test: atest --host bluetooth_le_audio_test
Change-Id: I281a49aff32cc331a69fc4882bc6a50e410de01c
(cherry picked from commit fda369f325129910f4b2e04d8812a24fbadf3bfc)
Merged-In: I281a49aff32cc331a69fc4882bc6a50e410de01c
|
| |
|
|
|
|
|
|
|
|
|
| |
Patch extends possibility for stack, Bluetooth Audio Hal part to use
Broadcaster session for broadcasting.
Tag: #feature
Test: atest bluetooth_le_audio_client_test bluetooth_test_broadcaster
Sponsor: jpawlowski@
Bug: 210986334
Change-Id: I4d5402f060a853456751e348072b941173848e04
|
| |\
| |
| |
| |
| |
| |
| |
| |
| | |
a64639fe1b
Original change: https://android-review.googlesource.com/c/platform/packages/modules/Bluetooth/+/2045730
Change-Id: I6328514c7260ed7aa05f84def0efc9e2f4f07280
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
|
| | |\ |
|
| | | |
| | |
| | |
| | | |
Change-Id: Ic5a873f16ae6e72c519202fc47deb21429353a0f
|
| |\| |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
a7487b11f8 am: fdb7f312ac
Original change: https://android-review.googlesource.com/c/platform/packages/modules/Bluetooth/+/2041383
Change-Id: I4c7f602c91979f28b6f33a96149ef3d215bad96c
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
|
| | |\ \ |
|
| | | |/
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Binder check is to check whether AIDL should be used, so it's no
necessary when refetching. Also, when the binder process crashes, it
will take some time until recovering, so binder check usually fails
here.
Tag: #stability
Bug: 224534323
Test: atest BluetoothInstrumentationTests
Change-Id: Ibd1f741ad414c6e44c6b36517c966df45e86224a
|
| |\| |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
b6b37a5db3
Original change: https://android-review.googlesource.com/c/platform/packages/modules/Bluetooth/+/2049226
Change-Id: I2b909ded7d4a1e47c5ae3e66b5da2c43a12c095f
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
|
| | |\ \
| | |/
| |/| |
|
| | | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
AIDL availability should be checked every time, or the client can
never be initialized.
Tag: #stability
Bug: 225093330
Test: atest BluetoothInstrumentationTests
Change-Id: Ia5fafa3ff1c4ade5276d04239138562286bf20f2
|
| |\| |
| | |
| | |
| | |
| | |
| | |
| | | |
Original change: https://android-review.googlesource.com/c/platform/packages/modules/Bluetooth/+/2045733
Change-Id: If973521ce3d91642190616bd26620891fac41477
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
|
| | |\ \
| | | |
| | | |
| | | |
| | | |
| | | | |
* changes:
le_audio_test_app: Do not set empty program info
le_audio: Fix using audio location of 0x00
|
| | | |/
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
The value of 0x00 is now known as NotAllowed, and should not be used
in case of the mono audio signal.
Bug: 150670922
Tag: #feature
Test: atest --host bluetooth_le_audio_test bluetooth_le_audio_client_test
Sponsor: jpawlowski@
Change-Id: Iab383209a114efa35bf1e3bb1f1b51fce0561624
|
| |\| |
| | |
| | |
| | |
| | |
| | |
| | | |
Original change: https://android-review.googlesource.com/c/platform/packages/modules/Bluetooth/+/2038688
Change-Id: Ib5650cc39cb6556f2c49e90c3dd139642db12aeb
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
|
| | |/
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
With this patch after reconfiguration(e.g. when metadata changed),
group stays in the CONFIGURED state and does not go to STREAMING as
before. Instread Audio Hal gets suspended.
Group will go to streaming when Audio Hal tries to resume stream.
Also, with this patch, if ASEs are alread configured, state machine will
do QoS Config right away without trying to do Codec Config.
Bug: 222674521
Bug: 150670922
Test: atest --bluetooth_le_audio_test bluetoot_le_audio_client_test
Change-Id: Ibe771914f57732015d8dd57688cac84fee0cd296
|
| |\|
| |
| |
| |
| |
| |
| |
| | |
am: c7c5eee207 am: 60f116b1c3 am: bdd6f274ac
Original change: https://android-review.googlesource.com/c/platform/packages/modules/Bluetooth/+/2033204
Change-Id: I5076d7627ce6c3f4e5b3b1a1c6210b0d532464c6
|
| | |
| |
| |
| |
| |
| |
| |
| |
| | |
The target latency parameter should be the forth parameter
Bug: 225441658
Test: Le Audio offload capabilities should support the mandatory
configuration defined in the BAP spec.
Change-Id: I519cdd2b9463d30833f0efd54dd5eec7a158979e
|
| |\|
| |
| |
| |
| |
| |
| |
| | |
setLowLatencyAllowed() because we save the value and send it to startSession" am: 0735660fd9 am: af267ac73b am: 61878daa95
Original change: https://android-review.googlesource.com/c/platform/packages/modules/Bluetooth/+/2027503
Change-Id: I46766a2d68ff47f51a15af768932f6ded9b348e5
|
| | |
| |
| |
| |
| |
| |
| |
| |
| | |
setLowLatencyAllowed() because we save the value and send it to startSession
Bug: 223204349
Bug: 214615268
Test: build
Change-Id: Id5597afc8dbb5503945253334cfa7c0c3a24166b
|
| | |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
check check, is anyone there? *static*
* statically link libbluetooth into libbluetooth_jni
* clean up some build rule defaults
* statically link libchrome
* stop using whole static libs, to increase ability to prune unused code
* remove required libbluetooth
* statically link libstatlog_bt in a few location
:party:
:party:
Still some issue on local test. I suppose they should only be run in
the test suite. Test are:
* bluetooth-test-audio-hal-interface
* bluetooth_flatbuffer_bundler_test
* net_test_rfcomm_suite
* net_test_stack_rfcomm
Bug: 220805766
Test: compile, verify BT boots & basic use cases work
Testeted with all cc_test in packages/modules/Bluetooth:
`atest $(grep -w cc_test -A 1 $(find packages/modules/Bluetooth -name Android.bp) | grep name | cut -d '"' -f 2)`
Test: m bluetoothtbd
Test: atest bluetoothtbd_test
Test: m libstatslog_bt bt_headless libbluetooth_gd libbtif libbt-common bluetooth_stack_with_facade bluetooth_test_gd_unit bluetooth_gd_fuzz_test libbt_audio_hal_a2dp_encoding_fuzzer
Ignore-AOSP-First: apex changes not in AOSP yet
e634b3db677ea457101ede133d7fc8a31450a900
Change-Id: I99ea709fe591ca362208547051d7fd5810ed42ed
|
| | |
| |
| |
| |
| |
| |
| | |
Ignore-AOSP-First: Updating it for apex which is on tm-dev
Test: make a full build with m -j64
Bug: 220216883
Change-Id: I171d904e4b811cfd114be05e4329669e965a7599
|
| |\ \ |
|