我想播放两种声音。我正在使用此代码,但是两种声音之间存在大约2秒的延迟。我想在第一个声音结束后直接播放第二个声音。我怎样才能做到这一点?
MediaPlayer mp = MediaPlayer.create(getApplicationContext(),R.raw.s83);
mp.start();
mp.setOnCompletionListener(new OnCompletionListener() {
public void onCompletion(MediaPlayer mp2){
mp2 = MediaPlayer.create(getApplicationContext(),R.raw.ss);
mp2.start();
}
});
最佳答案
Android 4.1(v16)添加了MediaPlayer.setNextMediaPlayer,它被添加为允许按照feature list进行无缝播放。在此之前,由于缓冲,在onCompletion
与启动另一个MediaPlayer之间总是存在很小的延迟。在MediaPlayer
之前创建第二个onCompletion
也可能会有所帮助(并且始终需要使用setNextMediaPlayer
)。
关于android - 在两个声音 “Mediaplayer” android之间滞后,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17225416/