Commit graph

63 commits

Author SHA1 Message Date
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
Alice Kuo
921760d9a7 Remove bluetooth.audio@2.2 default implementation and utils handles
Bug: 204585486
Test: a2dp software/offload, le audio software/offload verified pass
Change-Id: I7c8f32dd294562052ff5af73e6f3c48642c03fe4
2022-02-21 10:52:39 +08:00
Josh Wu
5d50dc098d BtAudio: Handle bcast hw offloading codecs
Test: atest VtsHalBluetoothAudioTargetTest
Bug: 203490261
Change-Id: I0631838b4cc0462e3aadc581226d43f43a446d29
2022-02-15 09:19:05 -08: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
d6b3341e55 Merge "Correct the offload capability and update comment(AIDL)" 2022-02-10 06:43:43 +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
Patty
03cbe7182d Correct the offload capability and update comment(AIDL)
- Add some comments to describe the supported scenario
- Correct the config from mono to stereo, when only one device is
  connected, mono only need one audio channel, for stereo case,
  support 2 audio channels.

Tag: #feature
Bug: 203535499
Bug: 150670922
Test: make build
Change-Id: Id3ea1e96a6b4fd7a209a015fb5c475465e300cdb
2022-02-10 10:07:17 +08: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
Jack He
16a154767a BT: Broadcast AIDL simplification
* Extract broadcast as separate session type
* Remove the union from LeAudioConfiguration, but use it
  for unicast configuration only
* Simplify default implementations

Bug: 15067092
Test: make
Tag: #feature
Change-Id: Ib6c3ffb6396a71011abb03a374e58ce27fdf3f39
2022-02-09 12:34:49 -08:00
Treehugger Robot
2617347b0b Merge "Correct the offload capability and update comment" 2022-02-09 10:36:38 +00:00
Alice Kuo
303c0f1eb9 Merge "BT: Aptx-Adaptive AIDL changes" 2022-02-08 23:07:15 +00:00
Chen Chen
c29097a71a Merge "Spatial Audio: Add setLatencyMode and setCodecType API with empty implementation" 2022-02-08 18:53:28 +00: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
Alice Kuo
2ed773b36d Move owner file on the top of bluetooth.audio HAL folder
Bug: 204585486
Test: NA
Change-Id: I0edd3a9c98a336b5a18000060e026d878dfe7127
2022-02-04 16:28:43 +00:00
Sagar Verma
d13bbb3256 BT: Aptx-Adaptive AIDL changes
Bug: 203751353
Change-Id: I65f7b4de77ff0083721069959f6ba2081a158a80
2022-01-29 16:15:41 +05:30
Treehugger Robot
1c7c6b6980 Merge "BtAudio: Remove sample_rate_to_hidl_2_0_map" 2022-01-24 04:28:27 +00:00
Treehugger Robot
4909c203d1 Merge "BtAudio: Add InReadPcmData to middleware" 2022-01-24 04:26:48 +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
653108cc56 BtAudio: Remove sample_rate_to_hidl_2_0_map
Bug: 203490261
Test: m android.hardware.bluetooth.audio-V1-impl
Change-Id: Ie19f808e304ea6f293c611d99a810a97a7e1fd94
2022-01-21 22:33:43 -08:00
Treehugger Robot
b1ab40b8d6 Merge "BtAudio: Fix SessionType mapping" 2022-01-22 06:09:44 +00:00
Josh Wu
9880f6bb3c BtAudio: Add InReadPcmData to middleware
Bug: 203490261
Test: m android.hardware.bluetooth.audio-V1-impl
Change-Id: I330226ecc38368b3838c01a191b66b700a2338a7
2022-01-21 22:03:48 -08:00
Treehugger Robot
82d991db1e Merge "Add a2dp vendor codec extension" 2022-01-21 23:27:34 +00:00
Treehugger Robot
c96879a0ce Merge "BtAudio: Add OWNERS to aidl implmentation and VTS, hidl 2.2 handling" 2022-01-21 20:03:34 +00:00
Treehugger Robot
d6304f24bd Merge "BtAudio: Fix default implementation typos" 2022-01-21 19:04:45 +00:00
Josh Wu
8b8b2d5743 BtAudio: Add OWNERS to aidl implmentation and VTS, hidl 2.2 handling
Bug: 203490261
Test: none
Change-Id: I004bbb49a1f6755ad6f2b1a8ac25bc1db9e19f48
2022-01-22 02:40:53 +08:00
Treehugger Robot
5ad2fe4589 Merge "Add updateTrackMetadata support with audioSerssion_2_2 control" 2022-01-21 18:30:53 +00: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
ce6ca9eda7 BtAudio: Fix SessionType mapping
Bug: 203490261
Test: m android.hardware.bluetooth.audio-V1-impl -j
Change-Id: I477e16e4fc060dd145828bca4aba5ad49a56ff76
2022-01-21 00:33:23 -08:00
Alice Kuo
ce87f91873 Add a2dp vendor codec extension
Bug: 215645164
Test: make build
Change-Id: I1ed80ab5cd4a9fbb9ea6fef7a5192241af76f1ea
2022-01-21 13:08:02 +08:00
Alice Kuo
79c936debe Add vendor codec type to support the vendor config and capability
Bug: 203490261
Bug: 150670922
Test: make build
Change-Id: I26cdafe6b96a4c0a501f13bf790723c026029aa6
2022-01-20 23:14:19 +08:00
Alice Kuo
dea3e80b39 Add updateTrackMetadata support with audioSerssion_2_2 control
For the offload case, the updateTrackMetadata would be triggered by the
audio HAL, extend the support for audio session 2.2 control

Bug: 197296692
Bug: 150670922
Test: make build
Change-Id: If1589b95bdec98d41c122da2c47ab53719af8425
2022-01-20 14:55:59 +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
Patty
62f2cf5b45 Correct the offload capability and update comment
- Add some comments to describe the supported scenario
- Correct the config from mono to stereo, when only one device is
  connected, mono only need one audio channel, for stereo case,
  support 2 audio channels.

Tag: #feature
Bug: 203535499
Bug: 150670922
Test: make build
Change-Id: I6dacca8965f48ed58506b63f8d3939afb6f5b1b6
2022-01-12 15:48:03 +08:00
Treehugger Robot
f1605faea0 Merge "Update HAL structure to include offload capability for broadcast" 2022-01-07 09:05:45 +00:00
Patty
2e64b4d9f6 Update HAL structure to include offload capability for broadcast
Bug: 205806028
Bug: 150670922
Test: make build
Change-Id: Ife4a3585474999855ffb04f3946462a137fdc181
2022-01-07 00:19:53 +08:00
Treehugger Robot
e944c8538f Merge "Add audio configuration API and the callback function for bluetooth.audo@2.2" 2022-01-05 02:27:59 +00:00
Alice Kuo
3f9f41f3c8 Add audio configuration API and the callback function for bluetooth.audo@2.2
For LE audio hardware offload
1. Add the function to update audio configuration without session
restart
2. Add a callback to notify the audio HAL the audio configuration
changed

Bug: 197296692
Bug: 150670922
Test: HAL 2.1/2.2 work for A2DP software/hardware media, and LE audio
software media/voip call

Change-Id: I8b01ec8dfc9d9cd552770c8c734319a685ee626b
2022-01-03 14:31:00 +00:00
Patty
784e443350 Get default provider codec from HAL
1. Add function getProviderCapabilities_2_2
    to return audio capability
 2. Add function GetLeAudioOffloadCodecCapabilities
    to get le audio offload capability
 3. Add LeAudioCapability in HAL 2.2

Tag: #feature
Bug: 203535499
Bug: 150670922
Test: atest BluetoothInstrumentationTests

Change-Id: Ied2d0c8c0bdaa4b8d0c149b5164ba346e4df5ae1
2021-12-23 16:50:42 +08:00
Alice Kuo
f33cea94ce Add onSessionEnded handle for HIDL 2.2
1. The audio driver need to get the session status callback as the
sessionEnded
2. Update the invalid audio configuration based on the session type

Bug: 197296692
Bug: 150670922
Test: HAL 2.1/2.2 work for A2DP software/hardware media, and LE audio
software media/voip call
Test: Turn on/off bluetooth to make sure the onSessionEnded work well

Change-Id: Id758b556e8f5c9b63052a408154f02082515091c
2021-12-21 02:19:05 +00:00
Alice Kuo
79c02160ef Add support LE audio offload for HIDL 2.2
1. Clean up the LE offlload path for HIDL 2.1
2. Add support offload path start/suspend/stop function with HIDL 2.2

Bug: 197296692
Bug: 150670922
Test: HAL 2.1/2.2 work for A2DP software/hardware media, and LE audio
software media/voip call

Change-Id: I2295b62fc2255d247f18f0852de2b40e6280d282
2021-12-16 15:00:23 +08:00
Alice Kuo
6f765ce3e3 Clean up: remove LE audio hardware offload in Bluetooth audio HAL 2.1
LE audio offload plan to fully support on aidl or temporal HAL 2.2. Remove it in HAL 2.1 to make the compatible work easier

Bug: 197296692
Bug: 150670922
Test: HAL 2.1/2.2 work for A2DP software/hardware media, and LE audio
software media/voip call

Change-Id: Icc68bea357d2ee0427826e0c20888399662e9bcb
2021-12-10 05:35:52 +00:00
Jakub Pawlowski
8d87eb7e53 Pass sink metadata to Bluetooth
When just microphone is enabled, i.e. for recording audio, we will
receive just sink metadata update.

Bug: 150670922
Change-Id: I795385d19e64ec5c6bc0a8549beda52da27d25a1
2021-12-06 22:07:06 +01:00
Treehugger Robot
c4718b793c Merge "Fix the integration issue for HAL 2.2" 2021-11-12 12:53:17 +00:00