In my Android game, I am playing short sound effects using AudioManager and SoundPool.
While this works fine on Samsung Galaxy Tab 10.1, when I ported the game to Samsung Galaxy SIII, I am experiencing strange lock-ups of the screen and crashes of the application with re-booting of the phone, when I am trying to play the sound from the SoundPool.
It behaves quite erratically and one of 4 things happen (in no particular order):
(1) Application starts as normal and all sounds play normally.
(2) Application crashes completely and mobile reboots.
(3) Application freezes shortly (3-5 seconds) upon trying to play the sound, then continues normally, but sounds don't work.
(4) Application starts as normal, but none of the sounds plays. *
* There is a strange twist to the 4th case. None of the sounds plays, but when I activate game background music (which plays via MediaPlayer, not via AudioManager/SoundPool) this somehow 'flushes down' the stuck sound effects which should play at the beginning of the game, and now they all catch-up and play at once. This 'flushing down' somehow returns everything back to normal and from this point on all the sound effects from the SoundPool play normally, as they should.
The error which I am getting is:
AudioTrack: obtainBuffer timed out (is the CPU pegged?) "CPU pegged" what the hell does it even mean ???
Note that the problems happen at the point in the game when I am attempting to play the sounds from the soundpool by SoundPool.play, not when I am loading them by SoundPool.load.
I tried just about everything and now I am at the end of my wits. Did anybody have the same problem? Any help is highly appreciated.