From 47139607a37a2aedda90e109c605d47136453b79 Mon Sep 17 00:00:00 2001
From: Harald Alvestrand The stats API is defined in [[!WEBRTC]]. It is defined to return
- a set of objects that are a subclass of the RTCStats dictionary. This is
- normatively defined in [[!WEBRTC]], but is reproduced here
- for ease of reference.
+ a set of objects that are a subclass of the RTCStats dictionary. This is
+ normatively defined in [[!WEBRTC]], but is reproduced here
+ for ease of reference.
This specification is normative for the allowed values of RTCStatsType.
The following strings are valid values for RTCStatsType:
@@ -332,7 +332,7 @@
Basic concepts
- dictionary RTCStats {
+ dictionary RTCStats {
DOMHighResTimeStamp timestamp;
RTCStatsType type;
DOMString id;
- };
+ };
Guidelines for design of stats objects
@@ -207,7 +207,7 @@
+
enum RTCStatsType {
"codec",
"inbound-rtp",
@@ -221,7 +221,7 @@
+
"remote-candidate",
"certificate"
};
-
Stats dictionaries
+ Stats dictionaries
RTCRTPStreamStats dictionary
@@ -350,6 +350,7 @@
unsigned long pliCount;
unsigned long nackCount;
unsigned long sliCount;
+ unsigned long qpSum;
};
@@ -464,10 +465,28 @@
as defined in [[!RFC4585]] section 6.3.2.
qpSum
of type
+ unsigned long
+ + The sum of the QP values of frames passed. The count + of frames is in framesDecoded for inbound + stream stats, and in framesEncoded for + outbound stream stats. +
++ The definition of QP value depends on + the codec; for VP8, QP values are defined in + [[RFC6386]]. +
+Only valid for video.
+- RTCInboundRTPStreamStats dictionary represents the measurement metrics for - the incoming RTP stream. + The RTCInboundRTPStreamStats dictionary + represents the measurement metrics for + the incoming RTP media stream.
dictionary RTCInboundRTPStreamStats : RTCRTPStreamStats { @@ -574,6 +594,7 @@double burstDiscardRate; double gapLossRate; double gapDiscardRate; + unsigned long framesDecoded; };
framesDecoded
+
+ Only valid for video. It represents the total number of frames correctly
+ decoded for this SSRC. Same definition as totalVideoFrames
in
+ Section 5 of [[!MEDIA-SOURCE]].
+
framesEncoded
of type long
+ + Only valid for video. It represents the total + number of frames successfully encoded for this RTP + media stream. +
Only valid for video. It represents the total number of frames sent for this - SSRC. + MediaStreamTrack.
Only valid for video and when remoteSource is set to true
. It
- represents the total number of frames received for this SSRC.
+ represents the total number of frames received for this MediaStreamTrack.
- Only valid for video. It represents the total number of frames correctly
- decoded for this SSRC. Same definition as totalVideoFrames
in
+ Only valid for video and when remoteSource is set
+ to true
. It represents the total number of frames correctly
+ decoded for this MediaStreamTrack, independent of
+ which SSRC it was received from. It is defined as totalVideoFrames
in
Section 5 of [[!MEDIA-SOURCE]].
Only valid for video. It is the total number of frames dropped
predecode or dropped because the frame missed its display
- deadline for this SSRC. It is the same definition as
+ deadline for this MediastreamTrack. It is the same definition as
droppedVideoFrames
in Section 5 of [[!MEDIA-SOURCE]].
Only valid for video. It is the total number of corrupted frames
- that have been detected for this SSRC. It is the same definition as
+ that have been detected for this MediaStreamTrack. It is the same definition as
corruptedVideoFrames
in Section 5 of [[!MEDIA-SOURCE]].
qpSum
of type
- unsigned long
+ unsigned long long
The sum of the QP values of frames passed. The count of frames is in framesDecoded for inbound stream stats, and in framesEncoded for - outbound stream stats. + outbound stream stats. If QP varies across the frame, + an average or typical QP value is recorded.
The definition of QP value depends on the codec; for VP8, QP values are defined in [[RFC6386]]. + VP8, VP9 and H.264 - RFC 6386 doesn't use the term -->
Only valid for video.
The definition of QP value depends on - the codec; for VP8, QP values are defined in - [[RFC6386]]. + the codec; for VP8, the QP value is the value carried + in the frame header as the syntax element "y_ac_qi", and + defined in [[RFC6386]] section 19.2. Its range is 0..127. + +
++ Note that the QP value is only + an indication of quantizer values used; many formats have + ways to vary the quantizer value within the frame.
Only valid for video.