My app is on iOS 8.3 (iPad and iPhone) and using The Amazing Audio Engine. I'm buffer loading 24 audio files and assigning their output to various channels on a connected USB audio device. Right now I'm testing with a Scarlett 2i|4, but this also happens on the Apogee Duet and two different PreSonus AudioBox units - the 44VSL and the 1818VSL.
The first time I call [engine play]
aka AUGraphStart(graph), the playback begins immediately. Then I call [engine stop]
aka AUGraphStop()
. The next time I call [engine play]
aka AUGraphStart()
, it takes about 4 seconds before playback begins, and the channels on the USB device click a few times.
The channels also click a few times when the device is first plugged into the iPad or iPhone.
This issue does not happen on the Speakers or the Headphone routes -- only when a USB device is plugged in and used.
Any ideas why the AUGraphStart()
call after AUGraphStop()
takes 4 seconds before it starts playing?
Actually I just figured it out -- it's a bug in
TAAE
. It's also calling aAudioUnitStop
on theremote_IO
unit. You have to bypassTAAE
stop and call the graph directly.