Agora RTC Objective-C API Reference  Refactor
Properties
AgoraRtcRemoteAudioStats Class Reference

Inherits <NSObject>.

Properties

NSUInteger uid
 
NSUInteger quality
 
NSUInteger networkTransportDelay
 
NSUInteger jitterBufferDelay
 
NSUInteger audioLossRate
 
NSUInteger numChannels
 
NSUInteger receivedSampleRate
 
NSUInteger receivedBitrate
 
NSUInteger totalFrozenTime
 
NSUInteger totalActiveTime
 
NSInteger publishDuration
 
NSUInteger frozenRate
 
NSUInteger mosValue
 
NSUInteger frozenRateByCustomPlcCount
 
NSUInteger plcCount
 
NSUInteger frozenCntByCustom
 
NSUInteger frozenTimeByCustom
 
AgoraExperienceQuality qoeQuality
 
AgoraExperiencePoorReason qualityChangedReason
 
NSUInteger rxAudioBytes
 
NSInteger e2eDelay
 

Property Documentation

◆ uid

- (NSUInteger) uid
readwritenonatomicassign

The user ID of the remote user.

◆ quality

- (NSUInteger) quality
readwritenonatomicassign

The quality of the audio stream sent by the user. See AgoraNetworkQuality.

◆ networkTransportDelay

- (NSUInteger) networkTransportDelay
readwritenonatomicassign

The network delay (ms) from the sender to the receiver.

◆ jitterBufferDelay

- (NSUInteger) jitterBufferDelay
readwritenonatomicassign

The network delay (ms) from the audio receiver to the jitter buffer.

Note
When the receiving end is an audience member and audienceLatencyLevel of AgoraClientRoleOptions is 1, this parameter does not take effect.

◆ audioLossRate

- (NSUInteger) audioLossRate
readwritenonatomicassign

The frame loss rate (%) of the remote audio stream in the reported interval.

◆ numChannels

- (NSUInteger) numChannels
readwritenonatomicassign

The number of audio channels.

◆ receivedSampleRate

- (NSUInteger) receivedSampleRate
readwritenonatomicassign

The sampling rate of the received audio stream in the reported interval.

◆ receivedBitrate

- (NSUInteger) receivedBitrate
readwritenonatomicassign

The average bitrate (Kbps) of the received audio stream in the reported interval.

◆ totalFrozenTime

- (NSUInteger) totalFrozenTime
readwritenonatomicassign

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

◆ totalActiveTime

- (NSUInteger) totalActiveTime
readwritenonatomicassign

The total active time (ms) between the start of the audio call and the callback of the remote user. The active time refers to the total duration of the remote user without the mute state.

◆ publishDuration

- (NSInteger) publishDuration
readwritenonatomicassign

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

◆ frozenRate

- (NSUInteger) frozenRate
readwritenonatomicassign

The total audio freeze time as a percentage (%) of the total time when the audio is available. The audio is considered available when the remote user neither stops sending the audio stream nor disables the audio module after joining the channel.

◆ mosValue

- (NSUInteger) mosValue
readwritenonatomicassign

The quality of the remote audio stream in the reported interval. The quality is determined by the Agora real-time audio MOS (Mean Opinion Score) measurement method. The return value range is [0, 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

- (NSUInteger) frozenRateByCustomPlcCount
readwritenonatomicassign

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

- (NSUInteger) plcCount
readwritenonatomicassign

The number of audio packet loss concealment

◆ frozenCntByCustom

- (NSUInteger) frozenCntByCustom
readwritenonatomicassign

@technical preview The number of times the remote audio stream has experienced freezing.

◆ frozenTimeByCustom

- (NSUInteger) frozenTimeByCustom
readwritenonatomicassign

@technical preview The total duration (ms) that the remote audio stream has been in a frozen state.

◆ qoeQuality

- (AgoraExperienceQuality) qoeQuality
readwritenonatomicassign

The Quality of Experience (QoE) of the local user when receiving a remote audio stream. See AgoraExperienceQuality.

◆ qualityChangedReason

- (AgoraExperiencePoorReason) qualityChangedReason
readwritenonatomicassign

Reasons why the QoE of the local user when receiving a remote audio stream is poor. See AgoraExperiencePoorReason.

◆ rxAudioBytes

- (NSUInteger) rxAudioBytes
readwritenonatomicassign

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

◆ e2eDelay

- (NSInteger) e2eDelay
readwritenonatomicassign

End-to-end audio delay (in milliseconds), which refers to the time from when the audio is captured by the remote user to when it is played by the local user.