Amazon Kinesis Webrtc C SDK
Stats.h
Go to the documentation of this file.
1 /*
2  * Profiler public include file
3  */
4 #ifndef __KINESIS_VIDEO_WEBRTCCLIENT_STATS_INCLUDE__
5 #define __KINESIS_VIDEO_WEBRTCCLIENT_STATS_INCLUDE__
6 
7 #pragma once
8 
9 #ifdef __cplusplus
10 extern "C" {
11 #endif
12 
16 
25 #define MAX_CANDIDATE_ID_LENGTH 9U
26 
30 #define MAX_RELAY_PROTOCOL_LENGTH 8U
31 
35 #define MAX_TLS_VERSION_LENGTH 8U
36 
40 #define MAX_DTLS_CIPHER_LENGTH 64U
41 
45 #define MAX_SRTP_CIPHER_LENGTH 64U
46 
50 #define MAX_TLS_GROUP_LENGHTH 32U
51 
55 #define MAX_PROTOCOL_LENGTH 8U
56 
60 #define IP_ADDR_STR_LENGTH 45U
61 
65 #define MAX_STATS_STRING_LENGTH 255U
74 
81 typedef UINT64 DOMHighResTimeStamp;
82 
86 typedef enum {
92 
97 typedef enum {
121 
126 typedef enum {
133 
138 typedef enum {
143 
148 typedef enum {
155 
161 typedef enum {
167 
172 typedef struct {
176 
181 typedef struct {
185 
192 typedef struct {
193  CHAR localCandidateId[MAX_CANDIDATE_ID_LENGTH + 1];
194  CHAR remoteCandidateId[MAX_CANDIDATE_ID_LENGTH + 1];
196  BOOL nominated;
201  UINT64 packetsSent;
203  UINT64 bytesSent;
204  UINT64 bytesReceived;
224  UINT64 requestsSent;
226  UINT64 responsesSent;
229 
235 typedef struct {
238  UINT32 iceServerIndex;
240  INT32 port;
245 
250 typedef struct {
262 
269 typedef struct {
272  CHAR address[IP_ADDR_STR_LENGTH + 1];
276  INT32 priority;
277  INT32 port;
280 
287 typedef struct {
292  CHAR tlsVersion[MAX_TLS_VERSION_LENGTH + 1];
293  CHAR dtlsCipher[MAX_DTLS_CIPHER_LENGTH +
294  1];
296  CHAR srtpCipher[MAX_SRTP_CIPHER_LENGTH + 1];
298  CHAR tlsGroup[MAX_TLS_GROUP_LENGHTH +
299  1];
303  UINT64 packetsSent;
305  UINT64 bytesSent;
306  UINT64 bytesReceived;
309 
314 typedef struct {
315  UINT32 ssrc;
319  // TODO: transportId not yet populated
322 
323  // TODO: codecId not yet populated
327 
332 typedef struct {
334  UINT64 packetsSent;
335  UINT64 bytesSent;
340 
347 typedef struct {
358  UINT32 framesSent;
359  UINT32 hugeFramesSent;
361  UINT32 framesEncoded;
364  UINT32 frameWidth;
365  UINT32 frameHeight;
366  UINT32 frameBitDepth;
367  UINT32 nackCount;
368  UINT32 firCount;
369  UINT32 pliCount;
370  UINT32 sliCount;
379  UINT64 targetBitrate;
382  UINT64 qpSum;
393 
399 typedef struct {
401  UINT64 roundTripTime;
403  DOUBLE fractionLost;
407 
408 typedef struct {
411  INT64 packetsLost;
413  DOUBLE jitter;
420  UINT32 burstLossCount;
423  DOUBLE burstLossRate;
427  DOUBLE gapLossRate;
429  DOUBLE gapDiscardRate;
431  UINT32 framesDropped;
438  UINT32 fullFramesLost;
441 
448 typedef struct {
449  RtcReceivedRtpStreamStats received; // dictionary RTCInboundRtpStreamStats : RTCReceivedRtpStreamStats
454  UINT32 framesDecoded;
459  UINT16 frameWidth;
461  UINT16 frameHeight;
466  UINT64 qpSum;
480 
496  UINT64
501  UINT64 bytesReceived;
509 
510  UINT32 nackCount;
511  UINT32 firCount;
512  UINT32 pliCount;
513  UINT32 sliCount;
534  DOUBLE audioLevel;
542  UINT32 framesReceived;
546 
550 typedef enum {
556 
560 typedef struct {
566  UINT32 messagesSent;
567  UINT64 bytesSent;
569  UINT64 bytesReceived;
571 
575 typedef struct {
595  UINT32 numberOfErrors;
613  UINT64 createCallTime;
619  UINT64
624  UINT64 answerTime;
627 
628 typedef struct {
638 
643 typedef struct {
656 #ifdef __cplusplus
657 }
658 #endif
659 #endif /* __KINESIS_VIDEO_WEBRTCCLIENT_STATS_INCLUDE__ */
CHAR DOMString[255U+1]
DOMString type is used to store strings of size 256 bytes (inclusive of '\0' character.
Definition: Stats.h:73
RTC_STATS_TYPE
Type of Stats object requested by the application Reference https://www.w3.org/TR/webrtc-stats/#rtcst...
Definition: Stats.h:97
@ RTC_STATS_TYPE_INBOUND_RTP
Statistics for an inbound RTP stream that is currently received with this RTCPeerConnection object.
Definition: Stats.h:104
@ RTC_STATS_TYPE_RECEIVER
Statistics related to a specific receiver and the corresponding media-level metrics.
Definition: Stats.h:108
@ RTC_STATS_TYPE_CANDIDATE_PAIR
ICE candidate pair statistics related to the RTCIceTransport objects.
Definition: Stats.h:98
@ RTC_STATS_TYPE_LOCAL_CANDIDATE
ICE local candidate statistics related to the RTCIceTransport objects.
Definition: Stats.h:105
@ RTC_STATS_TYPE_PEER_CONNECTION
Statistics related to the RTCPeerConnection object.
Definition: Stats.h:107
@ RTC_STATS_TYPE_OUTBOUND_RTP
Statistics for an outbound RTP stream that is currently received with this RTCPeerConnection object.
Definition: Stats.h:106
@ RTC_STATS_TYPE_REMOTE_INBOUND_RTP
Definition: Stats.h:110
@ RTC_STATS_TYPE_RTC_ALL
Report all supported stats.
Definition: Stats.h:119
@ RTC_STATS_TYPE_SCTP_TRANSPORT
SCTP transport statistics related to an RTCSctpTransport object.
Definition: Stats.h:117
@ RTC_STATS_TYPE_TRANSPORT
Transport statistics related to the RTCPeerConnection object.
Definition: Stats.h:116
@ RTC_STATS_TYPE_CERTIFICATE
Information about a certificate used by an RTCIceTransport.
Definition: Stats.h:99
@ RTC_STATS_TYPE_CODEC
Stats for a codec that is currently being used by RTP streams being sent or received by this RTCPeerC...
Definition: Stats.h:100
@ RTC_STATS_TYPE_REMOTE_CANDIDATE
ICE remote candidate statistics related to the RTCIceTransport objects.
Definition: Stats.h:109
@ RTC_STATS_TYPE_REMOTE_OUTBOUND_RTP
Definition: Stats.h:112
@ RTC_STATS_TYPE_DATA_CHANNEL
Stats related to each RTCDataChannel id.
Definition: Stats.h:103
@ RTC_STATS_TYPE_TRANSCEIVER
Statistics related to a specific RTCRtpTransceiver.
Definition: Stats.h:118
@ RTC_STATS_TYPE_CSRC
Stats for a contributing source (CSRC) that contributed to an inbound RTP stream.
Definition: Stats.h:102
@ RTC_STATS_TYPE_ICE_SERVER
Information about the connection to an ICE server (e.g. STUN or TURN)
Definition: Stats.h:101
@ RTC_STATS_TYPE_SENDER
Statistics related to a specific RTCRtpSender and the corresponding media-level metrics.
Definition: Stats.h:114
@ RTC_STATS_TYPE_TRACK
Statistics related to a specific MediaStreamTrack's attachment to an RTCRtpSender.
Definition: Stats.h:115
ICE_CANDIDATE_PAIR_STATE
Indicates computing states in the checklist Reference: https://www.w3.org/TR/webrtc-stats/#rtcstatsic...
Definition: Stats.h:126
@ ICE_CANDIDATE_PAIR_STATE_IN_PROGRESS
Definition: Stats.h:129
@ ICE_CANDIDATE_PAIR_STATE_SUCCEEDED
Definition: Stats.h:130
@ ICE_CANDIDATE_PAIR_STATE_FROZEN
Definition: Stats.h:127
@ ICE_CANDIDATE_PAIR_STATE_WAITING
Definition: Stats.h:128
@ ICE_CANDIDATE_PAIR_STATE_FAILED
Definition: Stats.h:131
RTC_ICE_ROLE
Set details of the IceAgent based on STUN_ATTRIBUTE_TYPE_USE_CANDIDATE flag Reference: https://www....
Definition: Stats.h:138
@ RTC_ICE_ROLE_CONTROLLED
A controlled agent. The iCE agent waits for the controlling agent to select the final choice of candi...
Definition: Stats.h:141
@ RTC_ICE_ROLE_UNKNOWN
An agent whose role is undetermined. Initial state.
Definition: Stats.h:139
@ RTC_ICE_ROLE_CONTROLLING
A controlling agent. The ICE agent that is responsible for selecting the final choice of candidate pa...
Definition: Stats.h:140
ICE_CANDIDATE_TYPE
Definition: Stats.h:86
@ ICE_CANDIDATE_TYPE_RELAYED
ICE_CANDIDATE_TYPE_RELAYED.
Definition: Stats.h:90
@ ICE_CANDIDATE_TYPE_HOST
ICE_CANDIDATE_TYPE_HOST.
Definition: Stats.h:87
@ ICE_CANDIDATE_TYPE_SERVER_REFLEXIVE
ICE_CANDIDATE_TYPE_SERVER_REFLEXIVE.
Definition: Stats.h:89
@ ICE_CANDIDATE_TYPE_PEER_REFLEXIVE
ICE_CANDIDATE_TYPE_PEER_REFLEXIVE.
Definition: Stats.h:88
RTC_QUALITY_LIMITATION_REASON
Defines reasons for quality limitation for sending streams.
Definition: Stats.h:161
@ RTC_QUALITY_LIMITATION_REASON_BANDWIDTH
Reason for limitation is congestion cues during bandwidth estimation.
Definition: Stats.h:163
@ RTC_QUALITY_LIMITATION_REASON_OTHER
Limitation due to reasons other than above.
Definition: Stats.h:165
@ RTC_QUALITY_LIMITATION_REASON_NONE
Resolution as expected. Default value.
Definition: Stats.h:162
@ RTC_QUALITY_LIMITATION_REASON_CPU
The resolution and/or framerate is primarily limited due to CPU load.
Definition: Stats.h:164
UINT64 DOMHighResTimeStamp
The DOMHighResTimeStamp type is used to store a time value in milliseconds, measured relative from th...
Definition: Stats.h:81
RTC_DTLS_TRANSPORT_STATE_STATS
DTLS Transport State Reference: https://www.w3.org/TR/webrtc/#rtcdtlstransport-interface.
Definition: Stats.h:148
@ RTC_DTLS_TRANSPORT_STATE_STATS_CONNECTED
DTLS has completed negotiation of a secure connection.
Definition: Stats.h:151
@ RTC_DTLS_TRANSPORT_STATE_STATS_CONNECTING
DTLS is in the process of negotiating a secure connection.
Definition: Stats.h:150
@ RTC_DTLS_TRANSPORT_STATE_STATS_NEW
DTLS has not started negotiating yet.
Definition: Stats.h:149
@ RTC_DTLS_TRANSPORT_STATE_STATS_CLOSED
The transport has been closed intentionally.
Definition: Stats.h:152
@ RTC_DTLS_TRANSPORT_STATE_STATS_FAILED
The transport has failed as the result of an error.
Definition: Stats.h:153
#define MAX_DTLS_CIPHER_LENGTH
Definition: Stats.h:40
#define MAX_STATS_STRING_LENGTH
Definition: Stats.h:65
#define IP_ADDR_STR_LENGTH
Definition: Stats.h:60
#define MAX_CANDIDATE_ID_LENGTH
Definition: Stats.h:25
#define MAX_TLS_GROUP_LENGHTH
Definition: Stats.h:50
#define MAX_SRTP_CIPHER_LENGTH
Definition: Stats.h:45
#define MAX_TLS_VERSION_LENGTH
Definition: Stats.h:35
struct RtcRemoteInboundRtpStreamStats * PRtcRemoteInboundRtpStreamStats
struct PeerConnectionStats * PPeerConnectionStats
struct RTCSentRtpStreamStats * PRTCSentRtpStreamStats
struct QualityLimitationDurationsRecord * PQualityLimitationDurationsRecord
struct RtcOutboundRtpStreamStats * PRtcOutboundRtpStreamStats
struct KvsIceAgentStats * PKvsIceAgentStats
struct DscpPacketsSentRecord * PDscpPacketsSentRecord
RTC_DATA_CHANNEL_STATE
Definition: Stats.h:550
struct RtcStatsObject * PRtcStatsObject
struct RtcIceServerStats * PRtcIceServerStats
struct RTCRtpStreamStats * PRTCRtpStreamStats
struct RtcIceCandidateStats * PRtcIceCandidateStats
struct RtcInboundRtpStreamStats * PRtcInboundRtpStreamStats
struct RtcTransportStats * PRtcTransportStats
struct SignalingClientStats * PSignalingClientStats
struct RtcDataChannelStats * PRtcDataChannelStats
struct RtcIceCandidatePairStats * PRtcIceCandidatePairStats
struct RtcReceivedRtpStreamStats * PRtcReceivedRtpStreamStats
@ RTC_DATA_CHANNEL_STATE_OPEN
Set on opening data channel on embedded side or receiving onOpen event.
Definition: Stats.h:552
@ RTC_DATA_CHANNEL_STATE_CONNECTING
Set while creating data channel.
Definition: Stats.h:551
@ RTC_DATA_CHANNEL_STATE_CLOSED
TODO: Set the state to closed after adding onClose handler to data channel.
Definition: Stats.h:554
@ RTC_DATA_CHANNEL_STATE_CLOSING
TODO: Set the state to closed after adding onClosing handler to data channel.
Definition: Stats.h:553
Record of total number of packets sent per DSCP. Used by RTCOutboundRtpStreamStats object.
Definition: Stats.h:181
DOMString dscp
DSCP String.
Definition: Stats.h:182
UINT64 totalNumberOfPacketsSent
Number of packets sent.
Definition: Stats.h:183
: IceAgent profiling Stats related to the KVS ICE Agent
Definition: Stats.h:250
UINT64 iceCandidatePairNominationTime
Definition: Stats.h:256
UINT64 candidateGatheringTime
Definition: Stats.h:257
UINT64 srflxCandidateSetUpTime
Definition: Stats.h:253
UINT64 relayCandidateSetUpTime
Definition: Stats.h:254
UINT64 candidateGatheringEndTime
Definition: Stats.h:260
UINT64 localCandidateGatheringTime
Definition: Stats.h:251
UINT64 hostCandidateSetUpTime
Definition: Stats.h:252
UINT64 candidateGatheringStartTime
Definition: Stats.h:259
UINT64 iceAgentSetUpTime
Definition: Stats.h:258
UINT64 iceServerParsingTime
Definition: Stats.h:255
Custom data type to allow setting UINT32 data type to NULL since C does not support setting basic dat...
Definition: NullableDefs.h:105
Definition: Stats.h:628
UINT64 stunDnsResolutionTime
Time taken (ms) to complete STUN DNS resolution on the thread.
Definition: Stats.h:636
UINT64 dtlsSessionSetupTime
Time taken (ms) for DTLS handshake to complete.
Definition: Stats.h:632
UINT64 peerConnectionConnectedTime
Definition: Stats.h:630
UINT64 peerConnectionStartTime
Definition: Stats.h:629
UINT64 iceHolePunchingTime
Time taken (ms) for ICE agent set up to complete.
Definition: Stats.h:633
UINT64 peerConnectionCreationTime
Time taken (ms) for peer connection object creation time.
Definition: Stats.h:631
UINT64 closePeerConnectionTime
Time taken (ms) to close the peer connection.
Definition: Stats.h:634
UINT64 freePeerConnectionTime
Time taken (ms) to free the peer connection object.
Definition: Stats.h:635
Definition: Stats.h:172
UINT64 durationInSeconds
Time (seconds) spent in each state.
Definition: Stats.h:173
RTC_QUALITY_LIMITATION_REASON qualityLimitationReason
Quality limitation reason.
Definition: Stats.h:174
RTCRtpStreamStats captures stream stats that will be used as part of RTCSentRtpStreamStats report Ref...
Definition: Stats.h:314
DOMString kind
Definition: Stats.h:317
UINT32 ssrc
Definition: Stats.h:315
DOMString codecId
Definition: Stats.h:324
DOMString transportId
Definition: Stats.h:320
RTCSentRtpStreamStats will be used as part of outbound Rtp stats Reference: https://www....
Definition: Stats.h:332
UINT64 packetsSent
Definition: Stats.h:334
UINT64 bytesSent
Definition: Stats.h:335
RTCRtpStreamStats rtpStream
Definition: Stats.h:333
Definition: Stats.h:560
UINT32 messagesReceived
Represents the total number of API "message" events received.
Definition: Stats.h:568
UINT64 bytesSent
Represents the total number of payload bytes sent on this RTCDatachannel, i.e., not including headers...
Definition: Stats.h:567
RTC_DATA_CHANNEL_STATE state
The "readyState" value of the RTCDataChannel object.
Definition: Stats.h:565
INT32 dataChannelIdentifier
The "id" attribute of the RTCDataChannel object.
Definition: Stats.h:563
UINT64 bytesReceived
Represents the total number of bytes received on this RTCDatachannel, i.e., not including headers or ...
Definition: Stats.h:569
DOMString label
The "label" value of the RTCDataChannel object.
Definition: Stats.h:561
DOMString transportId
TODO: A stats object reference for the transport used to carry this datachannel.
Definition: Stats.h:564
DOMString protocol
The "protocol" value of the RTCDataChannel object.
Definition: Stats.h:562
UINT32 messagesSent
Represents the total number of API "message" events sent.
Definition: Stats.h:566
RtcIceCandidatePairStats Stats related to the local-remote ICE candidate pair.
Definition: Stats.h:192
DOUBLE totalRoundTripTime
Definition: Stats.h:214
UINT64 responsesReceived
The total number of connectivity check responses received.
Definition: Stats.h:225
UINT64 packetsSent
Total number of packets sent on this candidate pair;.
Definition: Stats.h:201
BOOL nominated
Definition: Stats.h:196
UINT64 bytesDiscardedOnSend
Total number of bytes for this candidate pair discarded due to socket errors.
Definition: Stats.h:227
UINT64 lastRequestTimestamp
Definition: Stats.h:210
UINT64 requestsSent
The total number of connectivity check requests sent (without retransmissions).
Definition: Stats.h:224
UINT64 responsesSent
The total number of connectivity check responses sent.
Definition: Stats.h:226
ICE_CANDIDATE_PAIR_STATE state
State of checklist for the local-remote candidate pair.
Definition: Stats.h:195
UINT32 packetsDiscardedOnSend
Total number of packets discarded for candidate pair due to socket errors,.
Definition: Stats.h:200
NullableUint32 circuitBreakerTriggerCount
Definition: Stats.h:198
UINT64 bytesSent
Total number of bytes (minus header and padding) sent on this candidate pair.
Definition: Stats.h:203
UINT64 lastPacketReceivedTimestamp
Definition: Stats.h:207
UINT64 lastResponseTimestamp
Represents the timestamp at which the last STUN response was received on this particular candidate pa...
Definition: Stats.h:213
DOUBLE availableIncomingBitrate
Definition: Stats.h:221
UINT64 firstRequestTimestamp
Represents the timestamp at which the first STUN request was sent on this particular candidate pair.
Definition: Stats.h:209
UINT64 bytesReceived
Total number of bytes (minus header and padding) received on this candidate pair.
Definition: Stats.h:204
DOUBLE currentRoundTripTime
Latest round trip time (seconds)
Definition: Stats.h:218
UINT64 lastPacketSentTimestamp
Definition: Stats.h:205
UINT64 requestsReceived
Total number of connectivity check requests received (including retransmission)
Definition: Stats.h:223
DOUBLE availableOutgoingBitrate
Definition: Stats.h:219
UINT64 packetsReceived
Total number of packets received on this candidate pair.
Definition: Stats.h:202
: RtcIceCandidateStats Stats related to a specific candidate in a pair
Definition: Stats.h:269
DOMString url
For local candidates this is the URL of the ICE server from which the candidate was obtained.
Definition: Stats.h:270
INT32 priority
Computed using the formula in https://tools.ietf.org/html/rfc5245#section-15.1.
Definition: Stats.h:276
INT32 port
Port number of the candidate.
Definition: Stats.h:277
DOMString relayProtocol
Definition: Stats.h:274
DOMString transportId
Not used currently. ID of object that was inspected for RTCTransportStats.
Definition: Stats.h:271
DOMString candidateType
Type of local/remote ICE candidate.
Definition: Stats.h:278
DOMString protocol
Valid values: UDP, TCP.
Definition: Stats.h:273
: RtcIceServerStats Stats related to the ICE Server
Definition: Stats.h:235
UINT64 totalRequestsSent
Total amount of requests that have been sent to the server.
Definition: Stats.h:241
INT32 port
Port number used by client.
Definition: Stats.h:240
UINT32 iceServerIndex
Definition: Stats.h:238
UINT64 totalResponsesReceived
Total number of responses received from the server.
Definition: Stats.h:242
UINT64 totalRoundTripTime
Sum of RTTs of all the requests for which response has been received.
Definition: Stats.h:243
DOMString url
STUN/TURN server URL.
Definition: Stats.h:236
DOMString protocol
Valid values: UDP, TCP.
Definition: Stats.h:237
The RTCInboundRtpStreamStats dictionary represents the measurement metrics for the incoming RTP media...
Definition: Stats.h:448
DOUBLE jitterBufferDelay
Definition: Stats.h:515
DOUBLE totalDecodeTime
Definition: Stats.h:470
DOMString trackId
Definition: Stats.h:450
UINT64 insertedSamplesForDeceleration
Definition: Stats.h:530
UINT64 concealedSamples
Definition: Stats.h:525
DOMHighResTimeStamp lastPacketReceivedTimestamp
Definition: Stats.h:486
UINT64 samplesDecodedWithCelt
Definition: Stats.h:523
DOMHighResTimeStamp estimatedPlayoutTimestamp
TODO This is the estimated playout time of this receiver's track.
Definition: Stats.h:514
DOUBLE totalSquaredInterFrameDelay
Definition: Stats.h:477
UINT64 removedSamplesForAcceleration
Definition: Stats.h:532
UINT64 jitterBufferEmittedCount
Definition: Stats.h:517
UINT64 qpSum
Definition: Stats.h:466
BOOL voiceActivityFlag
Definition: Stats.h:481
DOUBLE framesPerSecond
TODO Only valid for video. The number of decoded frames in the last second.
Definition: Stats.h:465
RtcReceivedRtpStreamStats received
Definition: Stats.h:449
DOUBLE audioLevel
Definition: Stats.h:534
UINT64 concealmentEvents
Definition: Stats.h:528
UINT64 packetsDuplicated
Definition: Stats.h:504
DOUBLE totalSamplesDuration
Definition: Stats.h:540
UINT64 packetsFailedDecryption
Definition: Stats.h:502
UINT32 pliCount
TODO Only valid for video. Count the total number of Picture Loss Indication (PLI) packets sent by th...
Definition: Stats.h:512
DOMString decoderImplementation
TODO Identifies the decoder implementation used. This is useful for diagnosing interoperability issue...
Definition: Stats.h:544
UINT64 bytesReceived
Total number of bytes received for this SSRC. Calculated as defined in [RFC3550] section 6....
Definition: Stats.h:501
UINT32 sliCount
TODO Only valid for video. Count the total number of Slice Loss Indication (SLI) packets sent by this...
Definition: Stats.h:513
UINT64 silentConcealedSamples
TODO Only valid for audio. The total number of concealed samples inserted that are "silent".
Definition: Stats.h:527
UINT8 frameBitDepth
Definition: Stats.h:463
UINT32 firCount
TODO Only valid for video. Count the total number of Full Intra Request (FIR) packets sent by this re...
Definition: Stats.h:511
UINT64 headerBytesReceived
Definition: Stats.h:491
DOMString receiverId
TODO The stats ID used to look up the RTCAudioReceiverStats or RTCVideoReceiverStats object receiving...
Definition: Stats.h:452
UINT16 frameWidth
Definition: Stats.h:459
UINT64 fecPacketsReceived
Definition: Stats.h:494
UINT32 framesReceived
Definition: Stats.h:542
UINT32 nackCount
TODO Count the total number of Negative ACKnowledgement (NACK) packets sent by this receiver.
Definition: Stats.h:510
DOUBLE totalInterFrameDelay
Definition: Stats.h:473
DOMString remoteId
TODO The remoteId is used for looking up the remote RTCRemoteOutboundRtpStreamStats object for the sa...
Definition: Stats.h:453
UINT32 keyFramesDecoded
Definition: Stats.h:456
UINT16 frameHeight
Definition: Stats.h:461
UINT32 framesDecoded
Definition: Stats.h:454
DOUBLE totalAudioEnergy
Definition: Stats.h:538
UINT64 totalSamplesReceived
Definition: Stats.h:519
UINT64 samplesDecodedWithSilk
Definition: Stats.h:521
UINT64 fecPacketsDiscarded
Definition: Stats.h:497
DOUBLE averageRtcpInterval
Definition: Stats.h:488
RtcOutboundRtpStreamStats Gathers stats for media stream from the embedded device Note: RTCOutboundRt...
Definition: Stats.h:347
UINT64 headerBytesSent
Total number of RTP header and padding bytes sent for this SSRC.
Definition: Stats.h:375
UINT64 totalSamplesSent
TODO Only valid for audio. The total number of samples that have been sent over this RTP stream.
Definition: Stats.h:383
UINT32 frameBitDepth
Only valid for video. Represents the bit depth per pixel of the last encoded frame....
Definition: Stats.h:366
DOMString senderId
TODO The stats ID used to look up the RTCAudioSenderStats or RTCVideoSenderStats object sending this ...
Definition: Stats.h:353
UINT64 retransmittedBytesSent
The total number of PAYLOAD bytes retransmitted for this SSRC.
Definition: Stats.h:378
UINT32 packetsDiscardedOnSend
Total number of RTP packets for this SSRC that have been discarded due to socket errors.
Definition: Stats.h:357
UINT64 averageRtcpInterval
The average RTCP interval between two consecutive compound RTCP packets.
Definition: Stats.h:388
DOMString mediaSourceId
TODO ID representing the current media source.
Definition: Stats.h:352
RTC_QUALITY_LIMITATION_REASON qualityLimitationReason
Only valid for video.
Definition: Stats.h:391
INT32 fecPacketsSent
TODO Total number of RTP FEC packets sent for this SSRC. Can also be incremented while sending FEC pa...
Definition: Stats.h:373
UINT64 retransmittedPacketsSent
The total number of packets that were retransmitted for this SSRC.
Definition: Stats.h:377
RTCSentRtpStreamStats sent
Comprises of information such as packetsSent and bytesSent.
Definition: Stats.h:348
DOMString encoderImplementation
Identifies the encoder implementation used.
Definition: Stats.h:356
UINT64 targetBitrate
Current target TIAS bitrate configured for this particular SSRC.
Definition: Stats.h:379
UINT64 bytesDiscardedOnSend
Total number of bytes for this SSRC that have been discarded due to socket errors.
Definition: Stats.h:376
DscpPacketsSentRecord perDscpPacketsSent
Total number of packets sent for this SSRC, per DSCP.
Definition: Stats.h:390
UINT64 qpSum
TODO Only valid for video. The sum of the QP values of frames encoded by this sender....
Definition: Stats.h:382
UINT32 frameHeight
Only valid for video. Represents the height of the last encoded frame.
Definition: Stats.h:365
UINT64 samplesEncodedWithCelt
TODO Only valid for audio and when the audio codec is Opus. Represnets only CELT portion of codec.
Definition: Stats.h:385
UINT32 pliCount
Only valid for video. Count the total number of Picture Loss Indication (PLI) packets received by thi...
Definition: Stats.h:369
UINT32 framesSent
Only valid for video. Represents the total number of frames sent on this RTP stream.
Definition: Stats.h:358
UINT32 keyFramesEncoded
Only valid for video. It represents the total number of key frames encoded successfully in the RTP St...
Definition: Stats.h:362
BOOL voiceActivityFlag
Definition: Stats.h:349
UINT32 sliCount
Only valid for video. Count the total number of Slice Loss Indication (SLI) packets received by this ...
Definition: Stats.h:370
UINT32 firCount
Only valid for video. Count the total number of Full Intra Request (FIR) packets received by this sen...
Definition: Stats.h:368
UINT64 samplesEncodedWithSilk
TODO Only valid for audio and when the audio codec is Opus. Represnets only SILK portion of codec.
Definition: Stats.h:384
DOMString remoteId
TODO ID to look up the remote RTCRemoteInboundRtpStreamStats object for the same SSRC.
Definition: Stats.h:354
UINT32 nackCount
Count the total number of Negative ACKnowledgement (NACK) packets received by this sender.
Definition: Stats.h:367
QualityLimitationDurationsRecord qualityLimitationDurations
Total time (seconds) spent in each reason state.
Definition: Stats.h:389
UINT32 frameWidth
Only valid for video. Represents the width of the last encoded frame.
Definition: Stats.h:364
UINT32 framesEncoded
Only valid for video. It represents the total number of frames successfully encoded for this RTP medi...
Definition: Stats.h:361
UINT64 totalPacketSendDelay
Total time (seconds) packets have spent buffered locally before being transmitted onto the network.
Definition: Stats.h:387
DOUBLE framesPerSecond
Only valid for video. The number of encoded frames during the last second.
Definition: Stats.h:381
DOMString rid
TODO Exposes the rid encoding parameter of this RTP stream if it has been set, otherwise it is undefi...
Definition: Stats.h:355
UINT64 totalEncodeTime
Total number of milliseconds that has been spent encoding the framesEncoded frames of the stream.
Definition: Stats.h:386
UINT32 qualityLimitationResolutionChanges
Definition: Stats.h:371
UINT64 lastPacketSentTimestamp
The timestamp in milliseconds at which the last packet was sent for this SSRC.
Definition: Stats.h:374
UINT32 framesDiscardedOnSend
Total number of video frames that have been discarded for this SSRC due to socket errors.
Definition: Stats.h:363
DOMString trackId
ID representing current track attached to the sender of the stream.
Definition: Stats.h:351
UINT64 totalEncodedBytesTarget
Increased by the target frame size in bytes every time a frame has been encoded.
Definition: Stats.h:380
UINT32 hugeFramesSent
Definition: Stats.h:359
Definition: Stats.h:408
RTCRtpStreamStats rtpStream
Definition: Stats.h:409
UINT64 packetsReceived
Total number of RTP packets received for this SSRC.
Definition: Stats.h:410
UINT32 burstLossCount
Definition: Stats.h:420
UINT64 packetsDiscarded
Definition: Stats.h:414
UINT32 burstDiscardCount
TODO The cumulative number of bursts of discarded RTP packets, Appendix A (e) of [RFC8015].
Definition: Stats.h:422
DOUBLE gapDiscardRate
Definition: Stats.h:429
DOUBLE burstLossRate
Definition: Stats.h:423
DOUBLE jitter
Packet Jitter measured in seconds for this SSRC. Calculated as defined in section 6....
Definition: Stats.h:413
UINT32 fullFramesLost
Definition: Stats.h:438
DOUBLE burstDiscardRate
Definition: Stats.h:425
UINT64 burstPacketsDiscarded
TODO The cumulative number of RTP packets discarded during discard bursts, Appendix A (b) of [RFC7003...
Definition: Stats.h:419
INT64 packetsLost
Definition: Stats.h:411
UINT32 framesDropped
Definition: Stats.h:431
UINT64 burstPacketsLost
TODO The cumulative number of RTP packets lost during loss bursts, Appendix A (c) of [RFC6958].
Definition: Stats.h:418
UINT64 packetsRepaired
TODO The cumulative number of lost RTP packets repaired after applying an error-resilience mechanism ...
Definition: Stats.h:417
DOUBLE gapLossRate
Definition: Stats.h:427
UINT32 partialFramesLost
Definition: Stats.h:434
RTCRemoteInboundRtpStreamStats Represents the remote endpoint's measurement metrics for a particular ...
Definition: Stats.h:399
DOUBLE fractionLost
The fraction packet loss reported for this SSRC.
Definition: Stats.h:403
UINT64 totalRoundTripTime
The cumulative sum of all round trip time measurements in seconds since the beginning of the session.
Definition: Stats.h:402
UINT64 roundTripTime
Estimated round trip time (milliseconds) for this SSRC based on the RTCP timestamps.
Definition: Stats.h:401
DOMString localId
Used to look up RTCOutboundRtpStreamStats for the SSRC.
Definition: Stats.h:400
UINT64 roundTripTimeMeasurements
Total number of RTCP RR blocks received for this SSRC that contain a valid round trip time.
Definition: Stats.h:405
UINT64 reportsReceived
Total number of RTCP RR blocks received for this SSRC.
Definition: Stats.h:404
RTCStatsObject Represents an object passed in by the application developer which will be populated in...
Definition: Stats.h:643
RtcIceCandidateStats localIceCandidateStats
local ICE Candidate stats object
Definition: Stats.h:645
RtcIceCandidatePairStats iceCandidatePairStats
ICE Candidate Pair stats object.
Definition: Stats.h:644
RtcOutboundRtpStreamStats outboundRtpStreamStats
Outbound RTP Stream stats object.
Definition: Stats.h:649
RtcRemoteInboundRtpStreamStats remoteInboundRtpStreamStats
Remote Inbound RTP Stream stats object.
Definition: Stats.h:650
RtcDataChannelStats rtcDataChannelStats
Definition: Stats.h:652
RtcIceServerStats iceServerStats
ICE Server Pair stats object.
Definition: Stats.h:647
RtcInboundRtpStreamStats inboundRtpStreamStats
Inbound RTP Stream stats object.
Definition: Stats.h:651
RtcTransportStats transportStats
Transport stats object.
Definition: Stats.h:648
RtcIceCandidateStats remoteIceCandidateStats
remote ICE Candidate stats object
Definition: Stats.h:646
RtcTransportStats Represents the stats corresponding to an RTCDtlsTransport and its underlying RTCIce...
Definition: Stats.h:287
DOMString rtcpTransportStatsId
ID of the transport that gives stats for the RTCP component.
Definition: Stats.h:288
RTC_DTLS_TRANSPORT_STATE_STATS dtlsState
Set to the current value of the "state" attribute of the underlying RTCDtlsTransport.
Definition: Stats.h:302
UINT64 bytesReceived
The total number of payload bytes received on this PeerConnection (excluding header and padding)
Definition: Stats.h:306
UINT64 packetsSent
Total number of packets sent over the transport.
Definition: Stats.h:303
DOMString localCertificateId
For components where DTLS is negotiated, give local certificate.
Definition: Stats.h:290
DOMString selectedCandidatePairId
ID of the object inspected to produce RtcIceCandidatePairStats.
Definition: Stats.h:289
UINT64 bytesSent
The total number of payload bytes sent on this PeerConnection (excluding header and padding)
Definition: Stats.h:305
UINT64 packetsReceived
Total number of packets received over the transport.
Definition: Stats.h:304
RTC_ICE_ROLE iceRole
Set to the current value of the "role" attribute of the underlying RTCDtlsTransport's "transport".
Definition: Stats.h:301
UINT32 selectedCandidatePairChanges
The number of times that the selected candidate pair of this transport has changed.
Definition: Stats.h:307
DOMString remoteCertificateId
For components where DTLS is negotiated, give remote certificate.
Definition: Stats.h:291
SignalingClientMetrics Represent the stats related to the KVS WebRTC SDK signaling client.
Definition: Stats.h:575
UINT64 dpApiCallLatency
Latency (in 100 ns) incurred per backend API call for the data plane APIs.
Definition: Stats.h:589
UINT64 answerTime
Definition: Stats.h:624
UINT64 offerReceivedTime
Definition: Stats.h:623
UINT64 connectionDuration
Duration of connection (in 100 ns)
Definition: Stats.h:591
UINT64 connectCallTime
Time (ms) taken to execute connectChannel call.
Definition: Stats.h:616
UINT64 createChannelEndTime
Definition: Stats.h:585
UINT64 getSignalingChannelEndpointStartTime
Definition: Stats.h:578
UINT64 getIceServerConfigEndTime
Definition: Stats.h:581
UINT64 getIceConfigCallTime
Time (ms) taken to execute getIceServerConfig call.
Definition: Stats.h:615
UINT32 numberOfErrors
Definition: Stats.h:595
UINT64 describeCallTime
Time (ms) taken to execute describeChannel call.
Definition: Stats.h:611
UINT64 connectStartTime
Definition: Stats.h:586
UINT64 getTokenCallTime
Time (ms) taken to get credentials for signaling.
Definition: Stats.h:610
UINT64 getIceServerConfigStartTime
Definition: Stats.h:580
UINT64 describeChannelEndTime
Definition: Stats.h:577
UINT64 offerToAnswerTime
Definition: Stats.h:622
UINT64 getTokenStartTime
Definition: Stats.h:582
UINT64 describeChannelStartTime
Definition: Stats.h:576
UINT64 cpApiCallLatency
Latency (in 100 ns) incurred per backend API call for the control plane APIs.
Definition: Stats.h:588
UINT64 joinSessionCallTime
Time (ms) taken to execute joinSession call.
Definition: Stats.h:617
UINT32 numberOfMessagesSent
Number of messages sent by the signaling client.
Definition: Stats.h:592
UINT64 describeMediaCallTime
Time (ms) taken to execute describeChannel call.
Definition: Stats.h:612
UINT32 iceRefreshCount
Number of times the ICE is refreshed.
Definition: Stats.h:594
UINT64 createChannelStartTime
Definition: Stats.h:584
UINT32 numberOfReconnects
Number of reconnects in the session.
Definition: Stats.h:608
UINT32 apiCallRetryCount
Number of retries due to API call failures in the state machine.
Definition: Stats.h:609
UINT64 joinSessionToOfferRecvTime
Total time (ms) taken from joinSession call until offer is received.
Definition: Stats.h:625
UINT64 connectClientTime
Total time (ms) taken to connect the signaling client which includes connecting to the signaling chan...
Definition: Stats.h:621
UINT64 getTokenEndTime
Definition: Stats.h:583
UINT64 getEndpointCallTime
Time (ms) taken to execute getEndpoint call.
Definition: Stats.h:614
UINT64 getSignalingChannelEndpointEndTime
Definition: Stats.h:579
UINT64 connectEndTime
Definition: Stats.h:587
UINT64 fetchClientTime
Total time (ms) taken to fetch signaling client which includes describe, create, get endpoint and get...
Definition: Stats.h:620
UINT64 createClientTime
Total time (ms) taken to create signaling client which includes getting credentials.
Definition: Stats.h:618
UINT64 signalingClientUptime
Client uptime (in 100 ns). Timestamp will be recorded at every SIGNALING_CLIENT_STATE_CONNECTED.
Definition: Stats.h:590
UINT32 numberOfRuntimeErrors
Definition: Stats.h:600
UINT32 numberOfMessagesReceived
Number of messages received by the signaling client.
Definition: Stats.h:593
UINT64 createCallTime
Time (ms) taken to execute createChannel call.
Definition: Stats.h:613