RTCInboundRTPStreamStats.packetsLost set by RTCStatsCollector.
Spec: https://w3c.github.io/webrtc-stats/#dom-rtcinboundrtpstreamstats-packetslost
BUG=chromium:657855
Review-Url: https://codereview.webrtc.org/2559973002
Cr-Commit-Position: refs/heads/master@{#15507}
diff --git a/webrtc/api/rtcstats_integrationtest.cc b/webrtc/api/rtcstats_integrationtest.cc
index 6648eb2..4c57304 100644
--- a/webrtc/api/rtcstats_integrationtest.cc
+++ b/webrtc/api/rtcstats_integrationtest.cc
@@ -469,7 +469,7 @@
VerifyRTCRTPStreamStats(inbound_stream, &verifier);
verifier.TestMemberIsDefined(inbound_stream.packets_received);
verifier.TestMemberIsDefined(inbound_stream.bytes_received);
- verifier.TestMemberIsUndefined(inbound_stream.packets_lost);
+ verifier.TestMemberIsDefined(inbound_stream.packets_lost);
if (inbound_stream.media_type.is_defined() &&
*inbound_stream.media_type == "video") {
verifier.TestMemberIsUndefined(inbound_stream.jitter);
diff --git a/webrtc/api/rtcstatscollector.cc b/webrtc/api/rtcstatscollector.cc
index 9f08aa9..a7c4cfc 100644
--- a/webrtc/api/rtcstatscollector.cc
+++ b/webrtc/api/rtcstatscollector.cc
@@ -150,6 +150,8 @@
static_cast<uint32_t>(media_receiver_info.packets_rcvd);
inbound_stats->bytes_received =
static_cast<uint64_t>(media_receiver_info.bytes_rcvd);
+ inbound_stats->packets_lost =
+ static_cast<uint32_t>(media_receiver_info.packets_lost);
inbound_stats->fraction_lost =
static_cast<double>(media_receiver_info.fraction_lost);
}
diff --git a/webrtc/api/rtcstatscollector_unittest.cc b/webrtc/api/rtcstatscollector_unittest.cc
index 4f63c16..2d2059b 100644
--- a/webrtc/api/rtcstatscollector_unittest.cc
+++ b/webrtc/api/rtcstatscollector_unittest.cc
@@ -1313,6 +1313,7 @@
voice_media_info.receivers[0].local_stats.push_back(
cricket::SsrcReceiverInfo());
voice_media_info.receivers[0].local_stats[0].ssrc = 1;
+ voice_media_info.receivers[0].packets_lost = 42;
voice_media_info.receivers[0].packets_rcvd = 2;
voice_media_info.receivers[0].bytes_rcvd = 3;
voice_media_info.receivers[0].codec_payload_type = rtc::Optional<int>(42);
@@ -1357,6 +1358,7 @@
expected_audio.codec_id = "RTCCodec_InboundAudio_42";
expected_audio.packets_received = 2;
expected_audio.bytes_received = 3;
+ expected_audio.packets_lost = 42;
expected_audio.jitter = 4.5;
expected_audio.fraction_lost = 5.5;
@@ -1382,6 +1384,7 @@
cricket::SsrcReceiverInfo());
video_media_info.receivers[0].local_stats[0].ssrc = 1;
video_media_info.receivers[0].packets_rcvd = 2;
+ video_media_info.receivers[0].packets_lost = 42;
video_media_info.receivers[0].bytes_rcvd = 3;
video_media_info.receivers[0].fraction_lost = 4.5f;
video_media_info.receivers[0].codec_payload_type = rtc::Optional<int>(42);
@@ -1430,6 +1433,7 @@
expected_video.nack_count = 7;
expected_video.packets_received = 2;
expected_video.bytes_received = 3;
+ expected_video.packets_lost = 42;
expected_video.fraction_lost = 4.5;
ASSERT(report->Get(expected_video.id()));
diff --git a/webrtc/api/stats/rtcstats_objects.h b/webrtc/api/stats/rtcstats_objects.h
index e1b695b..21b8d68 100644
--- a/webrtc/api/stats/rtcstats_objects.h
+++ b/webrtc/api/stats/rtcstats_objects.h
@@ -328,7 +328,6 @@
RTCStatsMember<uint32_t> packets_received;
RTCStatsMember<uint64_t> bytes_received;
- // TODO(hbos): Not collected by |RTCStatsCollector|. crbug.com/657855
RTCStatsMember<uint32_t> packets_lost;
// TODO(hbos): Not collected in the "video" case by |RTCStatsCollector|.
// crbug.com/657855