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 |