Audio Deck saves named profiles that each pin a default output and input device, then switches Windows to a profile in one click, one command, or one Stream Deck button. Profiles live in a local JSON file. No account, no cloud, no background service.
Quick Switch — pick a profile and switch. Offline devices are marked and applied automatically when they reconnect.
Speakers for music, a headset for calls, an interface for recording. Save each as a profile and move between them without touching Windows sound settings.
Each profile pins one default output device and one default input device. Switch to a profile and Windows changes both at once.
The Quick Switch tab lists every profile. Click Switch to Selected Profile, or just double-click a profile to apply it.
--list and --profile NAME run headless with a process exit code, so any script or launcher can drive it.
Map a profile to a physical key with BarRaider's Advanced Launcher plugin, or a one-line batch file. One press, one setup.
Pin a device that is currently off, like a Bluetooth headset. The moment it reconnects, the pending switch is applied automatically.
If one device in a profile is missing, the rest are still applied and the missing one is reported, so a switch never silently half-fails.
The device list refreshes on Windows device changes and periodically. Refresh Devices forces an immediate rescan on demand.
Profiles are stored as JSON under %LOCALAPPDATA%. Runs per user, no admin rights, nothing leaves your machine.
Check for a newer release straight from the Help menu, so you always know when an update is available.
Create and edit profiles on the Configuration tab. Name the profile, pick an output device and an input device from the live dropdowns, and save.
Configuration — the profile editor with live output and input device dropdowns.
With no arguments Audio Deck opens the GUI. With --list or --profile it runs headless and returns an exit code, which is exactly what a Stream Deck button or a batch file needs.
# List all profiles AudioDeck.exe --list # Switch to a profile by name AudioDeck.exe --profile "Gaming Setup" # Version, help, or launch the GUI AudioDeck.exe --version AudioDeck.exe --help AudioDeck.exe # no args = GUI
# Application AudioDeck.exe # Arguments --profile "Gaming Setup" # One key per setup. Press it, # the default output and input # devices switch instantly.
Audio Deck follows a four-layer clean architecture: UI and CLI are clients of the application layer, which orchestrates a pure domain, while infrastructure implements the domain's interfaces against Windows Core Audio and the filesystem. Dependencies point inward and are wired in one explicit composition root.
A per-user installer from the Releases page, no Python needed. Or run from source in a few commands.
Download the latest AudioDeckSetup.exe from GitHub Releases and run it. The themed installer is per user and needs no admin rights: it installs Audio Deck, registers it in Windows Settings > Apps and creates Start Menu and desktop shortcuts. Your profiles live in %LOCALAPPDATA%\AudioDeck\profiles.json.
Windows 10 / 11. Licensed LGPL-3.0. Built with Python, PySide6, pycaw and comtypes over the Windows Core Audio API.
# Clone and set up git clone https://github.com/oernster/AudioDeck cd AudioDeck python -m venv venv venv\Scripts\activate # Install and run the GUI pip install -r requirements.txt python src\main.py # Build the app, then the installer python buildexe.py # dist\AudioDeck.exe python buildinstaller.py # AudioDeckSetup.exe