MediaPlayer: Sound hat Verzögerung

RezaScript

Bekanntes Mitglied
Hallo, um eine Audio-Datei abzuspielen, benutze ich folgendes:
Java:
String myFile = context.getFilesDir() + "/output.mp3";
_mediaPlayer.reset();
_mediaPlayer.setDataSource(myFile);
_mediaPlayer.prepare();
_mediaPlayer.start();

Ich klicke auf den Button und der Sound wird abgespielt. Wenn ich auf den Button klicke, während der Sound abgespielt wird, wird der Sound abgebrochen und von neu an gespielt. So weit alles gut.

Mein Problem: Wenn der Sound fertig gespielt ist und ich klicke innert 3 Sekunden erneut auf den Button, gibt es eine Verzögerung. Der Sound fängt also immer ca. 1 Sekunde später an zu spielen.

Beim ersten Klickt, funktioniert also alles wunderbar. Wenn ich aber erneut den Sound ganz abspielen will, muss ich entweder auf den Button klicken, während der Sound abgespielt wird oder ich warte 4 Sekunden nachdem der Sound abgespielt wurde.

Das finde ich etwas komisch aber es wird noch komischer:
Ich benutze Android Studio und bei meinem Simulator habe ich das Problem nicht. Ich habe die App auch auf meinem Samsung Smartphone installiert und auch dort funktioniert alles wunderbar. Das Problem taucht nur auf, wenn ich mein Gerät via Bluetooth mit einem Lautsprecher verbinde.

Hat jemand eine Idee wie ich da vorgehen sollte?
 
Wenn du sowieso immer denselben Sound abspielst könntest du ausprobieren, den MediaPlayer einfach auf Position 0 zurückzuspulen, bevor du den Sound nochmal startest:
Java:
mediaPlayer.seekTo(0);

Ich könnte mir vorstellen, dass das Resetten des MediaPlayers bei Bluetooth Geräten irgendwelche Synchronisierungsprobleme verursacht. Überall anders funktioniert es ja.
 
Das habe ich auch probiert aber scheint auch nicht zu funktionieren.

Ich habe es auch mit dem Bluetooth von meinem Auto probiert. Dort habe ich dieses Problem nicht, aber stattdessen findet manchmal die Verzögerung irgendwo in der Mitte statt.
 

Zurück
Oben