(Auto)update libjingle 68379861-> 68445177
git-svn-id: http://webrtc.googlecode.com/svn/trunk@6309 4adac7df-926f-26a2-2b94-8c16560cd09d
diff --git a/talk/app/webrtc/statscollector.cc b/talk/app/webrtc/statscollector.cc
index 23d3205..bc8b4f8 100644
--- a/talk/app/webrtc/statscollector.cc
+++ b/talk/app/webrtc/statscollector.cc
@@ -297,6 +297,8 @@
info.decoding_cng);
report->AddValue(StatsReport::kStatsValueNameDecodingPLCCNG,
info.decoding_plc_cng);
+ report->AddValue(StatsReport::kStatsValueNameCaptureStartNtpTimeMs,
+ info.capture_start_ntp_time_ms);
}
void ExtractStats(const cricket::VoiceSenderInfo& info, StatsReport* report) {
diff --git a/talk/media/base/mediachannel.h b/talk/media/base/mediachannel.h
index 2772cc6..0bb0f04 100644
--- a/talk/media/base/mediachannel.h
+++ b/talk/media/base/mediachannel.h
@@ -829,7 +829,8 @@
decoding_normal(0),
decoding_plc(0),
decoding_cng(0),
- decoding_plc_cng(0) {
+ decoding_plc_cng(0),
+ capture_start_ntp_time_ms(-1) {
}
int ext_seqnum;
@@ -846,6 +847,8 @@
int decoding_plc;
int decoding_cng;
int decoding_plc_cng;
+ // Estimated capture start time in NTP time in ms.
+ int64 capture_start_ntp_time_ms;
};
struct VideoSenderInfo : public MediaSenderInfo {
@@ -912,7 +915,7 @@
render_delay_ms(0),
target_delay_ms(0),
current_delay_ms(0),
- capture_start_ntp_time_ms(0) {
+ capture_start_ntp_time_ms(-1) {
}
std::vector<SsrcGroup> ssrc_groups;
diff --git a/talk/media/webrtc/webrtcvideoengine.cc b/talk/media/webrtc/webrtcvideoengine.cc
index 54a5201..a029ec2 100644
--- a/talk/media/webrtc/webrtcvideoengine.cc
+++ b/talk/media/webrtc/webrtcvideoengine.cc
@@ -62,7 +62,9 @@
#include "talk/media/webrtc/webrtcvoiceengine.h"
#include "webrtc/experiments.h"
#include "webrtc/modules/remote_bitrate_estimator/include/remote_bitrate_estimator.h"
+#ifdef WEBRTC_CHROMIUM_BUILD
#include "webrtc/system_wrappers/interface/field_trial.h"
+#endif
#if !defined(LIBPEERCONNECTION_LIB)
#include "talk/media/webrtc/webrtcmediaengine.h"
@@ -2514,6 +2516,15 @@
send_codec_->maxBitrate, kMaxVideoBitrate);
}
sinfo.adapt_reason = send_channel->CurrentAdaptReason();
+
+#ifdef USE_WEBRTC_DEV_BRANCH
+ webrtc::CpuOveruseMetrics metrics;
+ engine()->vie()->base()->GetCpuOveruseMetrics(channel_id, &metrics);
+ sinfo.capture_jitter_ms = metrics.capture_jitter_ms;
+ sinfo.avg_encode_ms = metrics.avg_encode_time_ms;
+ sinfo.encode_usage_percent = metrics.encode_usage_percent;
+ sinfo.capture_queue_delay_ms_per_s = metrics.capture_queue_delay_ms_per_s;
+#else
sinfo.capture_jitter_ms = -1;
sinfo.avg_encode_ms = -1;
sinfo.encode_usage_percent = -1;
@@ -2534,6 +2545,7 @@
sinfo.encode_usage_percent = encode_usage_percent;
sinfo.capture_queue_delay_ms_per_s = capture_queue_delay_ms_per_s;
}
+#endif
webrtc::RtcpPacketTypeCounter rtcp_sent;
webrtc::RtcpPacketTypeCounter rtcp_received;
diff --git a/talk/media/webrtc/webrtcvoiceengine.cc b/talk/media/webrtc/webrtcvoiceengine.cc
index b26f14a..1bd2ffe 100644
--- a/talk/media/webrtc/webrtcvoiceengine.cc
+++ b/talk/media/webrtc/webrtcvoiceengine.cc
@@ -3267,6 +3267,9 @@
rinfo.fraction_lost = static_cast<float>(cs.fractionLost) / (1 << 8);
rinfo.packets_lost = cs.cumulativeLost;
rinfo.ext_seqnum = cs.extendedMax;
+#ifdef USE_WEBRTC_DEV_BRANCH
+ rinfo.capture_start_ntp_time_ms = cs.capture_start_ntp_time_ms_;
+#endif
// Convert samples to milliseconds.
if (codec.plfreq / 1000 > 0) {
rinfo.jitter_ms = cs.jitterSamples / (codec.plfreq / 1000);