You can select any audio input device on your system from the menu bar (macOS), the system tray (Windows), or the Audio input picker in the main window (Linux). This includes the built-in microphone, a USB microphone, AirPods, a Bluetooth headset, and a virtual audio cable. On macOS, HyperWhisper keeps your selection after a restart. On Windows and Linux, the selection does not persist. For more information, see Persistence. On macOS and Windows, the device list refreshes when you connect or disconnect hardware. On Linux you refresh the list yourself.
- Click the HyperWhisper icon in the menu bar.
- Move the pointer onto Microphone to open the submenu.
- Click the device that you want to use. A checkmark shows the active device.
The list shows (Default) next to the system default input device. If you do not select a device, HyperWhisper records from the macOS default device at the time of each recording.
- Right-click the HyperWhisper icon in the system tray.
- Move the pointer onto Microphone to open the submenu.
- Click the device that you want to use. A checkmark shows the active device.
At each launch, HyperWhisper selects the first device that Windows reports. Your selection from the last session does not carry over. If that device is removed while the app runs, HyperWhisper selects the first available device. For more information, see When a device disconnects.
- Open the main window. Find the Audio input picker on the Record and transcribe page.
- Select the device that you want to use.
The list comes from the active PipeWire or PulseAudio service, which HyperWhisper reads with pactl. If pactl is not on your PATH, the picker stays empty and HyperWhisper reports pulse_devices_unavailable.At each launch, HyperWhisper selects the default source of your audio service. If you do not have a default source, it selects the first device in the list.
Real-time device discovery
You do not need to restart HyperWhisper after you connect new hardware.
HyperWhisper registers CoreAudio property listeners for the device list and for the default input device. When you connect a USB microphone, pair AirPods, or change the system default in System Settings → Sound, the Microphone submenu updates automatically. HyperWhisper makes this update with an async main-actor dispatch.
HyperWhisper subscribes to the Windows Core Audio API (MMDeviceEnumerator). It receives device-added, device-removed, device-state-changed, and default-device-changed events. HyperWhisper debounces these notifications by 250 ms. As a result, a USB hub with many devices causes one refresh, not one refresh for each device. The Microphone submenu updates automatically after the debounce window.
Linux does not watch for device changes. Click Refresh devices next to the Audio input picker after you connect or disconnect hardware.A refresh keeps your current selection if the device is still in the new list. If the device is gone, HyperWhisper changes to your default source, or to the first device in the list.
When a device disconnects
A Bluetooth disconnection or a USB unplug can remove your selected microphone. If this occurs, HyperWhisper clears the selection and uses the macOS system default input device. HyperWhisper also clears your stored preference. As a result, the app does not try to connect again to a device that is not available.
If the selected device is removed and then returns, HyperWhisper matches it by name. If the name is not in the list, HyperWhisper selects the first available device. The tray menu shows the new selection automatically.
On macOS, a device that you select in the Microphone submenu also becomes the system-wide default input device. The selection does not apply to HyperWhisper only. Other apps that use the system default, such as video calls and voice memos, also change to this device. The change stays until you change the system default somewhere else.
Persistence
HyperWhisper stores your selected device ID in UserDefaults, under the key selectedMicrophoneId. An empty value tells HyperWhisper to use the macOS system default. The setting stays after app restarts and macOS updates.
On Windows, the device selection does not persist after a restart. At each launch, HyperWhisper selects the first device that Windows reports. Your selection from the previous session does not apply.
On Linux, the device selection does not persist after a restart. HyperWhisper holds the selection in memory only, and it does not write a device ID into your settings file. At each launch it selects the default source of your audio service.To make the selection permanent, set the default source in your desktop’s sound settings, or with pactl set-default-source <name>.
Keep Microphone Warm
All three desktop platforms have a Keep Microphone Warm option. This option holds an idle capture stream open between recordings. As a result, the audio start delay is shorter when you press your shortcut. The delay is longest with Bluetooth devices, because these devices power down the microphone when they are idle.
Enable it in Settings → Sound → Keep Microphone Warm. It is off by default.
Enable it in Settings → Sound → Keep Microphone Warm. It is off by default.
Enable Keep the selected microphone warm between recordings in Settings → Audio and desktop. It is off by default. Click Save settings to apply it.Linux holds the stream open on the device that is selected when you save. If you change the device afterward, save the settings again.
Keep Microphone Warm increases the background use of the microphone permission. If your operating system shows that HyperWhisper uses the microphone when you do not record, this setting is the cause.