Chromium Code Reviews| Index: webrtc/call/call.cc |
| diff --git a/webrtc/call/call.cc b/webrtc/call/call.cc |
| index a6a79789418626dd275556f14bd7616d212fd2f6..d9892b06e2042b0d4e350fa096a3e062bb4fae76 100644 |
| --- a/webrtc/call/call.cc |
| +++ b/webrtc/call/call.cc |
| @@ -181,6 +181,7 @@ class Call : public webrtc::Call, |
| int64_t pacer_bitrate_sum_kbits_ GUARDED_BY(&bitrate_crit_); |
| uint32_t min_allocated_send_bitrate_bps_ GUARDED_BY(&bitrate_crit_); |
| int64_t num_bitrate_updates_ GUARDED_BY(&bitrate_crit_); |
| + uint32_t current_min_transmit_bitrate_bps_ GUARDED_BY(&bitrate_crit_); |
| std::map<std::string, rtc::NetworkRoute> network_routes_; |
| @@ -220,6 +221,8 @@ Call::Call(const Call::Config& config) |
| pacer_bitrate_sum_kbits_(0), |
| min_allocated_send_bitrate_bps_(0), |
| num_bitrate_updates_(0), |
| + current_min_transmit_bitrate_bps_(0), |
| + |
| remb_(clock_), |
| congestion_controller_(new CongestionController(clock_, this, &remb_)), |
| video_send_delay_stats_(new SendDelayStats(clock_)) { |
| @@ -549,6 +552,10 @@ Call::Stats Call::GetStats() const { |
| stats.recv_bandwidth_bps = recv_bandwidth; |
| stats.pacer_delay_ms = congestion_controller_->GetPacerQueuingDelayMs(); |
| stats.rtt_ms = call_stats_->rtcp_rtt_stats()->LastProcessedRtt(); |
| + { |
| + rtc::CritScope cs(&bitrate_crit_); |
| + stats.min_transmit_bitrate_bps = current_min_transmit_bitrate_bps_; |
| + } |
| return stats; |
| } |
| @@ -711,6 +718,13 @@ void Call::OnAllocationLimitsChanged(uint32_t min_send_bitrate_bps, |
| min_send_bitrate_bps, max_padding_bitrate_bps); |
| rtc::CritScope lock(&bitrate_crit_); |
| min_allocated_send_bitrate_bps_ = min_send_bitrate_bps; |
| + current_min_transmit_bitrate_bps_ = max_padding_bitrate_bps; |
| + uint32_t send_bandwidth = 0; |
| + if (congestion_controller_->GetBitrateController()->AvailableBandwidth( |
| + &send_bandwidth) && |
| + send_bandwidth < current_min_transmit_bitrate_bps_) { |
| + current_min_transmit_bitrate_bps_ = send_bandwidth; |
|
perkj_webrtc
2016/07/04 11:24:24
Sorry but I don't think this make sense. Now you w
sprang_webrtc
2016/07/04 12:26:09
As discussed off-line. Changed to report cumulativ
|
| + } |
| } |
| void Call::ConfigureSync(const std::string& sync_group) { |