06Personal Products and Experiments
WisprDuck Audio Control
A focused macOS systems contribution that ducks selected music, browser, or media-player audio while a chosen desktop AI app is audibly speaking, holds through short pauses, and restores smoothly. The implementation adds a local output-audio trigger to the Apache-2.0 WisprDuck project using measurement-only Core Audio process taps; the verified default is the ChatGPT desktop app output, not a generic claim about every ChatGPT mode.
The audio-state loop
Detect selected app output locally. Duck only chosen targets. Hold through pauses. Restore safely.
- 01
Match + Measure
A selected app’s Core Audio process output is observed locally with an unmuted measurement tap and RMS threshold; the trigger app’s own audio path is untouched.
- 02
Duck Targets
Only selected background-audio processes receive the existing per-process gain treatment.
- 03
Hold
An attack filter rejects clicks, and a configurable silence hold prevents volume wobble between spoken phrases.
- 04
Restore
A linear fade returns target gain; tap teardown, trigger-process exit, and Core Audio’s muted-when-tapped behavior provide recovery paths.
Interactive product simulation · Faithful macOS menu
Keep the voice clear without manually pausing everything else.
The selected AI app is silent, so WisprDuck monitors locally and leaves the chosen background-audio target untouched.
Interactive product simulation based on the shipped menu and verified control path. Local process taps measure signal energy; only selected target gain changes. Values are illustrative UI state, not recorded telemetry.
Normal playback. QuickTime Player · 100%. The selected AI app is silent, so WisprDuck monitors locally and leaves the chosen background-audio target untouched.
What the accomplishment is
The implemented capability—not a substitute illustration.
A focused macOS systems contribution that ducks selected music, browser, or media-player audio while a chosen desktop AI app is audibly speaking, holds through short pauses, and restores smoothly. The implementation adds a local output-audio trigger to the Apache-2.0 WisprDuck project using measurement-only Core Audio process taps; the verified default is the ChatGPT desktop app output, not a generic claim about every ChatGPT mode.