DescriptionRTCStatsCollector and RTCPeerConnectionStats added.
This is the stats collector for the new stats types, RTCStats[1] and
RTCStatsReport[2]. It so far only produces RTCPeerConnectionStats[3] as
an example of how it would collect stats. Each RTCStats subclass will
get a corresponding RTCStatsCollector::ProduceFooStats().
Stats reports are cached and returned as const references (ref
counting). This allows stats to be inspected by multiple observers and
across multiple threads. No copies will have to be made when surfacing
this to Blink or other places.
The current implementation of ProducePeerConnectionStats() only look at
existing DataChannels. This might be incorret if data channels can be
removed? Will investigate in a follow-up, crbug.com/636818.
[1] https://www.w3.org/TR/2016/WD-webrtc-20160531/#idl-def-rtcstats
[2] https://www.w3.org/TR/2016/WD-webrtc-20160531/#rtcstatsreport-object
[3] https://w3c.github.io/webrtc-stats/archives/20160526/webrtc-stats.html#pcstats-dict*
BUG=chromium:627816, chromium:636818
Committed: https://crrev.com/d565b73121b1b7672fb7d1f115bbbbb137a838eb
Cr-Commit-Position: refs/heads/master@{#13979}
Patch Set 1 #Patch Set 2 : Changed ID of RTCPeerConnectionStats to "RTCPeerConnection" (no need to rerun bots yet) #
Total comments: 16
Patch Set 3 : Addressed comments #Patch Set 4 : Making sure the RTCPeerConnectionStats has the correct timestamp #
Total comments: 14
Patch Set 5 : Addressed comments #Patch Set 6 : Rebase with master and fix compile error #Patch Set 7 : Rebase with master #
Messages
Total messages: 33 (17 generated)
|