Agora Java API Reference for Android

Public Attributes | List of all members
io.agora.rtc2.IRtcEngineEventHandler.RemoteAudioStats Class Reference

## Public Attributes
int | uid
int | quality
int | networkTransportDelay
int | jitterBufferDelay
int | audioLossRate
int | numChannels
int | receivedSampleRate
int | receivedBitrate
int | totalFrozenTime
int | frozenRate
int | mosValue
int | frozenRateByCustomPlcCount
int | plcCount
long | totalActiveTime
long | publishDuration
int | qoeQuality
int | qualityChangedReason
int | rxAudioBytes
int | e2eDelay

## Detailed Description

Statistics of the remote audio.

## Member Data Documentation

## ◆ uid

int io.agora.rtc2.IRtcEngineEventHandler.RemoteAudioStats.uid

ID of the user sending the audio streams.

## ◆ quality

int io.agora.rtc2.IRtcEngineEventHandler.RemoteAudioStats.quality

The receiving audio quality:

- `QUALITY_UNKNOWN(0)`: The quality is unknown.
- `QUALITY_EXCELLENT(1)`: The quality is excellent.
- `QUALITY_GOOD QUALITY_GOOD(2)`: The quality is quite good, but the bitrate may be slightly lower than excellent.
- `QUALITY_POOR(3)`: Users can feel the communication slightly impaired.
- `QUALITY_BAD(4)`: Users can communicate not very smoothly.
- `QUALITY_VBAD(5)`: The quality is so bad that users can barely communicate.
- `QUALITY_DOWN(6)`: The network is disconnected and users cannot communicate at all.

## ◆ networkTransportDelay

int io.agora.rtc2.IRtcEngineEventHandler.RemoteAudioStats.networkTransportDelay

The network delay from the sender to the receiver.

## ◆ jitterBufferDelay

int io.agora.rtc2.IRtcEngineEventHandler.RemoteAudioStats.jitterBufferDelay

The jitter buffer delay at the receiver.

## ◆ audioLossRate

int io.agora.rtc2.IRtcEngineEventHandler.RemoteAudioStats.audioLossRate

The packet loss rate in the reported interval.

## ◆ numChannels

int io.agora.rtc2.IRtcEngineEventHandler.RemoteAudioStats.numChannels

The number of channels.

## ◆ receivedSampleRate

int io.agora.rtc2.IRtcEngineEventHandler.RemoteAudioStats.receivedSampleRate

The sample rate (Hz) of the received audio stream, represented by an instantaneous value.

## ◆ receivedBitrate

int io.agora.rtc2.IRtcEngineEventHandler.RemoteAudioStats.receivedBitrate

The bitrate (Kbps) of the received audio stream, represented by an instantaneous value.

## ◆ totalFrozenTime

int io.agora.rtc2.IRtcEngineEventHandler.RemoteAudioStats.totalFrozenTime

The total freeze time (ms) of the remote audio stream after the remote user joins the channel. In a session, audio freeze occurs when the audio frame loss rate reaches 4% within two seconds.

## ◆ frozenRate

int io.agora.rtc2.IRtcEngineEventHandler.RemoteAudioStats.frozenRate

The total audio freeze time as a percentage (%) of the total time when the audio is available.

## ◆ mosValue

int io.agora.rtc2.IRtcEngineEventHandler.RemoteAudioStats.mosValue

The quality of the remote audio stream as determined by the Agora real-time audio MOS (Mean Opinion Score) measurement method in the reported interval. The return value ranges from 0 to 500. Dividing the return value by 100 gets the MOS score, which ranges from 0 to 5. The higher the score, the better the audio quality.

The subjective perception of audio quality corresponding to the Agora real-time audio MOS scores is as follows:

| MOS score | Perception of audio quality | |--------------—|----------------------------------------------------------------------------------------------------------------------------------------------------------—| | Greater than 4 | Excellent. The audio sounds clear and smooth. | | From 3.5 to 4 | Good. The audio has some perceptible impairment, but still sounds clear. | | From 3 to 3.5 | Fair. The audio freezes occasionally and requires attentive listening. | | From 2.5 to 3 | Poor. The audio sounds choppy and requires considerable effort to understand. | | From 2 to 2.5 | Bad. The audio has occasional noise. Consecutive audio dropouts occur, resulting in some information loss. The users can communicate only with difficulty. | | Less than 2 | Very bad. The audio has persistent noise. Consecutive audio dropouts are frequent, resulting in severe information loss. Communication is nearly impossible. |

## ◆ frozenRateByCustomPlcCount

int io.agora.rtc2.IRtcEngineEventHandler.RemoteAudioStats.frozenRateByCustomPlcCount

If the packet loss concealment (PLC) occurs for N consecutive times, freeze is considered as PLC occurring for M consecutive times. freeze cnt = (n_plc - n) / m

## ◆ plcCount

int io.agora.rtc2.IRtcEngineEventHandler.RemoteAudioStats.plcCount

The number of audio packet loss concealment

## ◆ totalActiveTime

long io.agora.rtc2.IRtcEngineEventHandler.RemoteAudioStats.totalActiveTime

The total time (ms) when the remote user neither stops sending the audio stream nor disables the audio module after joining the channel.

## ◆ publishDuration

long io.agora.rtc2.IRtcEngineEventHandler.RemoteAudioStats.publishDuration

The total publish duration (ms) of the remote audio stream.

## ◆ qoeQuality

int io.agora.rtc2.IRtcEngineEventHandler.RemoteAudioStats.qoeQuality

Quality of experience (QoE) of the local user when receiving a remote audio stream. See #EXPERIENCE_QUALITY_TYPE.

- EXPERIENCE_QUALITY_GOOD(0)
- EXPERIENCE_QUALITY_BAD(1)

## ◆ qualityChangedReason

int io.agora.rtc2.IRtcEngineEventHandler.RemoteAudioStats.qualityChangedReason

The reason for poor QoE of the local user when receiving a remote audio stream. See #EXPERIENCE_POOR_REASON.

## ◆ rxAudioBytes

int io.agora.rtc2.IRtcEngineEventHandler.RemoteAudioStats.rxAudioBytes

Total number of audio bytes received (bytes) before network countermeasures, represented by an aggregate value.

## ◆ e2eDelay

int io.agora.rtc2.IRtcEngineEventHandler.RemoteAudioStats.e2eDelay

The end-to-end delay (ms) from the sender to the receiver.