Tests made on several devices and iOS versions always showed iOS audio at 48kHz being in sync with the system time (mach_absolute_time()). Audio Unit Timestamps (AudioTimeStamp) provided by Remote I/O unit, for instance, have mSampleTime increasing at the exact same rate as mHostTime (when both are converted to seconds).
Few tests made on USB audio input devices (via lightning) also showed this consistency. AVFoundation as well seems to use mach_absolute_time() for timestamping both audio and video.
On the other hand, tests made on 44.1kHz audio showed drift as if the audio clock wasn't the same as the system clock. This could be perfectly understandable but both 48kHz and 44.1kHz audio should have the same behavior (same hardware clock).
Question: Can we rely on having audio in sync with mach_absolute_time()? Does Apple intentionally compensate time drifts? Isn’t what AVFoundation needs? Why it’s not working for 44.1kHz audio?
Thanks a lot,
Gabe