Tick ??sonido que se mantiene en la memoria. AVAudioPlayer? SystemSounds? Core Audio?
-
03-10-2019 - |
Pregunta
Estoy intentando reproducir un archivo de audio muy pequeña. - Es 0.05s más o menos de longitud, y es un archivo .wav sin comprimir
Rgiht ahora, estoy usando AVAudioPlayer
para reproducir el sonido.
tengo la intención de reproducir el sonido con gran rapidez junto con una ruleta, al estilo de El precio es correcto o Rueda de la Fortuna. Si una instancia del AVAudioPlayer
con un recuento de bucle de 100, que juega de hecho el sonido muy rápidamente a medida que cabe esperar.
Si ejecuto [audioPlayer play]
en cada 'tick' de la ruleta, sin embargo, el audio cae terriblemente atrás. Mi conjetura es que, a diferencia de establecer un número alto de bucle, [audioPlayer play]
requiere una instalación completa y el desmontaje de la memoria del clip de audio para cada reproducción.
¿Hay alguna manera de forzar el clip de permanecer establecido en la memoria para una mayor duración? Es un sonido muy frecuentes, y como tal, también estaría bien con mantenerla durante toda la tirada aplicación.
Solución
Si depende de la sincronización más precisa, es posible que desee intentar usar una de las otras API de sonido. Unidad de audio RemoteIO es complicado, pero permite la sincronización más precisa de la reproducción de sonidos sin comprimir. OpenAL y audio colas son otras dos opciones.