Windows lists every virtual endpoint any app has ever installed. A normal machine ends up with Steam Streaming Speakers, an Oculus virtual device and a handful of HDMI outputs that cannot be removed — and the two outputs you actually use are buried among them.
Fast Audio Switch shows only the outputs you ticked, under names you chose, and switches between them with one click.
Install
Download FastAudioSwitch.exe below, put it in a folder you like, and run it. That is the whole installation — one file, about 100 KB, nothing else to install. Tick Add to the Start menu and Start with Windows in settings if you want them.
Windows 10 or 11. No runtime needed: the app targets .NET Framework 4.8, which is already part of the operating system.
What it does
- Left or middle click the tray icon moves to the next output — with two outputs, a plain toggle.
- The icon shows what is playing: a coloured badge with your own one or two letters.
- A popup confirms the switch right above the tray, instead of a balloon tip that arrives late from the notification centre.
- Optional global hotkey, plus
--togglefor external key binders and stream decks. - Pin the icon next to the clock rather than hiding it behind the chevron.
- English and Russian, detected from Windows on first run.
- Portable: runs from wherever you put it, keeps a plain text
.ininext to itself, and writes no autostart entries to the registry.
HDMI and TV outputs
Windows only lists an HDMI endpoint while that screen is on and connected. If your TV is missing, switch it on and press Refresh. Once ticked, the output stays in your list even when the screen is off — it simply greys out, and switching skips over it.
A note on SmartScreen and antivirus
The binary is signed, but with a self-signed certificate, so Windows will still call it an unknown publisher. Verify the download if you like:
SHA256 A61090DF1ECB0FED5332540B513FEC808446534A951B05FBB1CABEFA1533AB3A
Earlier revisions of this app installed themselves into the user profile and wrote an HKCU\...\Run value, and Windows Defender quarantined them twice as Trojan:Win32/Bearfoos.A!ml. That verdict was a false positive, but the behaviour behind it was real: an executable that copies itself somewhere and registers for startup is what a dropper does. This release does neither — deployment is a copy you make, autostart is a Startup folder shortcut, and the only registry value touched is the Explorer setting that pins the tray icon.
Under the hood
Windows exposes no public API for changing the default audio endpoint, so the app uses IPolicyConfig — undocumented but stable since Windows 7 — with an IPolicyConfigVista fallback. The default is changed for the Console and Multimedia roles; Communications only when you tick that box, so a headset can stay the call device while music moves elsewhere.
Icons are drawn at run time, so the executable carries no image resources and the badge follows whatever name and colour you picked.


