seek method
Moves the cursor to the desired position.
Implementation
Future<void> seek(Duration position) async {
await creatingCompleter.future;
final futureSeekComplete =
onSeekComplete.first.timeout(const Duration(seconds: 30));
final futureSeek = _platform.seek(playerId, position);
// Wait simultaneously to ensure all errors are propagated through the same
// future.
await Future.wait([futureSeek, futureSeekComplete]);
await _positionUpdater?.update();
}