|[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]|
I've got a few questions about timestamps in CoreAudio and AudioUnits.
A HAL IOProc gets called with 3 timestamps, one to designate "now",
one capturing when the input data was recorded, and one for when the
first sample will be played (does this mean hit the DAC or leave the
DAC?). Is there a way to access this information from a render
callback connected to an output AudioUnit?
Does the rate scaler apply to just the current cycle (i.e., how far
off the nominal sample rate the device is on current invocation of the
IOProc/RenderCallback), or does it incorporate some history? And is
this the same for all devices? The rate scalers from the built-in card
on my Quicksilver G4 jump around a bit, implying the former, but the
ones on my MOTU are quite stable, suggesting either the latter or a
good clock on the device.
And finally, a question not really primarily about timestamps, but
when I pull the plug out of the output jack on the internal sound card
on my Quicksilver G4, the device goes out to lunch for about 500 ms
before it starts requesting data again! Is there a reason for this? I
ran HAL Lab and I saw 'gone', 'jack', 'diff', and 'ssrc'
notifications, but I don't see anything specific to the device taking
a break for 500 ms (perhaps 'diff'?)
|>Time in CoreAudio/AudioUnits (From: Chandrasekhar Ramakrishnan <email@hidden>)|
Visit the Apple Store online or at retail locations.
Copyright © 2011 Apple Inc. All rights reserved.