Account for simulcast hysteresis in padding rate calculation.
Bug: webrtc:10271
Change-Id: If0b0eb7d94fb1c892880ff4745f34c43fcdeee54
Reviewed-on: https://webrtc-review.googlesource.com/c/120661
Commit-Queue: Rasmus Brandt <brandtr@webrtc.org>
Reviewed-by: Erik Språng <sprang@webrtc.org>
Reviewed-by: Niels Moller <nisse@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#26527}
diff --git a/rtc_base/experiments/rate_control_settings.cc b/rtc_base/experiments/rate_control_settings.cc
index f465933..cb6e0de 100644
--- a/rtc_base/experiments/rate_control_settings.cc
+++ b/rtc_base/experiments/rate_control_settings.cc
@@ -178,6 +178,22 @@
return trust_vp9_.Get();
}
+double RateControlSettings::GetSimulcastHysteresisFactor(
+ VideoCodecMode mode) const {
+ if (mode == VideoCodecMode::kScreensharing) {
+ return GetSimulcastScreenshareHysteresisFactor();
+ }
+ return GetSimulcastVideoHysteresisFactor();
+}
+
+double RateControlSettings::GetSimulcastHysteresisFactor(
+ VideoEncoderConfig::ContentType content_type) const {
+ if (content_type == VideoEncoderConfig::ContentType::kScreen) {
+ return GetSimulcastScreenshareHysteresisFactor();
+ }
+ return GetSimulcastVideoHysteresisFactor();
+}
+
double RateControlSettings::GetSimulcastVideoHysteresisFactor() const {
return video_hysteresis_.Get();
}