Skip to content

Repository files navigation

Audio Switch Notifier

Audio Switch Notifier

Audio Device Switcher with Win11 Style FlyOvers

A lightweight Windows tray utility that shows a native-feeling flyout whenever your default audio output device changes — and lets you switch between your favourite outputs with a single hotkey.


Why

Windows tells you almost nothing when your audio output changes. Plug in headphones, wake a Bluetooth speaker, or switch to your monitor over HDMI, and the only way to know where the sound actually went is to open the volume flyout and look.

Audio Switch Notifier fills that gap with a small acrylic toast that slides up from the taskbar, shows you the device that just became active, and gets out of the way.

Features

Toast notifications

  • Win11-style flyout — acrylic blur, rounded corners, and a slide-in animation from the taskbar edge, styled to sit alongside Windows' own volume OSD rather than fight it
  • Automatically yields — if you adjust the volume while the toast is up, it dismisses itself so it never covers Windows' volume flyout
  • Six screen positions — pick any corner or the top/bottom centre with a visual, monitor-shaped picker
  • Adjustable duration — 1.5 to 8 seconds
  • Adjustable background opacity — 0–100% acrylic tint
  • Follows your system theme — light and dark are both handled, and the toast repaints when you toggle Windows' theme

Device management

  • Nicknames — rename Speakers (Realtek(R) Audio) to Desk Speakers
  • Per-device icons — choose from speaker, headphones, monitor, TV, Bluetooth, USB, or a generic fallback
  • Remembers disconnected devices — settings for a device you've unplugged are kept and clearly marked, so nothing is lost when you plug it back in

Output cycling

  • Global hotkey — assign any Ctrl/Alt/Shift/Win combination to cycle the default output device
  • Choose what's in the rotation — tick only the devices you actually switch between, so the hotkey skips virtual and rarely used endpoints

Notification sound

  • Optional audio cue when the output changes — off by default
  • Custom sound file (.wav, .mp3, .wma) or the default system sound
  • Configurable start delay (0–1500 ms) — USB, HDMI, and Bluetooth devices aren't rendering the instant Windows reports the switch, so a short delay stops the sound clipping on slow-to-wake hardware

Tray

  • Live tray icon that reflects the icon assigned to the current output device
  • Theme-aware — repaints for light and dark taskbars, and renders crisply at any display scaling
  • Double-click to open settings, right-click for the menu
  • Start with Windows — optional, off by default
  • Single instance — launching it again focuses the existing one instead of stacking

Installation

Download the latest AudioSwitchNotifier.exe from the Releases page and run it. That's it.

The release build is self-contained — the .NET runtime is bundled inside the executable, so there is nothing to install first. It lives in your system tray; there is no installer and no background service.

Requirements: Windows 10 or 11, 64-bit.

On first launch Windows 11 hides tray icons it hasn't seen before. If you don't see it, click the ^ chevron on the taskbar. To pin it permanently: Taskbar settings → Other system tray icons → Audio Switch Notifier → On.

Building from source

Requires the .NET 8 SDK.

# Debug build
dotnet build

# Self-contained single-file release
dotnet publish -p:PublishProfile=SingleFile

The published executable is written to publish/AudioSwitchNotifier.exe.

Note that PublishTrimmed is deliberately left off in the publish profile — WPF is not trim-compatible, and enabling it produces a build that succeeds and then fails at runtime when XAML reflects over a trimmed type.

Configuration

Settings are stored as JSON in your user profile and are written when you press Save. Removing a device from the Audio Outputs tab deletes its saved nickname and icon.

Tech

C# / .NET 8 / WPF, talking to the Windows Core Audio APIs (IMMDeviceEnumerator, IAudioEndpointVolume) via COM interop, with SetWindowCompositionAttribute and DwmSetWindowAttribute for the acrylic and rounded-corner treatment.

H.NotifyIcon.Wpf Tray icon
WPF-UI Fluent controls and theming
Fluent System Icons Device icon glyphs

Credits

Application icon

Sound wave icons created by Ahmad Yafie - Flaticon

Used under the Flaticon licence, which requires this attribution. If you fork this project and keep the icon, please keep the credit with it.

Built with Claude

This application was designed and built with Claude, Anthropic's AI assistant. The architecture, implementation, and this README were produced in collaboration with Claude Code. Attribution is also shown in the app's About tab.

Licence

MIT — do what you like with the code, keep the copyright notice.

The application icon is not covered by the MIT licence; it is used under the Flaticon licence and must keep its attribution. See Credits above.

About

Audio Device Switcher with Win11 Style FlyOvers - a Windows tray utility that shows a native-style acrylic flyout when your default audio output changes

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages