summaryrefslogtreecommitdiff
path: root/bluetooth/audio/aidl/default/LeAudioOffloadAudioProvider.cpp
diff options
context:
space:
mode:
authorAlice Kuo <aliceypkuo@google.com>2022-07-10 23:59:18 +0800
committerAlice Kuo <aliceypkuo@google.com>2022-07-13 12:40:26 +0800
commitbd915c129c110de3b015059f51222315cea101cc (patch)
treecc8177a9f19bd33d8262d8766104e5fc52095ab4 /bluetooth/audio/aidl/default/LeAudioOffloadAudioProvider.cpp
parent68768886bb2cae581ede1c3e23cd29c1789fadfe (diff)
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 Merged-In: I60b1b506051873f6d942f2febace6562634fc12a (cherry picked from commit ee398a93f564e515051932dfd3801081426b1ae8)
Diffstat (limited to 'bluetooth/audio/aidl/default/LeAudioOffloadAudioProvider.cpp')
-rw-r--r--bluetooth/audio/aidl/default/LeAudioOffloadAudioProvider.cpp19
1 files changed, 9 insertions, 10 deletions
diff --git a/bluetooth/audio/aidl/default/LeAudioOffloadAudioProvider.cpp b/bluetooth/audio/aidl/default/LeAudioOffloadAudioProvider.cpp
index 0e22e44490..7f610ef3d0 100644
--- a/bluetooth/audio/aidl/default/LeAudioOffloadAudioProvider.cpp
+++ b/bluetooth/audio/aidl/default/LeAudioOffloadAudioProvider.cpp
@@ -55,21 +55,20 @@ ndk::ScopedAStatus LeAudioOffloadAudioProvider::startSession(
const std::shared_ptr<IBluetoothAudioPort>& host_if,
const AudioConfiguration& audio_config,
const std::vector<LatencyMode>& latency_modes, DataMQDesc* _aidl_return) {
- if (audio_config.getTag() != AudioConfiguration::leAudioConfig) {
+ if (session_type_ ==
+ SessionType::LE_AUDIO_BROADCAST_HARDWARE_OFFLOAD_ENCODING_DATAPATH) {
+ if (audio_config.getTag() != AudioConfiguration::leAudioBroadcastConfig) {
+ LOG(WARNING) << __func__ << " - Invalid Audio Configuration="
+ << audio_config.toString();
+ *_aidl_return = DataMQDesc();
+ return ndk::ScopedAStatus::fromExceptionCode(EX_ILLEGAL_ARGUMENT);
+ }
+ } else if (audio_config.getTag() != AudioConfiguration::leAudioConfig) {
LOG(WARNING) << __func__ << " - Invalid Audio Configuration="
<< audio_config.toString();
*_aidl_return = DataMQDesc();
return ndk::ScopedAStatus::fromExceptionCode(EX_ILLEGAL_ARGUMENT);
}
- const auto& le_audio_config =
- audio_config.get<AudioConfiguration::leAudioConfig>();
- if (!BluetoothAudioCodecs::IsOffloadLeAudioConfigurationValid(
- session_type_, le_audio_config)) {
- LOG(WARNING) << __func__ << " - Unsupported LC3 Offloaded Configuration="
- << le_audio_config.toString();
- *_aidl_return = DataMQDesc();
- return ndk::ScopedAStatus::fromExceptionCode(EX_ILLEGAL_ARGUMENT);
- }
return BluetoothAudioProvider::startSession(
host_if, audio_config, latency_modes, _aidl_return);