Hassan Malaabeh
Hassan Malaabeh

Reputation: 70

Flutter play list of files after each other

I'm trying to play a list of files one after the other, but it plays all together, anyone can help?

I'm using the library AudioPlayers for that

thanks

  case 2: {
    //statements;
    for(int i = 0; i < letterList1().length; i++){
      String file = letterList1()[i]['audio'];
      advancedPlayer = await player.play(file);

      if(advancedPlayer.state == AudioPlayerState.PLAYING){
        advancedPlayer.onPlayerCompletion.listen((onDone) async {
          advancedPlayer.state = AudioPlayerState.COMPLETED;
        });
      }

      playingFile = file;

    }
  }
  break;

Upvotes: 0

Views: 1247

Answers (1)

Hassan Malaabeh
Hassan Malaabeh

Reputation: 70

case 1: {
        //statements;
        for(int i = 0; i < letterList1().length; i++){
          String file = letterList1()[i]['audio'];
          advancedPlayer = await player.play(file);

      playingFile = file;

      while(advancedPlayer.state == AudioPlayerState.PLAYING){
        print("while: ${advancedPlayer.state}");
        await Future.delayed(Duration(seconds: 1));
        print(i);
        if(advancedPlayer.state == AudioPlayerState.PLAYING){
          advancedPlayer.onPlayerCompletion.listen((onDone) async {
            print("object");
            player.clear(file);
            advancedPlayer.state = AudioPlayerState.COMPLETED;
            await advancedPlayer.stop();
          });
        }
        if(advancedPlayer.state == AudioPlayerState.COMPLETED){
          print("if: ${advancedPlayer.state}");
          await advancedPlayer.stop();
          break;
        }
      }

    }
  }
  break;

Upvotes: 0

Related Questions