RemoteVideoStats

Provides statistics of the remote video stream.

struct RemoteVideoStats {
  uid_t uid;
  int delay __deprecated;
  int e2eDelay;
  int width;
  int height;
  int receivedBitrate;
  int decoderInputFrameRate;
  int decoderOutputFrameRate;
  int rendererOutputFrameRate;
  int frameLossRate;
  int packetLossRate;
  VIDEO_STREAM_TYPE rxStreamType;
  int totalFrozenTime;
  int frozenRate;
  int avSyncTimeMs;
  int totalActiveTime;
  int publishDuration;
  int mosValue;
  unsigned int rxVideoBytes;
};

Properties

uid
User ID of the remote user sending the video stream.
delay
Video delay (ms).
Note: @deprecated In audio-video sync scenarios, you can use networkTransportDelay and jitterBufferDelay from RemoteAudioStats to get video delay data.
e2eDelay
End-to-end video delay (ms), from the time the remote user captures the video to when the local user receives and renders it.
width
Video width (pixels).
height
Video height (pixels).
receivedBitrate
Bitrate (Kbps) of the received remote video since the last report.
decoderInputFrameRate
Input frame rate (fps) for decoding the remote video.
decoderOutputFrameRate
Output frame rate (fps) after decoding the remote video.
rendererOutputFrameRate
Output frame rate (fps) of the rendered remote video.
frameLossRate
Frame loss rate (%) of the remote video.
packetLossRate
Packet loss rate (%) of the remote video after applying anti-packet-loss techniques.
rxStreamType
Video stream type. See VIDEO_STREAM_TYPE.
totalFrozenTime
Total duration (ms) of video freeze after the remote user joins the channel. In video calls with frame rates no lower than 5 fps, if the interval between two renderable video frames exceeds 500 ms, it is considered a video freeze.
frozenRate
Percentage (%) of video freeze duration relative to the total available video time. Video is considered available if the remote user has not stopped sending video or disabled the video module after joining the channel.
avSyncTimeMs
Time (ms) that audio leads video.
Note: If this value is negative, it means audio lags behind video.
totalActiveTime
Total active time (ms) of the video. Video is considered available if the remote user or host has not stopped sending video or disabled the video module after joining the channel.
publishDuration
Total duration (ms) of the remote video stream.
mosValue
Video quality score of the remote stream during the reporting interval, calculated using Agora’s real-time video MOS (Mean Opinion Score) algorithm. The value ranges from [0, 500]. Divide by 100 to get the MOS score, ranging from 0 to 5. Higher scores indicate better video quality.
Note: For texture video data, this parameter always returns 0.
rxVideoBytes
Total number of received video bytes (bytes), including FEC bytes, aggregated.