Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/327.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 重新启动MediaPlayer时出现噪音_Java_Android_Android Mediaplayer - Fatal编程技术网

Java 重新启动MediaPlayer时出现噪音

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文件,循环播放,从不中断,如果当前的 物品已经在

我有一个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;