RemoteVideoStats class

Statistics of the remote video stream.

Annotations
  • @JsonSerializable.new(explicitToJson: true, includeIfNull: false)

Properties

avSyncTimeMs → int?
Time (ms) that audio leads video. If the value is negative, it means audio lags behind video.
final
decoderOutputFrameRate → int?
Output frame rate of the remote video decoder, in fps.
final
delay → int?
Delay (ms). Deprecated: In audio and video scenarios with audio-video sync mechanism, you can refer to the values of networkTransportDelay and jitterBufferDelay in RemoteAudioStats to understand video delay data.
final
e2eDelay → int?
End-to-end video delay (ms), i.e., the total time from video capture by the remote user to video rendering by the local user.
final
frameLossRate → int?
Remote video frame loss rate (%).
final
frozenRate → int?
Percentage (%) of the total duration of video freezes experienced by the remote user after joining the channel relative to the total effective video duration. Effective video duration refers to the time after the remote user joins the channel during which the video is neither stopped nor disabled.
final
hashCode → int
The hash code for this object.
no setterinherited
height → int?
Video stream height (pixels).
final
mosValue → int?
Quality of the remote audio stream during the statistics period. The quality is measured using Agora's real-time audio MOS (Mean Opinion Score) method. The return value ranges from 0, 500; divide by 100 to get the MOS score, ranging from 0 to 5. The higher the score, the better the audio quality. The subjective audio quality corresponding to the Agora MOS score is: Greater than 4: Excellent audio quality, clear and smooth. 3.5 - 4: Good audio quality, occasional distortion but still clear. 3 - 3.5: Fair audio quality, occasional stuttering, not very smooth, requires some attention to hear clearly. 2.5 - 3: Poor audio quality, frequent stuttering, requires concentration to hear clearly. 2 - 2.5: Very poor audio quality, occasional noise, partial semantic loss, difficult to communicate. Less than 2: Extremely poor audio quality, frequent noise, significant semantic loss, communication impossible.
final
packetLossRate → int?
Packet loss rate (%) of the remote video after applying anti-packet-loss techniques.
final
publishDuration → int?
Total published duration (ms) of the remote video stream.
final
receivedBitrate → int?
Bitrate received (Kbps) since last statistics.
final
rendererOutputFrameRate → int?
Output frame rate of the remote video renderer, in fps.
final
runtimeType → Type
A representation of the runtime type of the object.
no setterinherited
rxStreamType → VideoStreamType?
Video stream type, either high or low. See VideoStreamType.
final
totalActiveTime → int?
Effective video duration (ms). The total effective video duration is the time during which the remote user or host has joined the channel and neither stopped sending the video stream nor disabled the video module.
final
totalFrozenTime → int?
Total duration (ms) of video freezes experienced by the remote user after joining the channel. During a call, if the video frame rate is set to no less than 5 fps and the interval between two consecutive rendered frames exceeds 500 ms, it is counted as a video freeze.
final
uid → int?
User ID that identifies which user's video stream it is.
final
width → int?
Video stream width (pixels).
final

Methods

noSuchMethod(Invocation invocation) → dynamic
Invoked when a nonexistent method or property is accessed.
inherited
toJson() → Map<String, dynamic>
toString() → String
A string representation of this object.
inherited

Operators

operator ==(Object other) → bool
The equality operator.
inherited