setDataSource method

Future<void> setDataSource(
  1. String url
)

Implementation

Future<void> setDataSource(String url) async {
  if (_isDisposed) return;
  if (_initializationFuture != null) {
    try {
      await _initializationFuture;
    } catch (e) {
      // Ignore initialization error since we are recycling the player for a new URL
    }
  }
  final id = _textureId;
  if (id == null || _isDisposed) return;
  _dataSource = url;
  await pause();
  value = value.copyWith(
    isInitialized: false,
    isPlaying: false,
    isBuffering: false,
    position: Duration.zero,
    duration: Duration.zero,
    errorDescription: null,
  );
  await VideoViewPlayerPlatform.instance.setDataSource(id, url);
}