title: AudioQueueNewInput callback latency
body: <p>Regardless of the size of the buffers I provide the callback provided to AudioQueueNewInput occurs at roughly the same time interval.  </p>
  
  <p>For example:</p>
  
  <p>If you have .05 second buffers and are recording at 44k the callback first called about at .09 seconds and then a second call occurs right after (.001 seconds). Then you wait again for ~.09 seconds.  If your buffer size was .025.  You would wait .09 seconds and then see 3 more buffers nearly instantly. </p>
  
  <p>Changing the sample rate increases the latency. </p>
  
  <p>Recording 16 bit 8k audio results in .5 seconds of latency between buffer floods. </p>
  
  <p>So I suspect that there is an 8000 byte buffer that is being used behind the scenes. When it's filled my callback gets run with the given buffers until it is emptied. </p>
  
  <p>I want to record 16k 16 bit audio with as little latency as possible. Given the above I always see about a quarter of a second of latency. Is there a way to decrease the latency?  Is there an audio session property to set the internal buffer size?   I've tried kAudioSessionProperty_PreferredHardwareIOBufferDuration but it does not seem to help.</p>
  
  <p>thanks!</p>