1
例如:我有兩個聲音。持續40秒。我需要同時啓動它們。這是我的方法:如何同時啓動兩個媒體播放器(並讓其同步播放)?
private void startPlaying() {
mPlayerDrums = MediaPlayer.create(this, mCurrentDrumResId);
mPlayerDrums.setLooping(true);
mPlayerTrack = MediaPlayer.create(this, mCurrentTrackResId);
mPlayerTrack.setLooping(true);
if (STATE == STATE_PLAY) {
mPlayerDrums.start();
mPlayerTrack.start();
}
setPlayersVolume(mSeekbar.getProgress());
}
但有時它們不會同步播放。從日誌(每400ms顯示玩家的位置):
05-03 14:47:01.190: V/wise(23335): drums pos 0 track pos 0
05-03 14:47:01.600: V/wise(23335): drums pos 93 track pos 0
05-03 14:47:02.001: V/wise(23335): drums pos 766 track pos 766
05-03 14:47:02.401: V/wise(23335): drums pos 1138 track pos 1138
05-03 14:47:02.801: V/wise(23335): drums pos 1556 track pos 1509
05-03 14:47:03.202: V/wise(23335): drums pos 1950 track pos 1950
我覺得你必須設置兩個媒體播放器對象setOnPreparedListener並把onPrepared標誌()..不要叫打,直到兩個標誌true.Haven't檢查但你應該嘗試。 – TheFlash
感謝您的回覆!剛剛嘗試 - 仍然沒有。 –
@Flash我已經檢查過這個,但有時候這個問題可以解決 – breceivemail