getStreamStatistics method
Get statistics about the rtmp stream.
Throws a CameraException if image streaming was not started.
Implementation
Future<StreamStatistics> getStreamStatistics() async {
if (!value.isInitialized! || _isDisposed) {
throw CameraException(
'Uninitialized CameraController',
'stopImageStream was called on uninitialized CameraController.',
);
}
if (!value.isStreamingVideoRtmp!) {
throw CameraException(
'No camera is streaming images',
'stopImageStream was called when no camera is streaming images.',
);
}
try {
var data = (await _channel
.invokeMapMethod<String, dynamic>('getStreamStatistics'))!;
return StreamStatistics(
sentAudioFrames: data["sentAudioFrames"] as int?,
sentVideoFrames: data["sentVideoFrames"] as int?,
height: data["height"] as int?,
width: data["width"] as int?,
bitrate: data["bitrate"] as int?,
isAudioMuted: data["isAudioMuted"] as bool?,
cacheSize: data["cacheSize"] as int?,
droppedAudioFrames: data["droppedAudioFrames"] as int?,
droppedVideoFrames: data["droppedVideoFrames"] as int?,
fps: data["fps"] as int?,
rttMicros: data["rttMicros"] as int?,
bytesSend: (data["bytesSend"] as num?)?.toInt(),
);
} on PlatformException catch (e) {
throw CameraException(e.code, e.message);
}
}