Question

Je suis en train de lire un fichier audio très petit -. Il est à peu près la longueur 0.05s, et il est un fichier .wav non compressé

Rgiht maintenant, j'utilise AVAudioPlayer pour jouer le son.

Je l'intention de jouer le son avec une grande rapidité à côté d'une fileuse, à la The Price Is Right ou Roue de la Fortune. Si j'instancier le AVAudioPlayer avec un nombre de boucles de 100, il ne joue en effet le son très rapidement que je pense.

Si j'exécute [audioPlayer play] sur chaque « tick » de la fileuse, cependant, l'audio tombe terriblement derrière. Je pense que, contrairement à la fixation d'un nombre de boucles haute, [audioPlayer play] nécessite une configuration complète et de désassemblage la mémoire du clip audio pour chaque lecture.

Est-il possible de forcer le clip de rester mis en place en mémoire pour une plus longue durée? Il est un son très fréquent, et en tant que tel serait également d'accord avec le garder pendant toute la course de l'application.

Était-ce utile?

La solution

Si vous comptez sur le calendrier plus précis, vous voudrez peut-être essayer d'utiliser l'une des autres API sonores. Audio Unit RemoteIO est compliquée, mais permet le moment le plus précis de jouer des sons non compressés. Queues OpenAL et audio sont deux autres options.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top