MiniProgramMediaPlaybackSnapshot.fromJson constructor
MiniProgramMediaPlaybackSnapshot.fromJson(
- Map<String, dynamic> json
)
Implementation
factory MiniProgramMediaPlaybackSnapshot.fromJson(Map<String, dynamic> json) {
final playerId = json['playerId'];
final kind = json['kind'];
final status = json['status'];
final positionMs = json['positionMs'];
final durationMs = json['durationMs'];
final bufferedMs = json['bufferedMs'];
final volume = json['volume'];
final speed = json['speed'];
final muted = json['muted'];
if (playerId is! String ||
kind is! String ||
status is! String ||
positionMs is! int ||
(durationMs != null && durationMs is! int) ||
bufferedMs is! int ||
volume is! num ||
speed is! num ||
muted is! bool) {
throw const FormatException(
'Invalid mini-program media playback snapshot.',
);
}
return MiniProgramMediaPlaybackSnapshot(
playerId: playerId,
kind: _playbackKind(kind),
status: _playbackStatus(status),
position: Duration(milliseconds: positionMs),
duration: durationMs == null ? null : Duration(milliseconds: durationMs),
buffered: Duration(milliseconds: bufferedMs),
volume: volume.toDouble(),
speed: speed.toDouble(),
muted: muted,
);
}