Skip to main content

Notes

SMeeting directly reuses MediaMetric, NetworkQualityChange, and related statistics types from the transitive SRTC dependency; the fields follow the SRTC version you depend on. See SRTC Media quality. You can get quality data in two ways:
  • MeetingEngine.getMetric(): actively reads a thread-safe copy of the current meeting’s most recent sample; it doesn’t trigger an immediate sample and may be null right after entering the meeting.
  • MeetingEngine.mediaEvent: listen to MeetingMediaEvent.onMediaMetric() and onNetworkQualityChanged(). Statistics are usually called back about every 5 seconds; callbacks stay on the SRTC source thread.
onNetworkQualityChanged() passes through the SRTC callback as is: it fires once for the uplink and once for the downlink on every quality report from the server, without debouncing, and fires even when the level hasn’t changed (trend is STABLE). Debounce actions such as poor-network prompts yourself. For level, direction, and trend enums, see SRTC enums; for the full poor-network policy, see SRTC network quality. The field dictionary below is kept consistent with SRTC media quality.

MediaMetric.Metric

Aggregate media quality statistics object.

MediaMetric.QualityReport

Uplink/downlink connection quality report computed and sent by the server, distinguishing uplink (this client to the server) from downlink (the server to this client).

MediaMetric.QualityStats

Quality sample of one side of the link (uplink or downlink).

MediaMetric.LocalMetric

Local aggregate statistics object (Map keys are String).

MediaMetric.NetworkStats

Network state statistics object.

MediaMetric.LocalUploadStats

Local upload statistics object.

MediaMetric.RemoteDownloadStats

Remote download statistics object.

MediaMetric.AudioSenderStats

Audio sender statistics object.

MediaMetric.VideoSenderStats

Video sender statistics object.

MediaMetric.AudioReceiverStats

Audio receiver statistics object.

MediaMetric.VideoReceiverStats

Video receiver statistics object.