Switch audio devices, lock volumes, and stop macOS from changing your sound settings after sleep or Bluetooth reconnects.
Switch devices. Open "Set Output Device" or "Set Input Device". Press Enter to switch. The window stays open so you can keep working.
Lock a device in place. Press Cmd+Shift+D on any device to make it your default. If macOS switches away (after sleep, Bluetooth reconnect, plugging in a monitor), the extension switches back on the next background refresh (roughly every minute). Manually switching gives you a 1-minute grace period before enforcement resumes.
Lock a volume level. Press Cmd+Shift+V on any device to pin its volume. If macOS resets it, the extension restores it on the next background refresh (roughly every minute). Changes under 2% are ignored so minor system adjustments don't trigger a reset.
See volume levels. Each device shows its current volume percentage. HDMI/DisplayPort devices that don't support software volume control show "Volume controlled by device".
Mute/unmute. Press Cmd+M on any device that supports mute.
Set exact volume. "Set Output Volume" and "Set Input Volume" commands let you enter a specific volume (0-100) and optionally pin it.
Switch entire setups at once. Combo commands let you switch input and output together — e.g., "desk" vs "meeting" vs "headphones". Disabled by default; enable in Raycast preferences.
| Command | What it does |
|---|---|
| Set Output Device | Browse and switch output devices |
| Set Input Device | Browse and switch input devices |
| Set Output Volume | Set volume for any output device (0-100) |
| Set Input Volume | Set volume for any input device (0-100) |
| Enforce Output Device | Runs in background. Keeps your default output device and pinned volumes in place. |
| Enforce Input Device | Runs in background. Keeps your default input device and pinned volumes in place. |
| Combo 1 / 2 / 3 | Switch input + output together. Disabled by default. |
| Shortcut | Action |
|---|---|
| Enter | Switch to device |
| Cmd+M | Mute / Unmute |
| Cmd+Shift+D | Set or clear default device |
| Cmd+Shift+V | Pin or unpin volume |
The enforce commands run silently every minute. They check two things:
If neither is configured, the commands do nothing.
Sets the active audio output device.
Sets the active audio input device.
Set the volume of an output device.
Set the volume of an input device.
Keeps your default input device and pinned volumes in place. Runs silently in the background every minute. If you disable this, your default device and pinned volumes will stop being enforced — macOS may switch devices or reset volumes after sleep, Bluetooth reconnects, etc.
Keeps your default output device and pinned volumes in place. Runs silently in the background every minute. If you disable this, your default device and pinned volumes will stop being enforced — macOS may switch devices or reset volumes after sleep, Bluetooth reconnects, etc.
This command has been replaced. Use Cmd+Shift+D in Set Output/Input Device to set a default device.
Sets the active audio output device to the favourite specified in the preferences
Toggle the active audio output device between the favourites specified in the preferences
Switch to the first input/output device combination
Switch to the second input/output device combination
Switch to the third input/output device combination
volume argument to the Set Output Volume and Set Input Volume commands, so a volume can be set silently from a hotkey or deeplink (e.g. raycast://extensions/benvp/audio-device/set-volume?arguments=%7B%22volume%22%3A%2220%22%7D)Press Cmd+Shift+D on any device to make it your default. If macOS switches away after sleep or Bluetooth reconnect, the extension switches back within 10 seconds. Manually switching gives you a 1-minute grace period before enforcement resumes.
Press Cmd+Shift+V on any device to pin its volume. If macOS resets it, the extension restores it within 10 seconds. Changes under 2% are ignored.
See current volume level for each device in the list. Mute/unmute with Cmd+M. Set exact volume (0-100) via Set Output Volume / Set Input Volume commands. Devices that don't support volume control (HDMI monitors) show "Volume controlled by device".
Device list loads instantly from cache on repeat opens. Volume data for all devices is fetched in a single call (~500ms) instead of per-device queries.
The old system where you ranked multiple devices as fallbacks is gone. Replaced by a single default device per direction. On first run, your top-priority device is automatically migrated to the new default.
The Customize Order command has been removed. Use Cmd+Shift+D in Set Output Device or Set Input Device to set your default. A redirect command is available for users who had it pinned.
Clean 512x512 monoline icons for all device types. Works properly with Raycast's tint system.