monitorStats method
Implementation
@override
Future<bool> monitorStats() async {
if (receiver == null || events.isDisposed || !isActive) {
_currentBitrate = 0;
return false;
}
try {
final stats = await getReceiverStats();
if (stats != null && prevStats != null && receiver != null) {
final bitrate = computeBitrateForReceiverStats(stats, prevStats);
_currentBitrate = bitrate;
events.emit(VideoReceiverStatsEvent(stats: stats, currentBitrate: bitrate));
}
prevStats = stats;
} catch (e) {
logger.warning('Failed to monitor stats: $e');
return false;
}
return true;
}