Domanda

Sto cercando di riprodurre un piccolo file audio -. È all'incirca 0.05s di lunghezza, ed è un file wav non compresso

Rgiht ora, sto usando AVAudioPlayer per riprodurre l'audio.

ho intenzione di riprodurre il suono con elevata rapidità a fianco di un filatore, a la il prezzo è giusto o Ruota della Fortuna. Se io un'istanza AVAudioPlayer con un numero di loop di 100, è effettivamente riprodurre il suono molto rapidamente mi aspetto.

Se eseguo [audioPlayer play] su ogni 'spuntare' del filatore, tuttavia, l'audio cade terribilmente indietro. La mia ipotesi è che, a differenza di impostazione di un elevato numero di loop, [audioPlayer play] richiede l'installazione completa e teardown della memoria del clip audio per ogni riproduzione.

C'è un modo per forzare la clip di rimanere istituito in memoria per un periodo più lungo? E 'un suono molto frequente, e come tale sarebbe anche bene con mantenendolo durante l'intera esecuzione app.

È stato utile?

Soluzione

Se dipende da tempi più precisi, si potrebbe provare a utilizzare una delle altre API audio. Audio Unit RemoteIO è complicata, ma permette la tempistica più precisa riproduzione di suoni non compressi. OpenAL e Audio code sono altre due opzioni.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top