Sound effect won't play on iOS under Titanium app

I created a game and tested on iOS, android, and desktop. All of them can play sound effect just fine but when I play my game through a Titanium app-based on iOS, all sound effect in game won’t play except for the first one that plays first.

The code of the game is the same for all platform and I didn’t preload any sound effect (as for iOS if I preload it, the sound won’t play) before playing on iOS. In addition, the prior games played through that Titanium app-based are created with LimeJS and their sound effect can be played properly. I don’t really like to use a separate audio system from another framework to play the sound just to overcome this issue.

Any suggestion on what might be a problem and how to solve it?

More info:

  • That Tinatium app-based acts as a proxy to play all other games, I don’t own the app but have to play through it in order to test my game.
  • I don’t play background music, I target to play only sound effect.

I have a chance to test my game under the hood of Titanium app-based via Titanium sdk running through simulator, all sounds play fine. I don’t really see any problems.
Anyone has some suggestions ?

I have solved the problem by using Buzz audio framework (http://buzz.jaysalvat.com/) with a single file of a library itself and really similar approach to cocosdenshion in referring to Sfx or music file name (with option of mp3, ogg, wav, and acc).

However, we must not call load() or preload to any sound, if so sounds won’t play. Interesting to note that loop music can be played, but not 100 perfect.
Also any multiple sounds play at the same time will cancel out each other.
I tested in under Titanium app-based on iPad.

At last the idea to work around the preloading may be play sounds with 0 volume in before the game stage, then run it normally in game stage.

AFAIK, IOS has very limited support for audio in web environment, including titanium (which is a webview i believe)

maybe IOS 6 will do better

I hope so, thanks Hao Wu.