open method

  1. @override
Future<void> open(
  1. AudioSource dataSource
)
override

Implementation

@override
Future<void> open(AudioSource dataSource) {
  Playable audio = Playable();
  audioPlayer.current.listen((event) {
    _current.add(
      _covertPlayingAudioToAudioDataSource(event?.audio ?? PlayingAudio(audio: Audio(''))),
    );
  });
  audioPlayer.onReadyToPlay.listen((event) {
    _onReadyPlay.add(_covertPlayingAudioToAudioDataSource(event ?? PlayingAudio(audio: Audio(''))));
  });
  if (dataSource is AudioDataSource && dataSource.audioSourceType == AudioSourceType.audio) {
    audio = _covertAudioDataSourceToAudio(dataSource);
  } else if (dataSource is AudioPlaylist) {
    audio = Playlist(
      audios: dataSource.playList.map(_covertAudioDataSourceToAudio).toList(),
    );
  }

  return audioPlayer.open(
    audio,
    playInBackground: PlayInBackground.disabledPause,
  );
}