AudioController constructor

AudioController({
  1. int polyphony = 2,
})

Implementation

AudioController({int polyphony = 2})
    : assert(polyphony >= 1),
      _musicPlayer = AudioPlayer(playerId: 'musicPlayer'),
      _sfxPlayers = Iterable.generate(
        polyphony,
        (i) => AudioPlayer(
          playerId: 'sfxPlayer#$i',
          mode: PlayerMode.MEDIA_PLAYER,
        ),
      ).toList(growable: false),
      _playlist = Queue.from(List.of(songsData)..shuffle()) {
  _musicCache = AudioCache(
    fixedPlayer: _musicPlayer,
    prefix: 'assets/music/',
  );
  _sfxCache = AudioCache(
    fixedPlayer: _sfxPlayers.first,
    prefix: 'assets/sfx/',
  );

  _musicPlayer.onPlayerCompletion.listen(_changeSong);
  _musicPlayer.setVolume(sound);
}