Stop using special RTT value for DelayBasedBwe.
There are two RTT values reported to GoogCC. They come from the same source initially but one is calculated and smoothed in the video call stats. However, there's not really any technical reasons why this value should be received via the stats, this has just been maintained for legacy reasons. Experiments shows no real difference between the modes, therefore the stats-reported RTT is removed in this CL as a cleanup. Bug: None Change-Id: If1462d6c91570ffb883ecef2ba034f04a571c9b5 Reviewed-on: https://webrtc-review.googlesource.com/c/123883 Reviewed-by: Christoffer Rodbro <crodbro@webrtc.org> Commit-Queue: Sebastian Jansson <srte@webrtc.org> Cr-Commit-Position: refs/heads/master@{#26833}
This commit is contained in:

committed by
Commit Bot

parent
76a74e6dc8
commit
418dd0b96a
@ -484,8 +484,6 @@ Call::~Call() {
|
||||
module_process_thread_->DeRegisterModule(call_stats_.get());
|
||||
module_process_thread_->Stop();
|
||||
call_stats_->DeregisterStatsObserver(&receive_side_cc_);
|
||||
call_stats_->DeregisterStatsObserver(
|
||||
transport_send_->GetCallStatsObserver());
|
||||
}
|
||||
|
||||
int64_t first_sent_packet_ms = transport_send_->GetFirstPacketTimeMs();
|
||||
@ -517,7 +515,6 @@ void Call::RegisterRateObserver() {
|
||||
transport_send_ptr_->RegisterTargetTransferRateObserver(this);
|
||||
|
||||
call_stats_->RegisterStatsObserver(&receive_side_cc_);
|
||||
call_stats_->RegisterStatsObserver(transport_send_->GetCallStatsObserver());
|
||||
|
||||
module_process_thread_->RegisterModule(
|
||||
receive_side_cc_.GetRemoteBitrateEstimator(true), RTC_FROM_HERE);
|
||||
|
@ -184,9 +184,6 @@ void RtpTransportControllerSend::SetPacingFactor(float pacing_factor) {
|
||||
void RtpTransportControllerSend::SetQueueTimeLimit(int limit_ms) {
|
||||
pacer_.SetQueueTimeLimit(limit_ms);
|
||||
}
|
||||
CallStatsObserver* RtpTransportControllerSend::GetCallStatsObserver() {
|
||||
return this;
|
||||
}
|
||||
void RtpTransportControllerSend::RegisterPacketFeedbackObserver(
|
||||
PacketFeedbackObserver* observer) {
|
||||
transport_feedback_adapter_.RegisterPacketFeedbackObserver(observer);
|
||||
@ -442,20 +439,6 @@ void RtpTransportControllerSend::OnTransportFeedback(
|
||||
transport_feedback_adapter_.GetOutstandingData().bytes());
|
||||
}
|
||||
|
||||
void RtpTransportControllerSend::OnRttUpdate(int64_t avg_rtt_ms,
|
||||
int64_t max_rtt_ms) {
|
||||
int64_t now_ms = clock_->TimeInMilliseconds();
|
||||
RoundTripTimeUpdate report;
|
||||
report.receive_time = Timestamp::ms(now_ms);
|
||||
report.round_trip_time = TimeDelta::ms(avg_rtt_ms);
|
||||
report.smoothed = true;
|
||||
task_queue_.PostTask([this, report]() {
|
||||
RTC_DCHECK_RUN_ON(&task_queue_);
|
||||
if (controller_)
|
||||
PostUpdates(controller_->OnRoundTripTimeUpdate(report));
|
||||
});
|
||||
}
|
||||
|
||||
void RtpTransportControllerSend::MaybeCreateControllers() {
|
||||
RTC_DCHECK(!controller_);
|
||||
RTC_DCHECK(!control_handler_);
|
||||
|
@ -42,7 +42,6 @@ class RtcEventLog;
|
||||
class RtpTransportControllerSend final
|
||||
: public RtpTransportControllerSendInterface,
|
||||
public RtcpBandwidthObserver,
|
||||
public CallStatsObserver,
|
||||
public TransportFeedbackObserver {
|
||||
public:
|
||||
RtpTransportControllerSend(
|
||||
@ -81,7 +80,6 @@ class RtpTransportControllerSend final
|
||||
void SetKeepAliveConfig(const RtpKeepAliveConfig& config);
|
||||
void SetPacingFactor(float pacing_factor) override;
|
||||
void SetQueueTimeLimit(int limit_ms) override;
|
||||
CallStatsObserver* GetCallStatsObserver() override;
|
||||
void RegisterPacketFeedbackObserver(
|
||||
PacketFeedbackObserver* observer) override;
|
||||
void DeRegisterPacketFeedbackObserver(
|
||||
@ -116,8 +114,6 @@ class RtpTransportControllerSend final
|
||||
const PacedPacketInfo& pacing_info) override;
|
||||
void OnTransportFeedback(const rtcp::TransportFeedback& feedback) override;
|
||||
|
||||
// Implements CallStatsObserver interface
|
||||
void OnRttUpdate(int64_t avg_rtt_ms, int64_t max_rtt_ms) override;
|
||||
private:
|
||||
void MaybeCreateControllers() RTC_RUN_ON(task_queue_);
|
||||
void UpdateInitialConstraints(TargetRateConstraints new_contraints)
|
||||
|
@ -134,8 +134,6 @@ class RtpTransportControllerSendInterface {
|
||||
virtual void SetPacingFactor(float pacing_factor) = 0;
|
||||
virtual void SetQueueTimeLimit(int limit_ms) = 0;
|
||||
|
||||
virtual CallStatsObserver* GetCallStatsObserver() = 0;
|
||||
|
||||
virtual void RegisterPacketFeedbackObserver(
|
||||
PacketFeedbackObserver* observer) = 0;
|
||||
virtual void DeRegisterPacketFeedbackObserver(
|
||||
|
@ -52,7 +52,6 @@ class MockRtpTransportControllerSend
|
||||
MOCK_METHOD3(SetAllocatedSendBitrateLimits, void(int, int, int));
|
||||
MOCK_METHOD1(SetPacingFactor, void(float));
|
||||
MOCK_METHOD1(SetQueueTimeLimit, void(int));
|
||||
MOCK_METHOD0(GetCallStatsObserver, CallStatsObserver*());
|
||||
MOCK_METHOD1(RegisterPacketFeedbackObserver, void(PacketFeedbackObserver*));
|
||||
MOCK_METHOD1(DeRegisterPacketFeedbackObserver, void(PacketFeedbackObserver*));
|
||||
MOCK_METHOD1(RegisterTargetTransferRateObserver,
|
||||
|
@ -255,14 +255,11 @@ NetworkControlUpdate GoogCcNetworkController::OnRemoteBitrateReport(
|
||||
|
||||
NetworkControlUpdate GoogCcNetworkController::OnRoundTripTimeUpdate(
|
||||
RoundTripTimeUpdate msg) {
|
||||
if (packet_feedback_only_)
|
||||
if (packet_feedback_only_ || msg.smoothed)
|
||||
return NetworkControlUpdate();
|
||||
if (msg.smoothed) {
|
||||
if (delay_based_bwe_)
|
||||
delay_based_bwe_->OnRttUpdate(msg.round_trip_time);
|
||||
} else {
|
||||
bandwidth_estimation_->UpdateRtt(msg.round_trip_time, msg.receive_time);
|
||||
}
|
||||
if (delay_based_bwe_)
|
||||
delay_based_bwe_->OnRttUpdate(msg.round_trip_time);
|
||||
bandwidth_estimation_->UpdateRtt(msg.round_trip_time, msg.receive_time);
|
||||
return NetworkControlUpdate();
|
||||
}
|
||||
|
||||
|
Reference in New Issue
Block a user