Chromium Code Reviews| Index: webrtc/video/send_statistics_proxy.cc |
| diff --git a/webrtc/video/send_statistics_proxy.cc b/webrtc/video/send_statistics_proxy.cc |
| index 6407cdc62ea8e2257994ef90291f60c81ec42294..f3ca13811be377706931441ec765571746ba65ab 100644 |
| --- a/webrtc/video/send_statistics_proxy.cc |
| +++ b/webrtc/video/send_statistics_proxy.cc |
| @@ -13,6 +13,7 @@ |
| #include <algorithm> |
| #include <cmath> |
| #include <map> |
| +#include <vector> |
| #include "webrtc/base/checks.h" |
| #include "webrtc/base/logging.h" |
| @@ -191,6 +192,11 @@ void SendStatisticsProxy::UmaSamplesContainer::UpdateHistograms( |
| RTC_HISTOGRAMS_COUNTS_100000(kIndex, uma_prefix_ + "SendSideDelayMaxInMs", |
| max_delay_ms); |
| } |
| + for (const auto& it : qp_counters_) { |
| + int qp = it.second.vp8.Avg(kMinRequiredSamples); |
| + if (qp != -1) |
| + RTC_HISTOGRAMS_COUNTS_200(kIndex, uma_prefix_ + "Encoded.Qp.Vp8", qp); |
|
pbos-webrtc
2016/03/22 15:35:12
Should these be reported separately per simulcast
åsapersson
2016/03/23 10:57:33
Have updated to use a separate histogram per spati
|
| + } |
| if (first_rtcp_stats_time_ms_ != -1) { |
| int64_t elapsed_sec = |
| @@ -426,6 +432,12 @@ void SendStatisticsProxy::OnSendEncodedImage( |
| } |
| } |
| + if (encoded_image.qp_ != -1 && rtp_video_header != nullptr) { |
| + if (rtp_video_header->codec == kRtpVideoVp8) { |
| + uma_container_->qp_counters_[ssrc].vp8.Add(encoded_image.qp_); |
| + } |
| + } |
| + |
| // TODO(asapersson): This is incorrect if simulcast layers are encoded on |
| // different threads and there is no guarantee that one frame of all layers |
| // are encoded before the next start. |