I am designing a metronome for Android using Processing. I am searching since several days for possible solutions but all of them are totally inefficient. The problem is that when the BPM go above 100, the beat stop being in sync and many clicks are skipped of out of time. By using apwidgets and MediaPlayer and I obtained the results described above. I also tried Minim but it didn't work (I guess is not compatible with Processing for Android).
I found another solution, SoundPool (http://www.vogella.de/articles/AndroidMedia/article.html) that seems what I am searching for, since is designed for small audio clips (the click is 0.10 sec long). Unfortunately I am confident at all with those Java classes and stuffs and I was not able to integrate it in Processing.Do somebody have some clues?
Or have any other suggestion for how to tackle the problem?
About the implementation: I check with millis() whether the clock expired and the sound has to be played again. The graphic of the interface is not that complex (the draw method lasts 7-12 milliseconds) so it not a problem of CPU.