Re: AUHAL + Device Latency
Re: AUHAL + Device Latency
- Subject: Re: AUHAL + Device Latency
- From: Jeff Moore <email@hidden>
- Date: Tue, 15 Jul 2008 15:03:10 -0700
On Jul 15, 2008, at 1:51 PM, Dominic Feira wrote:
All of the time stamps that I get from the AUHAL have a rate scalar
of 1. This doesn't seem right. Do I need to talk to the device
directly to get it?
By default AUHAL does some post-processing on the time stamps the HAL
gives it to do things like compensate for overloads and other
discontinuities in time. You can use
kAudioOutputUnitProperty_StartTimestampsAtZero to change the behavior
so that AUHAL directly hands out the HAL's time stamps.
Does the AUHAL do anything to compensate for latency?
No.
How does kAudioUnitProperty_Latency relate to
kAudioDevicePropertyLatency and kAudioStreamPropertyLatency?
They don't relate to each other at all. kAudioUnitProperty_Latency
refers to the latency within the AudioUnit itself and the others
describe the latency in the hardware.
Does AudioDeviceTranslateTime take latency into consideration at all?
No. Presentation latency is a constant that gets factored out when we
talk about time in Core Audio. As such, the time stamps the HAL hands
out do not include latency in them. In other words, the time that a
sample written to the output at time X will show up at the wire is X
plus the presentation latency.
After having to go through this, I highly recommend everybody use
aggregate devices when possible. Synching devices really isn't any
fun.
Tell me about it =)
--
Jeff Moore
Core Audio
Apple
_______________________________________________
Do not post admin requests to the list. They will be ignored.
Coreaudio-api mailing list (email@hidden)
Help/Unsubscribe/Update your Subscription:
This email sent to email@hidden