OTSubscriberKitVideoNetworkStats

Describes video statistics for a subscriber. See [OTSubscriberKit setNetworkStatsDelegate:].

Properties

Name Type Description
videoPacketsLost uint64_t The estimated number of video packets lost by this subscriber.
videoPacketsReceived uint64_t The number of video packets received by this subscriber.
videoBytesReceived uint64_t The number of video bytes received by this subscriber.
timestamp double The timestamp, in milliseconds since the Unix epoch, for when these stats were gathered.
senderStats OTSenderStats * Sender-side network estimation stats. This property is optional and may be nil if data is not available. Due to network latency, sender statistics may not be immediately available after the initial stats request. Deprecated: Use subscriber media link stats (OTSubscriberKitMediaLinkStats) instead for complete network metrics including remote publisher transport and network degradation source information.
width int32_t The width of the video frame, in pixels.
height int32_t The height of the video frame, in pixels.
decodedFrameRate double The decoded frame rate (in frames per second).
bitrate int64_t The bitrate, in bits per second.
totalBitrate int64_t The total bitrate, including RTP headers, padding, and payload, in bits per second.
pauseCount int64_t The number of times the subscriber’s video playback has paused. Video is considered paused if the time elapsed since the last rendered frame exceeds 5 seconds.
totalPausesDuration int64_t The cumulative duration (in milliseconds) of all video pauses.
freezeCount int64_t The number of times the subscriber’s video has frozen. A freeze is defined according to https://www.w3.org/TR/webrtc-stats/#dom-rtcinboundrtpstreamstats-freezecount
totalFreezesDuration int64_t The cumulative duration (in milliseconds) of all video freezes.
codec NSString * The codec currently used for this subscriber.
senderQualityRestriction OTQualityRestriction Indicates sender–imposed video quality restrictions, if any. This reflects limitations applied at the current sending hop (e.g., the Media Router or direct publisher in a P2P topology). May be limited if sender-side stats are disabled.
remotePublisherQualityRestriction OTQualityRestriction Indicates remote publisher imposed video quality restrictions, if any. This reflects limitations applied by the upstream originating publisher that ultimately affect the received stream quality. May be limited if sender-side stats are disabled.

Methods

Name Description
initWithPacketsLost:packetsReceived:bytesReceived:timestamp:(packetsLost, packetsReceived, bytesReceived, timestamp) → {instancetype}
initWithPacketsLost:packetsReceived:bytesReceived:timestamp:senderStats:(packetsLost, packetsReceived, bytesReceived, timestamp, senderStats) → {instancetype}
initWithPacketsLost:packetsReceived:bytesReceived:timestamp:senderStats:width:height:decodedFrameRate:bitrate:totalBitrate:pauseCount:totalPausesDuration:freezeCount:totalFreezesDuration:codec:senderQualityRestriction:remotePublisherQualityRestriction:(packetsLost, packetsReceived, bytesReceived, timestamp, senderStats, width, height, decodedFrameRate, bitrate, totalBitrate, pauseCount, totalPausesDuration, freezeCount, totalFreezesDuration, codec, senderQualityRestriction, remotePublisherQualityRestriction) → {instancetype}

initWithPacketsLost:packetsReceived:bytesReceived:timestamp:(packetsLost, packetsReceived, bytesReceived, timestamp) → {instancetype}

Parameters:
Name Type Description
packetsLost uint64_t
packetsReceived uint64_t
bytesReceived uint64_t
timestamp double
Returns:

initWithPacketsLost:packetsReceived:bytesReceived:timestamp:senderStats:(packetsLost, packetsReceived, bytesReceived, timestamp, senderStats) → {instancetype}

Parameters:
Name Type Description
packetsLost uint64_t
packetsReceived uint64_t
bytesReceived uint64_t
timestamp double
senderStats OTSenderStats *
Returns:

initWithPacketsLost:packetsReceived:bytesReceived:timestamp:senderStats:width:height:decodedFrameRate:bitrate:totalBitrate:pauseCount:totalPausesDuration:freezeCount:totalFreezesDuration:codec:senderQualityRestriction:remotePublisherQualityRestriction:(packetsLost, packetsReceived, bytesReceived, timestamp, senderStats, width, height, decodedFrameRate, bitrate, totalBitrate, pauseCount, totalPausesDuration, freezeCount, totalFreezesDuration, codec, senderQualityRestriction, remotePublisherQualityRestriction) → {instancetype}

Parameters:
Name Type Description
packetsLost uint64_t
packetsReceived uint64_t
bytesReceived uint64_t
timestamp double
senderStats OTSenderStats *
width int32_t
height int32_t
decodedFrameRate double
bitrate int64_t
totalBitrate int64_t
pauseCount int64_t
totalPausesDuration int64_t
freezeCount int64_t
totalFreezesDuration int64_t
codec NSString *
senderQualityRestriction OTQualityRestriction
remotePublisherQualityRestriction OTQualityRestriction
Returns: