使用setNextMediaPlayer播放音频问题

时间:2013-11-17 18:29:34

标签: android loops android-mediaplayer

我需要在没有间隙的情况下播放音频,音频需要永久循环而没有间隙。使用setNextMediaPlayer只合并两个没有间隙的音轨,之后它会自动停止播放音频,它永远不会循环播放。提前致谢。

    mp1 = MediaPlayer.create(getApplicationContext(), R.raw.loop);
    mp2 = MediaPlayer.create(getApplicationContext(), R.raw.loop);

protected void play() {
    // TODO Auto-generated method stub

    mp1.start();
    mp1.setNextMediaPlayer(mp2);
    // mp2.setNextMediaPlayer(mp1);

}

1 个答案:

答案 0 :(得分:0)

我试图帮助一个人在几天前做到这一点。请参阅this question

我不确定他是否能够达到他想要的效果,但我相信你的问题是MediaPlayer在第二首曲目结束后没有处于准备状态。您需要使用onCompletion侦听器通过调用stop()prepareAsync()将其返回到准备状态。如果它不需要处于准备状态(我真的不确定),那么从seekTo(0)监听器调用onCompletion会更快。

您肯定需要取消注释mp2.setNextMediaPlayer(mp1);行。