Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(1943)

Unified Diff: webrtc/video/call_stats.cc

Issue 1669623004: Use CallStats for RTT in Call, rather than VideoSendStream::GetRtt() (Closed) Base URL: https://chromium.googlesource.com/external/webrtc.git@master
Patch Set: Cleanup Created 4 years, 11 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: webrtc/video/call_stats.cc
diff --git a/webrtc/video/call_stats.cc b/webrtc/video/call_stats.cc
index ef5f0b211d870edc99e399c54d5390b32b1c663e..304189492d99ed3e5c1e3784b99c2e78cd0204fa 100644
--- a/webrtc/video/call_stats.cc
+++ b/webrtc/video/call_stats.cc
@@ -34,17 +34,17 @@ void RemoveOldReports(int64_t now, std::list<CallStats::RttTime>* reports) {
}
int64_t GetMaxRttMs(std::list<CallStats::RttTime>* reports) {
+ if (reports->empty())
+ return -1;
int64_t max_rtt_ms = 0;
- for (std::list<CallStats::RttTime>::const_iterator it = reports->begin();
- it != reports->end(); ++it) {
- max_rtt_ms = std::max(it->rtt, max_rtt_ms);
- }
+ for (const CallStats::RttTime& rtt_time : *reports)
+ max_rtt_ms = std::max(rtt_time.rtt, max_rtt_ms);
return max_rtt_ms;
}
int64_t GetAvgRttMs(std::list<CallStats::RttTime>* reports) {
if (reports->empty()) {
- return 0;
+ return -1;
}
int64_t sum = 0;
for (std::list<CallStats::RttTime>::const_iterator it = reports->begin();
@@ -55,13 +55,13 @@ int64_t GetAvgRttMs(std::list<CallStats::RttTime>* reports) {
}
void UpdateAvgRttMs(std::list<CallStats::RttTime>* reports, int64_t* avg_rtt) {
- uint32_t cur_rtt_ms = GetAvgRttMs(reports);
- if (cur_rtt_ms == 0) {
+ int64_t cur_rtt_ms = GetAvgRttMs(reports);
+ if (cur_rtt_ms == -1) {
// Reset.
- *avg_rtt = 0;
+ *avg_rtt = -1;
return;
}
- if (*avg_rtt == 0) {
+ if (*avg_rtt == -1) {
// Initialize.
*avg_rtt = cur_rtt_ms;
return;
@@ -94,8 +94,8 @@ CallStats::CallStats(Clock* clock)
: clock_(clock),
rtcp_rtt_stats_(new RtcpObserver(this)),
last_process_time_(clock_->TimeInMilliseconds()),
- max_rtt_ms_(0),
- avg_rtt_ms_(0) {}
+ max_rtt_ms_(-1),
+ avg_rtt_ms_(-1) {}
CallStats::~CallStats() {
assert(observers_.empty());
@@ -119,7 +119,7 @@ int32_t CallStats::Process() {
// If there is a valid rtt, update all observers with the max rtt.
// TODO(asapersson): Consider changing this to report the average rtt.
åsapersson 2016/02/05 13:50:12 this todo seems no longer valid, maybe remove
sprang 2016/02/05 14:10:22 Done.
- if (max_rtt_ms_ > 0) {
+ if (max_rtt_ms_ >= 0) {
for (std::list<CallStatsObserver*>::iterator it = observers_.begin();
it != observers_.end(); ++it) {
(*it)->OnRttUpdate(avg_rtt_ms_, max_rtt_ms_);

Powered by Google App Engine
This is Rietveld 408576698