Allow ANA to receive RPLR (recoverable packet loss rate) indications
This is part of a series of CLs. Next CLs:
1. CL for RPLR-based FecController
2. CL for allowing experiment-driven configuration of the above (through both field-trials and protobuf)
BUG=webrtc:7058
Review-Url: https://codereview.webrtc.org/2661043003
Cr-Commit-Position: refs/heads/master@{#17368}
diff --git a/webrtc/audio/audio_send_stream.cc b/webrtc/audio/audio_send_stream.cc
index 06c660e..d16ae18 100644
--- a/webrtc/audio/audio_send_stream.cc
+++ b/webrtc/audio/audio_send_stream.cc
@@ -277,17 +277,22 @@
// TODO(elad.alon): This fails in UT; fix and uncomment.
// RTC_DCHECK(worker_thread_checker_.CalledOnValidThread());
rtc::Optional<float> plr;
+ rtc::Optional<float> rplr;
{
rtc::CritScope lock(&packet_loss_tracker_cs_);
packet_loss_tracker_.OnPacketFeedbackVector(packet_feedback_vector);
plr = packet_loss_tracker_.GetPacketLossRate();
+ rplr = packet_loss_tracker_.GetRecoverablePacketLossRate();
}
- // TODO(elad.alon): If PLR goes back to unknown, no indication is given that
+ // TODO(elad.alon): If R/PLR go back to unknown, no indication is given that
// the previously sent value is no longer relevant. This will be taken care
// of with some refactoring which is now being done.
if (plr) {
channel_proxy_->OnTwccBasedUplinkPacketLossRate(*plr);
}
+ if (rplr) {
+ channel_proxy_->OnRecoverableUplinkPacketLossRate(*rplr);
+ }
}
const webrtc::AudioSendStream::Config& AudioSendStream::config() const {