Hi,
ich wollte mit Hilfe des MediaPlayers eine Soundloop bauen, bestehend aus zwei Teilen, einem Intro-Teil und einem Loop-Teil. Jedoch wechselt bzw. loopt er immer mit einer kleinen, hörbaren verzögerung.
Bisher habe ich zwei Methoden ausprobiert.
1) Zwei MediaPlayer:
2) StartZeit versetzen:
Gibt es da noch weiter, bessere Lösungen?
ich wollte mit Hilfe des MediaPlayers eine Soundloop bauen, bestehend aus zwei Teilen, einem Intro-Teil und einem Loop-Teil. Jedoch wechselt bzw. loopt er immer mit einer kleinen, hörbaren verzögerung.
Bisher habe ich zwei Methoden ausprobiert.
1) Zwei MediaPlayer:
Java:
private static MediaPlayer introPlayer;
private static MediaPlayer loopPlayer;
private SoundManager(){
}
public static void setSound(Media intro, Media loop){
introPlayer = new MediaPlayer(intro);
loopPlayer = new MediaPlayer(loop);
introPlayer.setAutoPlay(true);
loopPlayer.setCycleCount(MediaPlayer.INDEFINITE);
inroPlayer.setOnEndOfMedia(new Runnable(){
@Override
public void run() {
loopPlayer.play();
}
});
mediaPlayer.setStartTime(Duration.seconds(3.118));
}
2) StartZeit versetzen:
Java:
private static MediaPlayer mediaPlayer;
private SoundManager(){
}
public static void setSound(Media sound){
mediaPlayer = new MediaPlayer(sound);
mediaPlayer.setAutoPlay(true);
mediaPlayer.setCycleCount(MediaPlayer.INDEFINITE);
mediaPlayer.setOnPlaying(new Runnable(){
@Override
public void run() {
mediaPlayer.setStartTime(Duration.seconds(3.118));
}
});
}
Gibt es da noch weiter, bessere Lösungen?