rtc Stats Report
Flow providing all RTC statistics reports.
Samples
import com.millicast.Subscriber
import com.millicast.clients.stats.InboundRtpStream
import com.millicast.clients.stats.RemoteInboundRtpStream
import com.millicast.clients.stats.Stats
import com.millicast.devices.track.AudioTrack
import com.millicast.subscribers.state.ActivityStream
import com.millicast.subscribers.state.Layers
import io.dolby.samples.utils.Log
import kotlinx.coroutines.CoroutineScope
import kotlinx.coroutines.flow.distinctUntilChanged
import kotlinx.coroutines.flow.filter
import kotlinx.coroutines.flow.map
import kotlinx.coroutines.launch
fun main() {
//sampleStart
coroutineScope.launch {
// given a known subscriber object
subscriber.rtcStatsReport.collect { report ->
report.stats().forEach {
when (it) {
is InboundRtpStream -> reportInbound(it)
is RemoteInboundRtpStream -> reportInbound(it)
else -> {
/* we can discard anything which doesn't fit our use case */
}
}
}
}
}
//sampleEnd
}