Per-app input device selection (dictate from a handset/Bluetooth mic without changing the macOS system default) #643
aguynamedryan
started this conversation in
Ideas
Replies: 0 comments
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Uh oh!
There was an error while loading. Please reload this page.
-
Idea
Let FluidVoice capture from a specific input device (a USB dictation handset, a Bluetooth headset, etc.) without changing the macOS system default input — so the rest of the system keeps using the built-in mic while FluidVoice uses the chosen device.
Background
Independent input selection existed but was removed in c8df54a because it was built on AVAudioEngine's input node, which fails with
-10851for aggregate/Bluetooth devices (plus 2nd-recording crashes and BT-disconnect freezes).Since then, b75c23f added the direct Core Audio capture path (
DirectCoreAudioInput→AudioDeviceCreateIOProcID), which binds an arbitrary input device per-app without touching the system default and without the AVAudioEngine-10851limitation. So the blocker that motivated the removal no longer applies to the capture path that now ships by default.Proposal
I've opened #642, which re-enables independent input selection routed exclusively through the direct-capture path and pins the AVAudioEngine fallback to the system default so
-10851can't recur. Validated on hardware: USB handset, generic Bluetooth (Shokz), and AirPods each captured per-app with the system default left on the built-in mic and no-10851; aggregate devices fall back gracefully.Independent mode — FluidVoice on the handset while the macOS default stays the built-in mic:

Would you be open to this? Happy to adjust the approach — keep it behind the experimental flag, rename the setting, gate it differently. Relates to #610.
Beta Was this translation helpful? Give feedback.
All reactions