summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--bluetooth/audio/aidl/aidl_api/android.hardware.bluetooth.audio/current/android/hardware/bluetooth/audio/IBluetoothAudioProvider.aidl2
-rw-r--r--bluetooth/audio/aidl/android/hardware/bluetooth/audio/IBluetoothAudioProvider.aidl7
-rw-r--r--bluetooth/audio/aidl/default/A2dpOffloadAudioProvider.cpp9
-rw-r--r--bluetooth/audio/aidl/default/A2dpOffloadAudioProvider.h4
-rw-r--r--bluetooth/audio/aidl/default/A2dpSoftwareAudioProvider.cpp9
-rw-r--r--bluetooth/audio/aidl/default/A2dpSoftwareAudioProvider.h4
-rw-r--r--bluetooth/audio/aidl/default/BluetoothAudioProvider.cpp6
-rw-r--r--bluetooth/audio/aidl/default/BluetoothAudioProvider.h7
-rw-r--r--bluetooth/audio/aidl/default/HearingAidAudioProvider.cpp9
-rw-r--r--bluetooth/audio/aidl/default/HearingAidAudioProvider.h4
-rw-r--r--bluetooth/audio/aidl/default/LeAudioOffloadAudioProvider.cpp9
-rw-r--r--bluetooth/audio/aidl/default/LeAudioOffloadAudioProvider.h4
-rw-r--r--bluetooth/audio/aidl/default/LeAudioSoftwareAudioProvider.cpp9
-rw-r--r--bluetooth/audio/aidl/default/LeAudioSoftwareAudioProvider.h4
-rw-r--r--bluetooth/audio/aidl/vts/VtsHalBluetoothAudioTargetTest.cpp43
15 files changed, 88 insertions, 42 deletions
diff --git a/bluetooth/audio/aidl/aidl_api/android.hardware.bluetooth.audio/current/android/hardware/bluetooth/audio/IBluetoothAudioProvider.aidl b/bluetooth/audio/aidl/aidl_api/android.hardware.bluetooth.audio/current/android/hardware/bluetooth/audio/IBluetoothAudioProvider.aidl
index 6e0bd9855b..267af0f4b4 100644
--- a/bluetooth/audio/aidl/aidl_api/android.hardware.bluetooth.audio/current/android/hardware/bluetooth/audio/IBluetoothAudioProvider.aidl
+++ b/bluetooth/audio/aidl/aidl_api/android.hardware.bluetooth.audio/current/android/hardware/bluetooth/audio/IBluetoothAudioProvider.aidl
@@ -35,7 +35,7 @@ package android.hardware.bluetooth.audio;
@VintfStability
interface IBluetoothAudioProvider {
void endSession();
- android.hardware.common.fmq.MQDescriptor<byte,android.hardware.common.fmq.SynchronizedReadWrite> startSession(in android.hardware.bluetooth.audio.IBluetoothAudioPort hostIf, in android.hardware.bluetooth.audio.AudioConfiguration audioConfig);
+ android.hardware.common.fmq.MQDescriptor<byte,android.hardware.common.fmq.SynchronizedReadWrite> startSession(in android.hardware.bluetooth.audio.IBluetoothAudioPort hostIf, in android.hardware.bluetooth.audio.AudioConfiguration audioConfig, in android.hardware.bluetooth.audio.LatencyMode[] supportedLatencyModes);
void streamStarted(in android.hardware.bluetooth.audio.BluetoothAudioStatus status);
void streamSuspended(in android.hardware.bluetooth.audio.BluetoothAudioStatus status);
void updateAudioConfiguration(in android.hardware.bluetooth.audio.AudioConfiguration audioConfig);
diff --git a/bluetooth/audio/aidl/android/hardware/bluetooth/audio/IBluetoothAudioProvider.aidl b/bluetooth/audio/aidl/android/hardware/bluetooth/audio/IBluetoothAudioProvider.aidl
index ca6f691d91..d5c051e646 100644
--- a/bluetooth/audio/aidl/android/hardware/bluetooth/audio/IBluetoothAudioProvider.aidl
+++ b/bluetooth/audio/aidl/android/hardware/bluetooth/audio/IBluetoothAudioProvider.aidl
@@ -19,6 +19,7 @@ package android.hardware.bluetooth.audio;
import android.hardware.bluetooth.audio.AudioConfiguration;
import android.hardware.bluetooth.audio.BluetoothAudioStatus;
import android.hardware.bluetooth.audio.IBluetoothAudioPort;
+import android.hardware.bluetooth.audio.LatencyMode;
import android.hardware.common.fmq.MQDescriptor;
import android.hardware.common.fmq.SynchronizedReadWrite;
@@ -50,6 +51,8 @@ interface IBluetoothAudioProvider {
* device. The PCM parameters are set if software based encoding,
* otherwise the correct codec configuration is used for hardware
* encoding.
+ * @param supportedLatencyModes latency modes supported by the active
+ * remote device
*
* @return The fast message queue for audio data from/to this
* provider. Audio data will be in PCM format as specified by the
@@ -57,8 +60,8 @@ interface IBluetoothAudioProvider {
* from/to hardware or on failure
*/
MQDescriptor<byte, SynchronizedReadWrite> startSession(
- in IBluetoothAudioPort hostIf, in AudioConfiguration audioConfig);
-
+ in IBluetoothAudioPort hostIf, in AudioConfiguration audioConfig,
+ in LatencyMode[] supportedLatencyModes);
/**
* Callback for IBluetoothAudioPort.startStream()
*
diff --git a/bluetooth/audio/aidl/default/A2dpOffloadAudioProvider.cpp b/bluetooth/audio/aidl/default/A2dpOffloadAudioProvider.cpp
index fc8a911145..866776e7bf 100644
--- a/bluetooth/audio/aidl/default/A2dpOffloadAudioProvider.cpp
+++ b/bluetooth/audio/aidl/default/A2dpOffloadAudioProvider.cpp
@@ -38,7 +38,10 @@ bool A2dpOffloadAudioProvider::isValid(const SessionType& session_type) {
ndk::ScopedAStatus A2dpOffloadAudioProvider::startSession(
const std::shared_ptr<IBluetoothAudioPort>& host_if,
- const AudioConfiguration& audio_config, DataMQDesc* _aidl_return) {
+ const AudioConfiguration& audio_config,
+ const std::vector<LatencyMode>& latency_modes,
+ DataMQDesc* _aidl_return) {
+ latency_modes_ = latency_modes;
if (audio_config.getTag() != AudioConfiguration::a2dpConfig) {
LOG(WARNING) << __func__ << " - Invalid Audio Configuration="
<< audio_config.toString();
@@ -52,8 +55,8 @@ ndk::ScopedAStatus A2dpOffloadAudioProvider::startSession(
*_aidl_return = DataMQDesc();
return ndk::ScopedAStatus::fromExceptionCode(EX_ILLEGAL_ARGUMENT);
}
- return BluetoothAudioProvider::startSession(host_if, audio_config,
- _aidl_return);
+ return BluetoothAudioProvider::startSession(
+ host_if, audio_config, latency_modes, _aidl_return);
}
ndk::ScopedAStatus A2dpOffloadAudioProvider::onSessionReady(
diff --git a/bluetooth/audio/aidl/default/A2dpOffloadAudioProvider.h b/bluetooth/audio/aidl/default/A2dpOffloadAudioProvider.h
index 5934f5b32d..4621e8530f 100644
--- a/bluetooth/audio/aidl/default/A2dpOffloadAudioProvider.h
+++ b/bluetooth/audio/aidl/default/A2dpOffloadAudioProvider.h
@@ -32,7 +32,9 @@ class A2dpOffloadAudioProvider : public BluetoothAudioProvider {
ndk::ScopedAStatus startSession(
const std::shared_ptr<IBluetoothAudioPort>& host_if,
- const AudioConfiguration& audio_config, DataMQDesc* _aidl_return);
+ const AudioConfiguration& audio_config,
+ const std::vector<LatencyMode>& latency_modes,
+ DataMQDesc* _aidl_return);
private:
ndk::ScopedAStatus onSessionReady(DataMQDesc* _aidl_return) override;
diff --git a/bluetooth/audio/aidl/default/A2dpSoftwareAudioProvider.cpp b/bluetooth/audio/aidl/default/A2dpSoftwareAudioProvider.cpp
index 5a413e07a8..d2f58f345b 100644
--- a/bluetooth/audio/aidl/default/A2dpSoftwareAudioProvider.cpp
+++ b/bluetooth/audio/aidl/default/A2dpSoftwareAudioProvider.cpp
@@ -61,7 +61,10 @@ bool A2dpSoftwareAudioProvider::isValid(const SessionType& sessionType) {
ndk::ScopedAStatus A2dpSoftwareAudioProvider::startSession(
const std::shared_ptr<IBluetoothAudioPort>& host_if,
- const AudioConfiguration& audio_config, DataMQDesc* _aidl_return) {
+ const AudioConfiguration& audio_config,
+ const std::vector<LatencyMode>& latency_modes,
+ DataMQDesc* _aidl_return) {
+ latency_modes_ = latency_modes;
if (audio_config.getTag() != AudioConfiguration::pcmConfig) {
LOG(WARNING) << __func__ << " - Invalid Audio Configuration="
<< audio_config.toString();
@@ -77,8 +80,8 @@ ndk::ScopedAStatus A2dpSoftwareAudioProvider::startSession(
return ndk::ScopedAStatus::fromExceptionCode(EX_ILLEGAL_ARGUMENT);
}
- return BluetoothAudioProvider::startSession(host_if, audio_config,
- _aidl_return);
+ return BluetoothAudioProvider::startSession(
+ host_if, audio_config, latency_modes, _aidl_return);
}
ndk::ScopedAStatus A2dpSoftwareAudioProvider::onSessionReady(
diff --git a/bluetooth/audio/aidl/default/A2dpSoftwareAudioProvider.h b/bluetooth/audio/aidl/default/A2dpSoftwareAudioProvider.h
index 3bc0a135dd..10f533ab20 100644
--- a/bluetooth/audio/aidl/default/A2dpSoftwareAudioProvider.h
+++ b/bluetooth/audio/aidl/default/A2dpSoftwareAudioProvider.h
@@ -32,7 +32,9 @@ class A2dpSoftwareAudioProvider : public BluetoothAudioProvider {
ndk::ScopedAStatus startSession(
const std::shared_ptr<IBluetoothAudioPort>& host_if,
- const AudioConfiguration& audio_config, DataMQDesc* _aidl_return);
+ const AudioConfiguration& audio_config,
+ const std::vector<LatencyMode>& latency_modes,
+ DataMQDesc* _aidl_return);
private:
// audio data queue for software encoding
diff --git a/bluetooth/audio/aidl/default/BluetoothAudioProvider.cpp b/bluetooth/audio/aidl/default/BluetoothAudioProvider.cpp
index 8090d265a6..0dd814828c 100644
--- a/bluetooth/audio/aidl/default/BluetoothAudioProvider.cpp
+++ b/bluetooth/audio/aidl/default/BluetoothAudioProvider.cpp
@@ -34,11 +34,15 @@ BluetoothAudioProvider::BluetoothAudioProvider() {
ndk::ScopedAStatus BluetoothAudioProvider::startSession(
const std::shared_ptr<IBluetoothAudioPort>& host_if,
- const AudioConfiguration& audio_config, DataMQDesc* _aidl_return) {
+ const AudioConfiguration& audio_config,
+ const std::vector<LatencyMode>& latencyModes,
+ DataMQDesc* _aidl_return) {
if (host_if == nullptr) {
*_aidl_return = DataMQDesc();
return ndk::ScopedAStatus::fromExceptionCode(EX_ILLEGAL_ARGUMENT);
}
+
+ latency_modes_ = latencyModes;
audio_config_ = std::make_unique<AudioConfiguration>(audio_config);
stack_iface_ = host_if;
diff --git a/bluetooth/audio/aidl/default/BluetoothAudioProvider.h b/bluetooth/audio/aidl/default/BluetoothAudioProvider.h
index 393aaba7b6..75794e85c9 100644
--- a/bluetooth/audio/aidl/default/BluetoothAudioProvider.h
+++ b/bluetooth/audio/aidl/default/BluetoothAudioProvider.h
@@ -16,6 +16,7 @@
#pragma once
#include <aidl/android/hardware/bluetooth/audio/BnBluetoothAudioProvider.h>
+#include <aidl/android/hardware/bluetooth/audio/LatencyMode.h>
#include <aidl/android/hardware/bluetooth/audio/SessionType.h>
#include <fmq/AidlMessageQueue.h>
@@ -37,10 +38,11 @@ namespace audio {
class BluetoothAudioProvider : public BnBluetoothAudioProvider {
public:
BluetoothAudioProvider();
-
ndk::ScopedAStatus startSession(
const std::shared_ptr<IBluetoothAudioPort>& host_if,
- const AudioConfiguration& audio_config, DataMQDesc* _aidl_return);
+ const AudioConfiguration& audio_config,
+ const std::vector<LatencyMode>& latency_modes,
+ DataMQDesc* _aidl_return);
ndk::ScopedAStatus endSession();
ndk::ScopedAStatus streamStarted(BluetoothAudioStatus status);
ndk::ScopedAStatus streamSuspended(BluetoothAudioStatus status);
@@ -59,6 +61,7 @@ class BluetoothAudioProvider : public BnBluetoothAudioProvider {
std::shared_ptr<IBluetoothAudioPort> stack_iface_;
std::unique_ptr<AudioConfiguration> audio_config_ = nullptr;
SessionType session_type_;
+ std::vector<LatencyMode> latency_modes_;
};
} // namespace audio
diff --git a/bluetooth/audio/aidl/default/HearingAidAudioProvider.cpp b/bluetooth/audio/aidl/default/HearingAidAudioProvider.cpp
index 66ce93bd35..c754849a0c 100644
--- a/bluetooth/audio/aidl/default/HearingAidAudioProvider.cpp
+++ b/bluetooth/audio/aidl/default/HearingAidAudioProvider.cpp
@@ -56,7 +56,10 @@ bool HearingAidAudioProvider::isValid(const SessionType& sessionType) {
ndk::ScopedAStatus HearingAidAudioProvider::startSession(
const std::shared_ptr<IBluetoothAudioPort>& host_if,
- const AudioConfiguration& audio_config, DataMQDesc* _aidl_return) {
+ const AudioConfiguration& audio_config,
+ const std::vector<LatencyMode>& latency_modes,
+ DataMQDesc* _aidl_return) {
+ latency_modes_ = latency_modes;
if (audio_config.getTag() != AudioConfiguration::pcmConfig) {
LOG(WARNING) << __func__ << " - Invalid Audio Configuration="
<< audio_config.toString();
@@ -71,8 +74,8 @@ ndk::ScopedAStatus HearingAidAudioProvider::startSession(
return ndk::ScopedAStatus::fromExceptionCode(EX_ILLEGAL_ARGUMENT);
}
- return BluetoothAudioProvider::startSession(host_if, audio_config,
- _aidl_return);
+ return BluetoothAudioProvider::startSession(
+ host_if, audio_config, latency_modes, _aidl_return);
}
ndk::ScopedAStatus HearingAidAudioProvider::onSessionReady(
diff --git a/bluetooth/audio/aidl/default/HearingAidAudioProvider.h b/bluetooth/audio/aidl/default/HearingAidAudioProvider.h
index a7e19e982d..a158c865a6 100644
--- a/bluetooth/audio/aidl/default/HearingAidAudioProvider.h
+++ b/bluetooth/audio/aidl/default/HearingAidAudioProvider.h
@@ -32,7 +32,9 @@ class HearingAidAudioProvider : public BluetoothAudioProvider {
ndk::ScopedAStatus startSession(
const std::shared_ptr<IBluetoothAudioPort>& host_if,
- const AudioConfiguration& audio_config, DataMQDesc* _aidl_return);
+ const AudioConfiguration& audio_config,
+ const std::vector<LatencyMode>& latency_modes,
+ DataMQDesc* _aidl_return);
private:
// audio data queue for software encoding
diff --git a/bluetooth/audio/aidl/default/LeAudioOffloadAudioProvider.cpp b/bluetooth/audio/aidl/default/LeAudioOffloadAudioProvider.cpp
index 7a28513157..1a3c658b79 100644
--- a/bluetooth/audio/aidl/default/LeAudioOffloadAudioProvider.cpp
+++ b/bluetooth/audio/aidl/default/LeAudioOffloadAudioProvider.cpp
@@ -53,7 +53,10 @@ bool LeAudioOffloadAudioProvider::isValid(const SessionType& sessionType) {
ndk::ScopedAStatus LeAudioOffloadAudioProvider::startSession(
const std::shared_ptr<IBluetoothAudioPort>& host_if,
- const AudioConfiguration& audio_config, DataMQDesc* _aidl_return) {
+ const AudioConfiguration& audio_config,
+ const std::vector<LatencyMode>& latency_modes,
+ DataMQDesc* _aidl_return) {
+ latency_modes_ = latency_modes;
if (audio_config.getTag() != AudioConfiguration::leAudioConfig) {
LOG(WARNING) << __func__ << " - Invalid Audio Configuration="
<< audio_config.toString();
@@ -70,8 +73,8 @@ ndk::ScopedAStatus LeAudioOffloadAudioProvider::startSession(
return ndk::ScopedAStatus::fromExceptionCode(EX_ILLEGAL_ARGUMENT);
}
- return BluetoothAudioProvider::startSession(host_if, audio_config,
- _aidl_return);
+ return BluetoothAudioProvider::startSession(
+ host_if, audio_config, latency_modes, _aidl_return);
}
ndk::ScopedAStatus LeAudioOffloadAudioProvider::onSessionReady(
diff --git a/bluetooth/audio/aidl/default/LeAudioOffloadAudioProvider.h b/bluetooth/audio/aidl/default/LeAudioOffloadAudioProvider.h
index 6509a9e2b4..614c794fa3 100644
--- a/bluetooth/audio/aidl/default/LeAudioOffloadAudioProvider.h
+++ b/bluetooth/audio/aidl/default/LeAudioOffloadAudioProvider.h
@@ -32,7 +32,9 @@ class LeAudioOffloadAudioProvider : public BluetoothAudioProvider {
ndk::ScopedAStatus startSession(
const std::shared_ptr<IBluetoothAudioPort>& host_if,
- const AudioConfiguration& audio_config, DataMQDesc* _aidl_return);
+ const AudioConfiguration& audio_config,
+ const std::vector<LatencyMode>& latency_modes,
+ DataMQDesc* _aidl_return);
private:
ndk::ScopedAStatus onSessionReady(DataMQDesc* _aidl_return) override;
diff --git a/bluetooth/audio/aidl/default/LeAudioSoftwareAudioProvider.cpp b/bluetooth/audio/aidl/default/LeAudioSoftwareAudioProvider.cpp
index 0fe205efe1..1f64b43920 100644
--- a/bluetooth/audio/aidl/default/LeAudioSoftwareAudioProvider.cpp
+++ b/bluetooth/audio/aidl/default/LeAudioSoftwareAudioProvider.cpp
@@ -69,7 +69,10 @@ bool LeAudioSoftwareAudioProvider::isValid(const SessionType& sessionType) {
ndk::ScopedAStatus LeAudioSoftwareAudioProvider::startSession(
const std::shared_ptr<IBluetoothAudioPort>& host_if,
- const AudioConfiguration& audio_config, DataMQDesc* _aidl_return) {
+ const AudioConfiguration& audio_config,
+ const std::vector<LatencyMode>& latency_modes,
+ DataMQDesc* _aidl_return) {
+ latency_modes_ = latency_modes;
if (audio_config.getTag() != AudioConfiguration::pcmConfig) {
LOG(WARNING) << __func__ << " - Invalid Audio Configuration="
<< audio_config.toString();
@@ -119,8 +122,8 @@ ndk::ScopedAStatus LeAudioSoftwareAudioProvider::startSession(
}
data_mq_ = std::move(temp_data_mq);
- return BluetoothAudioProvider::startSession(host_if, audio_config,
- _aidl_return);
+ return BluetoothAudioProvider::startSession(
+ host_if, audio_config, latency_modes, _aidl_return);
}
ndk::ScopedAStatus LeAudioSoftwareAudioProvider::onSessionReady(
diff --git a/bluetooth/audio/aidl/default/LeAudioSoftwareAudioProvider.h b/bluetooth/audio/aidl/default/LeAudioSoftwareAudioProvider.h
index ace4bff6a8..21243ff9c3 100644
--- a/bluetooth/audio/aidl/default/LeAudioSoftwareAudioProvider.h
+++ b/bluetooth/audio/aidl/default/LeAudioSoftwareAudioProvider.h
@@ -32,7 +32,9 @@ class LeAudioSoftwareAudioProvider : public BluetoothAudioProvider {
ndk::ScopedAStatus startSession(
const std::shared_ptr<IBluetoothAudioPort>& host_if,
- const AudioConfiguration& audio_config, DataMQDesc* _aidl_return);
+ const AudioConfiguration& audio_config,
+ const std::vector<LatencyMode>& latency_modes,
+ DataMQDesc* _aidl_return);
private:
// audio data queue for software encoding
diff --git a/bluetooth/audio/aidl/vts/VtsHalBluetoothAudioTargetTest.cpp b/bluetooth/audio/aidl/vts/VtsHalBluetoothAudioTargetTest.cpp
index 307403b451..4032407a93 100644
--- a/bluetooth/audio/aidl/vts/VtsHalBluetoothAudioTargetTest.cpp
+++ b/bluetooth/audio/aidl/vts/VtsHalBluetoothAudioTargetTest.cpp
@@ -86,7 +86,7 @@ static constexpr CodecType a2dp_codec_types[] = {
CodecType::UNKNOWN, CodecType::SBC, CodecType::AAC,
CodecType::APTX, CodecType::APTX_HD, CodecType::LDAC,
CodecType::LC3, CodecType::APTX_ADAPTIVE};
-
+static std::vector<LatencyMode> latency_modes = {LatencyMode::FREE};
// Helpers
template <typename T>
@@ -379,7 +379,8 @@ TEST_P(BluetoothAudioProviderA2dpSoftwareAidl,
bool is_codec_config_valid = IsPcmConfigSupported(pcm_config);
DataMQDesc mq_desc;
auto aidl_retval = audio_provider_->startSession(
- audio_port_, AudioConfiguration(pcm_config), &mq_desc);
+ audio_port_, AudioConfiguration(pcm_config), latency_modes,
+ &mq_desc);
DataMQ data_mq(mq_desc);
EXPECT_EQ(aidl_retval.isOk(), is_codec_config_valid);
@@ -671,7 +672,7 @@ TEST_P(BluetoothAudioProviderA2dpHardwareAidl,
copy_codec_specific(codec_config.config, codec_specific);
DataMQDesc mq_desc;
auto aidl_retval = audio_provider_->startSession(
- audio_port_, AudioConfiguration(codec_config), &mq_desc);
+ audio_port_, AudioConfiguration(codec_config), latency_modes, &mq_desc);
ASSERT_TRUE(aidl_retval.isOk());
EXPECT_TRUE(audio_provider_->endSession().isOk());
@@ -701,7 +702,7 @@ TEST_P(BluetoothAudioProviderA2dpHardwareAidl,
copy_codec_specific(codec_config.config, codec_specific);
DataMQDesc mq_desc;
auto aidl_retval = audio_provider_->startSession(
- audio_port_, AudioConfiguration(codec_config), &mq_desc);
+ audio_port_, AudioConfiguration(codec_config), latency_modes, &mq_desc);
ASSERT_TRUE(aidl_retval.isOk());
EXPECT_TRUE(audio_provider_->endSession().isOk());
@@ -731,7 +732,7 @@ TEST_P(BluetoothAudioProviderA2dpHardwareAidl,
copy_codec_specific(codec_config.config, codec_specific);
DataMQDesc mq_desc;
auto aidl_retval = audio_provider_->startSession(
- audio_port_, AudioConfiguration(codec_config), &mq_desc);
+ audio_port_, AudioConfiguration(codec_config), latency_modes, &mq_desc);
ASSERT_TRUE(aidl_retval.isOk());
EXPECT_TRUE(audio_provider_->endSession().isOk());
@@ -761,7 +762,7 @@ TEST_P(BluetoothAudioProviderA2dpHardwareAidl,
copy_codec_specific(codec_config.config, codec_specific);
DataMQDesc mq_desc;
auto aidl_retval = audio_provider_->startSession(
- audio_port_, AudioConfiguration(codec_config), &mq_desc);
+ audio_port_, AudioConfiguration(codec_config), latency_modes, &mq_desc);
ASSERT_TRUE(aidl_retval.isOk());
EXPECT_TRUE(audio_provider_->endSession().isOk());
@@ -795,7 +796,8 @@ TEST_P(BluetoothAudioProviderA2dpHardwareAidl,
copy_codec_specific(codec_config.config, codec_specific);
DataMQDesc mq_desc;
auto aidl_retval = audio_provider_->startSession(
- audio_port_, AudioConfiguration(codec_config), &mq_desc);
+ audio_port_, AudioConfiguration(codec_config), latency_modes,
+ &mq_desc);
ASSERT_TRUE(aidl_retval.isOk());
EXPECT_TRUE(audio_provider_->endSession().isOk());
@@ -856,7 +858,8 @@ TEST_P(BluetoothAudioProviderA2dpHardwareAidl,
copy_codec_specific(codec_config.config, codec_specific);
DataMQDesc mq_desc;
auto aidl_retval = audio_provider_->startSession(
- audio_port_, AudioConfiguration(codec_config), &mq_desc);
+ audio_port_, AudioConfiguration(codec_config), latency_modes,
+ &mq_desc);
// AIDL call should fail on invalid codec
ASSERT_FALSE(aidl_retval.isOk());
@@ -915,7 +918,8 @@ TEST_P(BluetoothAudioProviderHearingAidSoftwareAidl,
bool is_codec_config_valid = IsPcmConfigSupported(pcm_config);
DataMQDesc mq_desc;
auto aidl_retval = audio_provider_->startSession(
- audio_port_, AudioConfiguration(pcm_config), &mq_desc);
+ audio_port_, AudioConfiguration(pcm_config), latency_modes,
+ &mq_desc);
DataMQ data_mq(mq_desc);
EXPECT_EQ(aidl_retval.isOk(), is_codec_config_valid);
@@ -986,7 +990,8 @@ TEST_P(BluetoothAudioProviderLeAudioOutputSoftwareAidl,
bool is_codec_config_valid = IsPcmConfigSupported(pcm_config);
DataMQDesc mq_desc;
auto aidl_retval = audio_provider_->startSession(
- audio_port_, AudioConfiguration(pcm_config), &mq_desc);
+ audio_port_, AudioConfiguration(pcm_config), latency_modes,
+ &mq_desc);
DataMQ data_mq(mq_desc);
EXPECT_EQ(aidl_retval.isOk(), is_codec_config_valid);
@@ -1057,7 +1062,8 @@ TEST_P(BluetoothAudioProviderLeAudioInputSoftwareAidl,
bool is_codec_config_valid = IsPcmConfigSupported(pcm_config);
DataMQDesc mq_desc;
auto aidl_retval = audio_provider_->startSession(
- audio_port_, AudioConfiguration(pcm_config), &mq_desc);
+ audio_port_, AudioConfiguration(pcm_config), latency_modes,
+ &mq_desc);
DataMQ data_mq(mq_desc);
EXPECT_EQ(aidl_retval.isOk(), is_codec_config_valid);
@@ -1190,7 +1196,8 @@ TEST_P(BluetoothAudioProviderLeAudioOutputHardwareAidl,
.set<LeAudioCodecConfiguration::lc3Config>(lc3_config);
DataMQDesc mq_desc;
auto aidl_retval = audio_provider_->startSession(
- audio_port_, AudioConfiguration(le_audio_config), &mq_desc);
+ audio_port_, AudioConfiguration(le_audio_config), latency_modes,
+ &mq_desc);
ASSERT_TRUE(aidl_retval.isOk());
EXPECT_TRUE(audio_provider_->endSession().isOk());
@@ -1222,7 +1229,8 @@ TEST_P(BluetoothAudioProviderLeAudioOutputHardwareAidl,
.set<LeAudioCodecConfiguration::lc3Config>(lc3_config);
DataMQDesc mq_desc;
auto aidl_retval = audio_provider_->startSession(
- audio_port_, AudioConfiguration(le_audio_config), &mq_desc);
+ audio_port_, AudioConfiguration(le_audio_config), latency_modes,
+ &mq_desc);
// AIDL call should fail on invalid codec
ASSERT_FALSE(aidl_retval.isOk());
@@ -1298,7 +1306,8 @@ TEST_P(BluetoothAudioProviderLeAudioInputHardwareAidl,
.set<LeAudioCodecConfiguration::lc3Config>(lc3_config);
DataMQDesc mq_desc;
auto aidl_retval = audio_provider_->startSession(
- audio_port_, AudioConfiguration(le_audio_config), &mq_desc);
+ audio_port_, AudioConfiguration(le_audio_config), latency_modes,
+ &mq_desc);
ASSERT_TRUE(aidl_retval.isOk());
EXPECT_TRUE(audio_provider_->endSession().isOk());
@@ -1331,7 +1340,8 @@ TEST_P(BluetoothAudioProviderLeAudioInputHardwareAidl,
DataMQDesc mq_desc;
auto aidl_retval = audio_provider_->startSession(
- audio_port_, AudioConfiguration(le_audio_config), &mq_desc);
+ audio_port_, AudioConfiguration(le_audio_config), latency_modes,
+ &mq_desc);
// AIDL call should fail on invalid codec
ASSERT_FALSE(aidl_retval.isOk());
@@ -1398,7 +1408,8 @@ TEST_P(BluetoothAudioProviderLeAudioBroadcastSoftwareAidl,
bool is_codec_config_valid = IsPcmConfigSupported(pcm_config);
DataMQDesc mq_desc;
auto aidl_retval = audio_provider_->startSession(
- audio_port_, AudioConfiguration(pcm_config), &mq_desc);
+ audio_port_, AudioConfiguration(pcm_config), latency_modes,
+ &mq_desc);
DataMQ data_mq(mq_desc);
EXPECT_EQ(aidl_retval.isOk(), is_codec_config_valid);