Hello gurus, looking for some help with AVAudioPlayer. We are working on a project where we have a two dimensional array of AVAudioPlayers. One dimension represents time, e.g. quarter notes. The other dimension represents the instruments which should play at that time. Some of these will be nil. We are using [NSThread sleepForTimeInterval:] to keep time to wait for the next notes to be played. I can provide an example in pseudo code if this is not clear. This is not an event handling thread, we create this ourselves. This works fine until some other threads need to do something, such as the user tries to scroll the table view. Then the sound becomes choppy, as in the timing gets off. Is there some better way to do this like some kind of scheduling or timer? We're hoping not to use the Audio Queue Service as this seems too low level for what we need, manually managing buffers and such. Also the samples we are playing are very dynamic and in different formats such as wav and mp3.