我已经尝试了几乎所有方法,但是我无法在循环单个轨道之间实现无间隙音频播放,持续时间为10-15秒.
我尝试过的步骤失败了:
不同的音频文件格式.mp3 .wav .ogg使用
setLooping(true):
MediaPlayer mp1 = MediaPlayer.create(MainActivity.this, R.raw.track1);
mp1.setLooping(true);
mp1.start();
Run Code Online (Sandbox Code Playgroud)创建两个媒体播放器并使用setOnCompletionListener相同的循环逐个循环
无法循环无间隙.
使用setNextMediaPlayer(nextmp)它的工作方式,但只有两个循环是可能的.在完成前两个循环后,我们必须准备并重新开始.
mp1.start();
mp1.setNextMediaPlayer(mp2);
Run Code Online (Sandbox Code Playgroud)更新: @Jeff Mixon的结果回答: Mediaplayer循环因Android错误而停止.Jeff Mixon工作正常,但之后只有10或20个循环,由于一些垃圾收集问题,Mediaplayers会立即停止离开日志,如下所示.我真的有点困在这里2年了.提前致谢.
E/MediaPlayer(24311): error (1, -38)
E/MediaPlayer(23256): Error(1,-1007)
E/MediaPlayer(23546): Error (1,-2147483648)
Run Code Online (Sandbox Code Playgroud)我想在android中无间隙地循环声音.我尝试使用代码mediaplayer.setLooping(true)来循环声音,但是当第一个声音结束并且下一个声音开始时总会有一点停顿.
我正在我的应用程序中播放setLooped启用的音频文件,但每次音频文件循环播放时,音频播放中都有一个明显但非常短暂的差距...有什么方法可以解决这个问题吗?
我正在尝试连续播放音频,没有任何差距.我试过了,
mediaplayer.setLooping(true);
Run Code Online (Sandbox Code Playgroud)
但它在重复时间之间产生了差距.试过这个,
mediaplayer.setOnCompletionListener(new MediaPlayer.OnCompletionListener() {
@Override
public void onCompletion(MediaPlayer mp)
{
mediaplayer.start();
}
});
Run Code Online (Sandbox Code Playgroud)
它也给出了一个差距.我试过不同的音频格式.但这两种方式都不适合我.在android中还有其他方法吗?