Stop FaceTime from lowering your music and other apps on Mac.
Free, open-source menu bar app that disables FaceTime audio ducking on macOS.
⬇ Download for macOS · Website · Version française · FAQ
- "Every time I start a FaceTime call, my music gets super quiet."
- "Other apps' volume drops during FaceTime on my Mac and I can't turn it off."
- "YouTube / Spotify / my game is almost silent while I'm on a call."
That's audio ducking: during a FaceTime call, macOS automatically lowers the volume of every other app. There's no setting to turn it off. Duckproof turns it off.
- 🦆 No more ducking. Music, videos and games keep their volume during FaceTime calls.
- 🎵 Your music never goes through Duckproof. Only the call audio takes a detour, so music and videos keep their full quality, Spatial Audio and Dolby Atmos, with zero added latency.
- 🎚 Or choose your own ducking. Off by default, or lower other apps by 6, 12, 20 or 30 dB during calls, instead of Apple's all-or-nothing.
- 🔊 FaceTime volume boost. Up to 300%, with a soft limiter so voices don't crackle.
- 🎧 Works with AirPods and any headphones, speakers or audio interface.
- 🔔 Setup tips when you need them. If FaceTime, Zoom, Teams, Discord & co. are still lowering your other apps, Duckproof tells you where to fix it (or stays silent, your call).
- 🪶 Zero CPU when you're not on a call. No background polling: Duckproof sleeps until macOS signals that a call starts. Menu bar only, no Dock icon, starts at login.
- 🇫🇷 English and French.
- 🔓 Free and open source (GPL-3.0). No account, no tracking, no network access except an optional daily update check.
During a call, macOS lowers everything that plays on the same audio output as FaceTime.
So Duckproof gives FaceTime its own virtual audio output, also called Duckproof. FaceTime plays into it, and macOS lowers that output… where FaceTime is the only thing playing. Duckproof then forwards the call to your headphones, while your other apps keep playing there at full volume.
Before: FaceTime ──► AirPods ◄── Music (macOS lowers Music)
After: FaceTime ──► Duckproof ──► AirPods ◄── Music (nothing is lowered)
In short, macOS ducks into the void. All you do is set FaceTime's audio output to Duckproof, once. The call gets about 20 ms of added latency; your music gets none.
There are two ways to beat ducking. One is to capture every app's audio and re-play it at full volume, which means your music, videos and games all pass through a third-party app: possible delay, clipping, and spatial audio folded down to stereo. Duckproof does the opposite:
- Only the call takes a detour. Your music, videos and games play straight to your headphones, untouched: same quality, no added latency, Spatial Audio and Dolby Atmos still work.
- Nothing to fight. macOS still "ducks", but only on Duckproof's virtual output, where the only thing playing is the call. No undocumented tricks that a macOS update could break.
- Lightweight. Duckproof only processes audio while a call is on.
- Download
Duckproof-x.y.z.pkgfrom the latest release. - Open it. Duckproof is signed and notarized by Apple, so it installs like any other app. It adds Duckproof to Applications and installs its audio driver. No restart needed.
- Duckproof opens, asks for microphone access (why?) and shows you the one FaceTime setting to change: FaceTime › Video menu › Audio Output › Duckproof
Requires macOS 14.2 or later, Apple Silicon or Intel.
Click the 🦆 in the menu bar, or double-click Duckproof in Applications to open its settings window (handy if the icon is hidden by the notch, Bartender or Hidden Bar).
| Setting | What it does |
|---|---|
| Duck Other Apps During Calls | Off (default), or −6 / −12 / −20 / −30 dB on other apps while a call is on. Your volume comes back when the call ends. |
| FaceTime Volume | 100% (default) to 300%. Without ducking, music can feel louder than voices, so this helps. |
| Send Call Audio To | Follow the system output (default), or always use a specific device. |
| Test Forwarding | Plays a sound through Duckproof; you should hear it in your headphones. |
You're probably using your headphones' microphone over Bluetooth. When an app uses the mic of Bluetooth headphones (AirPods included), they have to switch to a "headset" mode that uses a low-quality codec, and all your audio goes mono and compressed, not just the call.
Fix: in FaceTime, open the Video menu › Microphone and pick another mic, such as your Mac's built-in microphone or your iPhone. Your headphones then stay in high-quality mode. FaceTime remembers this choice.
To stop FaceTime from lowering your other apps, Duckproof gives it its own virtual audio channel to play into. Duckproof then reads that channel and sends it to your headphones. macOS counts reading any audio channel as "using the microphone", even a virtual one, hence the permission. Duckproof never listens to your real microphone. The orange indicator only appears during calls.
Yes, if the app lets you pick a speaker/output device: choose Duckproof in its audio settings. Duckproof forwards anything that plays into it, and if it sees Zoom, Teams, Discord, Slack, WhatsApp, Webex or a browser call lowering your other apps, it sends a notification telling you exactly where to change it. (Notifications can be turned off in the menu.)
FaceTime is set to play into Duckproof, but Duckproof isn't running. Open Duckproof again (it normally starts at login), or switch FaceTime's audio output back to your headphones.
FaceTime's output isn't set to Duckproof yet. Go to FaceTime › Video › Audio Output › Duckproof. Duckproof sends a notification when it detects this.
Duckproof is fully open source: you can read every line or build it yourself. Its driver is built from BlackHole, a widely used open-source virtual audio driver, runs isolated from the rest of the system, and is signature-checked before it's loaded. It doesn't collect anything. Details in Security & privacy.
About 20 ms, which you won't notice next to Bluetooth latency (150 ms or more).
🦆 menu › Settings… › Uninstall Duckproof…, then move Duckproof.app to the Trash. Or by hand:
sudo rm -rf /Library/Audio/Plug-Ins/HAL/Duckproof.driver /Applications/Duckproof.app
sudo killall coreaudiod- What the admin password is for. Only to copy the audio driver into
/Library/Audio/Plug-Ins/HALwhen installing (and to remove it when uninstalling). The app itself never runs as root. - The driver runs isolated. macOS loads third-party audio drivers in a separate, sandboxed process (
Core Audio Driver (Duckproof.driver)), not insidecoreaudiod. It is BlackHole, unmodified, only configured at build time (scripts/build-driver.sh). - Signed and checked. The app, the driver and the installer are signed with a Developer ID and notarized by Apple. Before Core Audio loads the driver, the installer (and the app, when it reinstalls the driver) checks that it is signed by the same developer as the app, and makes it owned by root and writable by nobody else. A driver that fails the check is deleted.
- The hidden twin device. The Duckproof device is an output only. A hidden, input-only twin carries the call audio so Duckproof can forward it to your headphones. As with any loopback audio driver (BlackHole, Loopback…), an app you have granted microphone access could open that twin too: macOS shares a device's input with every app that reads it, and a driver can't pick who does. Such an app could already record you, so only give microphone access to apps you trust.
- Microphone permission. macOS counts reading the hidden twin as using a microphone. Duckproof never opens your real microphone.
- Network. One request a day to the GitHub API to look for a new release. Nothing is sent, nothing is tracked, and update links can only point to this repository's releases.
- Why not Core Audio process taps? They avoid installing a driver, but then every app's audio (music, videos, games) has to be captured and re-played by a third-party app, and stopping the ducking itself needs undocumented tricks. Duckproof only touches the call, only while it's on.
shasum -a 256 ~/Downloads/Duckproof-*.pkg # compare with the SHA-256 in the release notes
pkgutil --check-signature ~/Downloads/Duckproof-*.pkg # "Developer ID Installer" and "Notarization: trusted"Please use private vulnerability reporting rather than a public issue.
You only need the Xcode Command Line Tools (xcode-select --install):
git clone --recursive https://github.com/iv2fi/duckproof.git
cd duckproof
./scripts/build.shThis produces build/Duckproof.app and build/Duckproof-1.0.0.pkg, signed ad hoc for your own Mac. Official releases are built from the tagged commit with scripts/release.sh, which signs with a Developer ID certificate and notarizes with Apple.
For debugging, /Applications/Duckproof.app/Contents/MacOS/Duckproof --diagnose lists every audio device and which process is playing on which.
Duckproof is free and made by V2F. If it saved your calls, ⭐ star the repo (it helps other people find it) and check out the YouTube channel.
GPL-3.0. The virtual audio driver is built from BlackHole by Existential Audio (GPL-3.0) and renamed, as its license requires for modified builds. Duckproof is not affiliated with or endorsed by Existential Audio or Apple. FaceTime is a trademark of Apple Inc.
