Merge "bluetooth.audio@2.1: add handle IsSessionReady for LE offload encoder" am: 05e6b870a4
Original change: https://android-review.googlesource.com/c/platform/hardware/interfaces/+/1729161 Change-Id: I224390449b7aadced9c436e2081b688680dfa03d
This commit is contained in:
commit
b358dd9da1
3 changed files with 18 additions and 2 deletions
|
@ -35,7 +35,7 @@ class BluetoothAudioSessionControl_2_1 {
|
|||
std::shared_ptr<BluetoothAudioSession_2_1> session_ptr =
|
||||
BluetoothAudioSessionInstance_2_1::GetSessionInstance(session_type);
|
||||
if (session_ptr != nullptr) {
|
||||
return session_ptr->GetAudioSession()->IsSessionReady();
|
||||
return session_ptr->IsSessionReady();
|
||||
}
|
||||
return false;
|
||||
}
|
||||
|
|
|
@ -60,6 +60,18 @@ BluetoothAudioSession_2_1::BluetoothAudioSession_2_1(
|
|||
}
|
||||
}
|
||||
|
||||
bool BluetoothAudioSession_2_1::IsSessionReady() {
|
||||
LOG(WARNING) << __func__ << " session_type: " << toString(session_type_2_1_);
|
||||
|
||||
if (session_type_2_1_ !=
|
||||
SessionType_2_1::LE_AUDIO_HARDWARE_OFFLOAD_ENCODING_DATAPATH) {
|
||||
return audio_session->IsSessionReady();
|
||||
}
|
||||
|
||||
std::lock_guard<std::recursive_mutex> guard(audio_session->mutex_);
|
||||
return audio_session->stack_iface_ != nullptr;
|
||||
}
|
||||
|
||||
std::shared_ptr<BluetoothAudioSession>
|
||||
BluetoothAudioSession_2_1::GetAudioSession() {
|
||||
return audio_session;
|
||||
|
@ -70,7 +82,7 @@ BluetoothAudioSession_2_1::GetAudioSession() {
|
|||
const ::android::hardware::bluetooth::audio::V2_1::AudioConfiguration
|
||||
BluetoothAudioSession_2_1::GetAudioConfig() {
|
||||
std::lock_guard<std::recursive_mutex> guard(audio_session->mutex_);
|
||||
if (audio_session->IsSessionReady()) {
|
||||
if (IsSessionReady()) {
|
||||
// If session is unknown it means it should be 2.0 type
|
||||
if (session_type_2_1_ != SessionType_2_1::UNKNOWN)
|
||||
return audio_config_2_1_;
|
||||
|
|
|
@ -50,6 +50,10 @@ class BluetoothAudioSession_2_1 {
|
|||
const ::android::hardware::bluetooth::audio::V2_1::SessionType&
|
||||
session_type);
|
||||
|
||||
// The function helps to check if this session is ready or not
|
||||
// @return: true if the Bluetooth stack has started the specified session
|
||||
bool IsSessionReady();
|
||||
|
||||
std::shared_ptr<BluetoothAudioSession> GetAudioSession();
|
||||
|
||||
// The report function is used to report that the Bluetooth stack has started
|
||||
|
|
Loading…
Reference in a new issue