Loading system/bta/le_audio/devices.cc +17 −17 Original line number Original line Diff line number Diff line Loading @@ -349,11 +349,11 @@ uint16_t LeAudioDeviceGroup::GetMaxTransportLatencyMtos(void) { return find_max_transport_latency(this, types::kLeAudioDirectionSink); return find_max_transport_latency(this, types::kLeAudioDirectionSink); } } uint16_t LeAudioDeviceGroup::GetTransportLatency(uint8_t direction) { uint32_t LeAudioDeviceGroup::GetTransportLatencyUs(uint8_t direction) { if (direction == types::kLeAudioDirectionSink) { if (direction == types::kLeAudioDirectionSink) { return transport_latency_mtos_; return transport_latency_mtos_us_; } else if (direction == types::kLeAudioDirectionSource) { } else if (direction == types::kLeAudioDirectionSource) { return transport_latency_stom_; return transport_latency_stom_us_ ; } else { } else { LOG(ERROR) << __func__ << ", invalid direction"; LOG(ERROR) << __func__ << ", invalid direction"; return 0; return 0; Loading @@ -361,33 +361,33 @@ uint16_t LeAudioDeviceGroup::GetTransportLatency(uint8_t direction) { } } void LeAudioDeviceGroup::SetTransportLatency(uint8_t direction, void LeAudioDeviceGroup::SetTransportLatency(uint8_t direction, uint16_t new_transport_latency) { uint32_t new_transport_latency_us) { uint16_t* transport_latency; uint32_t* transport_latency_us; if (direction == types::kLeAudioDirectionSink) { if (direction == types::kLeAudioDirectionSink) { transport_latency = &transport_latency_mtos_; transport_latency_us = &transport_latency_mtos_us_; } else if (direction == types::kLeAudioDirectionSource) { } else if (direction == types::kLeAudioDirectionSource) { transport_latency = &transport_latency_stom_; transport_latency_us = &transport_latency_stom_us_; } else { } else { LOG(ERROR) << __func__ << ", invalid direction"; LOG(ERROR) << __func__ << ", invalid direction"; return; return; } } if (*transport_latency == new_transport_latency) return; if (*transport_latency_us == new_transport_latency_us) return; if ((*transport_latency != 0) && if ((*transport_latency_us != 0) && (*transport_latency != new_transport_latency)) { (*transport_latency_us != new_transport_latency_us)) { LOG(WARNING) << __func__ << ", Different transport latency for group: " LOG(WARNING) << __func__ << ", Different transport latency for group: " << " old: " << static_cast<int>(*transport_latency) << " old: " << static_cast<int>(*transport_latency_us) << " [ms], new: " << static_cast<int>(new_transport_latency) << " [us], new: " << static_cast<int>(new_transport_latency_us) << " [ms]"; << " [us]"; return; return; } } LOG(INFO) << __func__ << ", updated group " << static_cast<int>(group_id_) LOG(INFO) << __func__ << ", updated group " << static_cast<int>(group_id_) << " transport latency: " << static_cast<int>(new_transport_latency) << " transport latency: " << static_cast<int>(new_transport_latency_us) << " [ms]"; << " [us]"; *transport_latency = new_transport_latency; *transport_latency_us = new_transport_latency_us; } } uint8_t LeAudioDeviceGroup::GetPhyBitmask(uint8_t direction) { uint8_t LeAudioDeviceGroup::GetPhyBitmask(uint8_t direction) { Loading Loading @@ -487,7 +487,7 @@ uint16_t LeAudioDeviceGroup::GetRemoteDelay(uint8_t direction) { /* us to ms */ /* us to ms */ remote_delay_ms = presentation_delay / 1000; remote_delay_ms = presentation_delay / 1000; remote_delay_ms += GetTransportLatency(direction) / 1000; remote_delay_ms += GetTransportLatencyUs(direction) / 1000; return remote_delay_ms; return remote_delay_ms; } } Loading system/bta/le_audio/devices.h +6 −6 Original line number Original line Diff line number Diff line Loading @@ -193,8 +193,8 @@ class LeAudioDeviceGroup { : group_id_(group_id), : group_id_(group_id), cig_created_(false), cig_created_(false), audio_directions_(0), audio_directions_(0), transport_latency_mtos_(0), transport_latency_mtos_us_(0), transport_latency_stom_(0), transport_latency_stom_us_(0), active_context_type_(types::LeAudioContextType::UNINITIALIZED), active_context_type_(types::LeAudioContextType::UNINITIALIZED), target_state_(types::AseState::BTA_LE_AUDIO_ASE_STATE_IDLE), target_state_(types::AseState::BTA_LE_AUDIO_ASE_STATE_IDLE), current_state_(types::AseState::BTA_LE_AUDIO_ASE_STATE_IDLE), current_state_(types::AseState::BTA_LE_AUDIO_ASE_STATE_IDLE), Loading Loading @@ -238,7 +238,7 @@ class LeAudioDeviceGroup { uint8_t GetTargetLatency(void); uint8_t GetTargetLatency(void); uint16_t GetMaxTransportLatencyStom(void); uint16_t GetMaxTransportLatencyStom(void); uint16_t GetMaxTransportLatencyMtos(void); uint16_t GetMaxTransportLatencyMtos(void); void SetTransportLatency(uint8_t direction, uint16_t transport_latency); void SetTransportLatency(uint8_t direction, uint32_t transport_latency_us); uint8_t GetPhyBitmask(uint8_t direction); uint8_t GetPhyBitmask(uint8_t direction); uint8_t GetTargetPhy(uint8_t direction); uint8_t GetTargetPhy(uint8_t direction); bool GetPresentationDelay(uint32_t* delay, uint8_t direction); bool GetPresentationDelay(uint32_t* delay, uint8_t direction); Loading Loading @@ -273,8 +273,8 @@ class LeAudioDeviceGroup { void Dump(int fd); void Dump(int fd); private: private: uint16_t transport_latency_mtos_; uint32_t transport_latency_mtos_us_; uint16_t transport_latency_stom_; uint32_t transport_latency_stom_us_; const set_configurations::AudioSetConfiguration* const set_configurations::AudioSetConfiguration* FindFirstSupportedConfiguration(types::LeAudioContextType context_type); FindFirstSupportedConfiguration(types::LeAudioContextType context_type); Loading @@ -284,7 +284,7 @@ class LeAudioDeviceGroup { bool IsConfigurationSupported( bool IsConfigurationSupported( const set_configurations::AudioSetConfiguration* audio_set_configuration, const set_configurations::AudioSetConfiguration* audio_set_configuration, types::LeAudioContextType context_type); types::LeAudioContextType context_type); uint16_t GetTransportLatency(uint8_t direction); uint32_t GetTransportLatencyUs(uint8_t direction); /* Mask and table of currently supported contexts */ /* Mask and table of currently supported contexts */ types::LeAudioContextType active_context_type_; types::LeAudioContextType active_context_type_; Loading Loading
system/bta/le_audio/devices.cc +17 −17 Original line number Original line Diff line number Diff line Loading @@ -349,11 +349,11 @@ uint16_t LeAudioDeviceGroup::GetMaxTransportLatencyMtos(void) { return find_max_transport_latency(this, types::kLeAudioDirectionSink); return find_max_transport_latency(this, types::kLeAudioDirectionSink); } } uint16_t LeAudioDeviceGroup::GetTransportLatency(uint8_t direction) { uint32_t LeAudioDeviceGroup::GetTransportLatencyUs(uint8_t direction) { if (direction == types::kLeAudioDirectionSink) { if (direction == types::kLeAudioDirectionSink) { return transport_latency_mtos_; return transport_latency_mtos_us_; } else if (direction == types::kLeAudioDirectionSource) { } else if (direction == types::kLeAudioDirectionSource) { return transport_latency_stom_; return transport_latency_stom_us_ ; } else { } else { LOG(ERROR) << __func__ << ", invalid direction"; LOG(ERROR) << __func__ << ", invalid direction"; return 0; return 0; Loading @@ -361,33 +361,33 @@ uint16_t LeAudioDeviceGroup::GetTransportLatency(uint8_t direction) { } } void LeAudioDeviceGroup::SetTransportLatency(uint8_t direction, void LeAudioDeviceGroup::SetTransportLatency(uint8_t direction, uint16_t new_transport_latency) { uint32_t new_transport_latency_us) { uint16_t* transport_latency; uint32_t* transport_latency_us; if (direction == types::kLeAudioDirectionSink) { if (direction == types::kLeAudioDirectionSink) { transport_latency = &transport_latency_mtos_; transport_latency_us = &transport_latency_mtos_us_; } else if (direction == types::kLeAudioDirectionSource) { } else if (direction == types::kLeAudioDirectionSource) { transport_latency = &transport_latency_stom_; transport_latency_us = &transport_latency_stom_us_; } else { } else { LOG(ERROR) << __func__ << ", invalid direction"; LOG(ERROR) << __func__ << ", invalid direction"; return; return; } } if (*transport_latency == new_transport_latency) return; if (*transport_latency_us == new_transport_latency_us) return; if ((*transport_latency != 0) && if ((*transport_latency_us != 0) && (*transport_latency != new_transport_latency)) { (*transport_latency_us != new_transport_latency_us)) { LOG(WARNING) << __func__ << ", Different transport latency for group: " LOG(WARNING) << __func__ << ", Different transport latency for group: " << " old: " << static_cast<int>(*transport_latency) << " old: " << static_cast<int>(*transport_latency_us) << " [ms], new: " << static_cast<int>(new_transport_latency) << " [us], new: " << static_cast<int>(new_transport_latency_us) << " [ms]"; << " [us]"; return; return; } } LOG(INFO) << __func__ << ", updated group " << static_cast<int>(group_id_) LOG(INFO) << __func__ << ", updated group " << static_cast<int>(group_id_) << " transport latency: " << static_cast<int>(new_transport_latency) << " transport latency: " << static_cast<int>(new_transport_latency_us) << " [ms]"; << " [us]"; *transport_latency = new_transport_latency; *transport_latency_us = new_transport_latency_us; } } uint8_t LeAudioDeviceGroup::GetPhyBitmask(uint8_t direction) { uint8_t LeAudioDeviceGroup::GetPhyBitmask(uint8_t direction) { Loading Loading @@ -487,7 +487,7 @@ uint16_t LeAudioDeviceGroup::GetRemoteDelay(uint8_t direction) { /* us to ms */ /* us to ms */ remote_delay_ms = presentation_delay / 1000; remote_delay_ms = presentation_delay / 1000; remote_delay_ms += GetTransportLatency(direction) / 1000; remote_delay_ms += GetTransportLatencyUs(direction) / 1000; return remote_delay_ms; return remote_delay_ms; } } Loading
system/bta/le_audio/devices.h +6 −6 Original line number Original line Diff line number Diff line Loading @@ -193,8 +193,8 @@ class LeAudioDeviceGroup { : group_id_(group_id), : group_id_(group_id), cig_created_(false), cig_created_(false), audio_directions_(0), audio_directions_(0), transport_latency_mtos_(0), transport_latency_mtos_us_(0), transport_latency_stom_(0), transport_latency_stom_us_(0), active_context_type_(types::LeAudioContextType::UNINITIALIZED), active_context_type_(types::LeAudioContextType::UNINITIALIZED), target_state_(types::AseState::BTA_LE_AUDIO_ASE_STATE_IDLE), target_state_(types::AseState::BTA_LE_AUDIO_ASE_STATE_IDLE), current_state_(types::AseState::BTA_LE_AUDIO_ASE_STATE_IDLE), current_state_(types::AseState::BTA_LE_AUDIO_ASE_STATE_IDLE), Loading Loading @@ -238,7 +238,7 @@ class LeAudioDeviceGroup { uint8_t GetTargetLatency(void); uint8_t GetTargetLatency(void); uint16_t GetMaxTransportLatencyStom(void); uint16_t GetMaxTransportLatencyStom(void); uint16_t GetMaxTransportLatencyMtos(void); uint16_t GetMaxTransportLatencyMtos(void); void SetTransportLatency(uint8_t direction, uint16_t transport_latency); void SetTransportLatency(uint8_t direction, uint32_t transport_latency_us); uint8_t GetPhyBitmask(uint8_t direction); uint8_t GetPhyBitmask(uint8_t direction); uint8_t GetTargetPhy(uint8_t direction); uint8_t GetTargetPhy(uint8_t direction); bool GetPresentationDelay(uint32_t* delay, uint8_t direction); bool GetPresentationDelay(uint32_t* delay, uint8_t direction); Loading Loading @@ -273,8 +273,8 @@ class LeAudioDeviceGroup { void Dump(int fd); void Dump(int fd); private: private: uint16_t transport_latency_mtos_; uint32_t transport_latency_mtos_us_; uint16_t transport_latency_stom_; uint32_t transport_latency_stom_us_; const set_configurations::AudioSetConfiguration* const set_configurations::AudioSetConfiguration* FindFirstSupportedConfiguration(types::LeAudioContextType context_type); FindFirstSupportedConfiguration(types::LeAudioContextType context_type); Loading @@ -284,7 +284,7 @@ class LeAudioDeviceGroup { bool IsConfigurationSupported( bool IsConfigurationSupported( const set_configurations::AudioSetConfiguration* audio_set_configuration, const set_configurations::AudioSetConfiguration* audio_set_configuration, types::LeAudioContextType context_type); types::LeAudioContextType context_type); uint16_t GetTransportLatency(uint8_t direction); uint32_t GetTransportLatencyUs(uint8_t direction); /* Mask and table of currently supported contexts */ /* Mask and table of currently supported contexts */ types::LeAudioContextType active_context_type_; types::LeAudioContextType active_context_type_; Loading