seekTo method

Future<void> seekTo(
  1. Duration position
)

seek the current video position

Implementation

Future<void> seekTo(Duration position) async {
  _position.value = position;
  print("duration in seek function is ${duration.value.toString()}");
  if (duration.value.inSeconds != 0) {
    if (position <= duration.value) {
      await _videoPlayerController?.seekTo(position);
    } else {
      await _videoPlayerController
          ?.seekTo(duration.value - const Duration(milliseconds: 100));
    }
    if (playerStatus.stopped) {
      play();
    }
  } else {
    _timerForSeek?.cancel();
    _timerForSeek =
        Timer.periodic(const Duration(milliseconds: 200), (Timer t) async {
      //_timerForSeek = null;
      print("SEEK CALLED");
      if (duration.value.inSeconds != 0) {
        if (position <= duration.value) {
          await _videoPlayerController?.seekTo(position);
        } else {
          await _videoPlayerController
              ?.seekTo(duration.value - const Duration(milliseconds: 100));
        }
        if (playerStatus.stopped) {
          play();
        }
        t.cancel();
        //_timerForSeek = null;
      }
    });
  }
}