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
networkTransportDelayandjitterBufferDelayfrom 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.