Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Always try a VoiceProcessingIO AudioUnit
The drift correction provided by aggregate devices has proven unreliable as a usb input paired with builtin or connected analog speakers often underruns within a few minutes, depending on clock drift. The VoiceProcessingIO AudioUnit handles drift properly. This patch will try to set up the VoiceProcessingIO AudioUnit whenever we're in duplex. This patch also sets up a failover path so that if setting up the VoiceProcessingIO AudioUnit fails, we try an aggregate device or a plain AudioUnit, in that order. For now, always in bypass mode, as we don't yet have an api to toggle audio processing features dynamically. Note that the VoiceProcessingIO AudioUnit will implicitly enable audio ducking in the platform.
- Loading branch information