audio - Sounds effects in iPhone game -


I am creating an OpenLL game for the iPhone and I'm about to start adding the sound effects to the app. I wonder if this What is the best framework for the purpose.

Is AV base is my best option? Open L is probably missing like any other?

General power / weakness summary of iPhone Voice API from perspective game perspective:

    < Li> AVFoundation: plays long compressed files, no low-level access, good for high latency theme song or background music, bad for short-term effects.
  • System sounds: Drama plays (0-5 seconds) .if, .wav, or .caf should have PCM or IMA 4. Fire-and-forget (can not stop it after it starts) C-based API Suitable for short sound effects (tap, click, bangs, crashes)
  • OpenLL: 3D Spamated Audio API is similar to OpenGL and is a natural accompaniment to it. Easy audio mixing of many sources requires a PCM (perhaps core audio is loaded by "audio file service") Very important low-level access. Potentially very low latency
  • Audio Queue: Stream playback (from file, to network, software synthesis, etc.) from the source you provided. C-based Very low latency may not really be ideal for many game tasks: Background music AVFoundation is better suited for mixing system sounds and open or audio units for short sounds. Can be recorded from micro.
  • Audio entities: The lowest public level of core audio is extremely low latency (& lt; 30ms), and hard core on it should be PCM. Multi-channel mixer unit allows you to mix sources

Make sure you set up your audio session properly, which means that you declare a category that indicates that you Cas with the rest of the device audio Interact do (Ignore allow playback playback in the background / Decline / ring / silent switch, etc.). AV Foundation's OBJ-C editions, and core audio has some more powerful equivalents.


Comments

Popular posts from this blog

asp.net - Javascript/DOM Why is does my form not support submit()? -

sockets - Delphi: TTcpServer, connection reset when reading -

javascript - Classic ASP "ExecuteGlobal" statement acting differently on two servers -