29

On Audio MIDI Setup there is an option to to enable/disable audio drifting for any sound output device?

What is this and how should I use it?

I do want to enable sound output for multiple devices: HDI TV and normal jack as I do not always know which one is connected.

2 Answers 2

30

(This is answering an old question, but since I was researching the topic...)

It's to do with keeping different hardware devices in sync.

When you create an aggregate device, more than one piece of sound generation hardware may be required to operate concurrently. Even if these devices are running at the same sample rate, they're probably all using independent hardware clocks to send buffered audio through their DACs and actually generate sound. If these clocks get out of sync, the audio would drift out of sync too and eventually one or more of the hardware devices would start exhausting its data buffer before others had finished with theirs. In short, it'd get glitchy and break.

So for example, you might connect a TV via HDMI and use it as a second monitor to watch movies, but you might want both the TV speakers and your computer speakers to be used - maybe you've plugged in computer speakers with a subwoofer and you like the added bass that the TV speakers can't produce. So you use Audio MIDI Setup to add an aggregate device for both your computer and the TV. But the computer is sending digital audio over HDMI to the TV which independently decodes it - there needs to be some way to make sure both the computer and the TV decode at the same rate, without any clock drift over time screwing things up.

Over digital links like SP/DIF, hardware devices can both transmit and receive a signal in addition to the audio data which is used to perform this kind of synchronisation. It's called word clock. It's really important when you're recording digital audio, so that the recording digital sink is kept rigidly in sync with the transmitting digital source. You can find out more about it here:

http://en.wikipedia.org/wiki/Word_clock

If your aggregate devices all support word clock, then you don't need software drift correction - the master will be used as a word clock source and the word clock data will be sent to the other devices. They'll all use that clock to keep themselves in sync. Otherwise, any devices except the master which don't support word click need the drift correction switch turning on. This uses some sort of software mechanism for trying to combat clock drift (I don't know how it actually achieves this, or how robust / reliable it is).

In the TV example, you'd set the computer as the master audio device and add in the TV audio output, enabling drift correction for the TV (but not for the master device as that wouldn't make sense - the TV audio clock is corrected using them master as the reference). For another example of how word clock and drift correction work together, see steps 11 and 12 here:

http://www.absolutemusic.co.uk/community/entries/set-aggregate-audio-device-mac-os-lion

2
  • 5
    Ah! Just after posting that I realised it used to be called "Resample" rather than "Drift correction" and that was actually more descriptive: "Each Aggregate device uses one of the included hardware devices for a master clock source, and by default this is usually the clock Mac's built-in audio hardware [...] each device in the structure list also has a Resample option, which performs a sample-rate conversion at the current sample rate that effectively reclocks the incoming audio to the master clock" - from: discussions.apple.com/thread/2068625?start=0&tstart=0 Commented May 6, 2013 at 10:46
  • If USB audio devices use synchronous mode, I think they do not need drift correction
    – endolith
    Commented Jun 5, 2020 at 20:06
9
  • Select your clock source at the top of the window. This is the audio interface who's wordclock will be used for the other audio interfaces in the created aggregate.

  • Select the Sample Rate, this is the sample rate that all the other audio interfaces will sample at.

  • Drift correction should not be checked on the interface select above. All other audio interfaces / devices should have the Drift Correction box checked.

Drift Correction keeps these interfaces/devices in sync (in-time) with the primary interface from the drop-down menu at the top that you have chosen, which becomes the Master clock.

1

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .