Java 重新启动MediaPlayer时出现噪音
我有一个MediaPlayer(.wav文件),有时需要快速连续地重复。如果它已经在播放,我将重新启动它:Java 重新启动MediaPlayer时出现噪音,java,android,android-mediaplayer,Java,Android,Android Mediaplayer,我有一个MediaPlayer(.wav文件),有时需要快速连续地重复。如果它已经在播放,我将重新启动它: if (player.isPlaying()) { player.pause(); player.seekTo(0); } player.start(); 问题是,当MediaPlayer在某个随机位置被中断时,通常会在末尾出现微小但明显的刺耳噪音 我尝试过的一个解决方案是创建一个MediaPlayer数组,加载相同的wav文件,循环播放,从不中断,如果当前的 物品已经在
if (player.isPlaying()) {
player.pause();
player.seekTo(0);
}
player.start();
问题是,当MediaPlayer在某个随机位置被中断时,通常会在末尾出现微小但明显的刺耳噪音
我尝试过的一个解决方案是创建一个MediaPlayer数组,加载相同的wav文件,循环播放,从不中断,如果当前的
物品已经在播放(这种情况很少发生,而且在一般弹幕中不会注意到错过的呼叫)
这消除了噪音,但解决方案有点难看。有更好的方法吗?噪声可能是周期中被切断的波形。在停止和启动之前,可以通过调用setVolume来修复此问题。拥有多个MediaPlayer并不是一个糟糕的主意,但您可能想看一看。噪音可能是周期中被切断的波形。在停止和启动之前,可以通过调用setVolume来修复此问题。拥有多个MediaPlayer不是一个糟糕的主意,但您可能想看看。谢谢!setVolume()没有帮助,但是SoundPool工作得很好。谢谢!setVolume()没有帮助,但是SoundPool工作得很好。
MediaPlayer player = players.get(current);
if (!player.isPlaying())
player.start();
if((++current) >= players.size())
current = 0;