Die Android MediaPlayer-Schleife weist auch im OGG-Format Lücken auf

8

In Android 4.x hat meine Audio-Looping-App Lücken von 0,2 bis 0,5 Sekunden in den Soundloops.

Ich benutze MediaPlayer, da meine Sounds ziemlich groß sein können (in manchen Fällen 2-3 MB) und mehrere Instanzen gleichzeitig laufen können.

Ich habe das ziemlich gründlich recherchiert und ich sehe, dass es einen Bug für Android 4.x gibt ... aber ich habe viele Workarounds ausprobiert und ich kann anscheinend nicht funktionieren.

  • Konvertiert alle Wavs mit Audacity in OGG (Qualitätsstufe 2 bis 10, es war egal)
  • Versuchte setNextMediaPlayer ()
  • Versucht, seekTo (0) beim Stoppen zu verwenden und
  • zu wiederholen
  • Versucht SoundPool mit eigenen Bugs

Hier ist ein Beispiel für den Code, den ich verwende:

%Vor%

Ich benutze nichts besonderes, also frage ich mich nur, ob jemand eine Arbeit für den Loop-Bug auf Android kennt.

    
user3217336 21.01.2014, 01:50
quelle

1 Antwort

1

Okay, alter Post, aber diese Lösung funktioniert. Das ist eine Art Hack. Es wird jemandem helfen, wenn jemand zu dieser Antwort kommt.

Ich benutze nur drei Media Player. mp1 , mp2 , mp3 . mp1 wird gespielt und ich setze mp2 auf setNextMediaPlayer . Wenn mp1 endet, setze ich mp3 auf mp2's setNextMediaPlayer . Wenn mp2 endet, setze ich mp1 auf mp3's setNextMediaPlayer . Im Folgenden ist der vollständige Code, der Pause, Stopp, Set vol. Erstellen Sie einfach ein Objekt BZMediaPlayer und starten Sie es, indem Sie uri oder die Ressourcen-ID angeben.

%Vor%

Ich hoffe, es wird jemandem helfen

Edit: clean code

    
moonzai 22.10.2015 06:15
quelle

Tags und Links