GulfHairdresser / SoundSwitch
git clone https://github.com/GulfHairdresser/SoundSwitch.git
Per-app audio device profiles that actually stick between reboots
+-34
stars, 24h · #62,547
+~-79
stars, 7 days · #62,540
+81
stars, 30 days · #8,248
81
★ total · -49% this week
33
forks · 1 open issues
Star history (as recorded here)
LanguageHTML
LicenseMIT
Created2026-10-09 (14d ago)
Last push14d ago
Watchers40
OwnerUser
GitHub topics
Links
README excerpt
SoundSwitch Per-app audio device profiles that actually stick between reboots Windows desktop app . Local-first . No account required --- ## Table of contents 1. What SoundSwitch is 2. Why it exists 3. Feature tour 4. Interface 5. Install 6. First run 7. How it works 8. Keyboard shortcuts 9. Configuration 10. Troubleshooting 11. FAQ 12. Roadmap 13. Build from source 14. Privacy 15. Contributing 16. License --- ## What SoundSwitch is SoundSwitch is a Windows desktop app that handles **audio**: per-app audio device profiles that actually stick between reboots. It runs entirely on your machine, stores its data in a plain local file, and does not require an account, a browser extension, or an internet connection to do its job. The core idea is small on purpose. SoundSwitch does one thing well instead of ten things in a menu you never open. ## Why it exists Most tools in this space are a web upload with a login, or a bundled suite that ships five features you did not ask for. SoundSwitch started as a side project because the existing options wanted an account for a job that should take two clicks and no internet connection. The design brief was short: open the app, do the thing, close the app. Everything in SoundSwitch should fit in that loop. ## Feature tour 1. **Assign Spotify to speakers** , Discord to a headset, and OBS to a virtual cable with one rule each 2. Hotkey cycles the system default between any ordered list of devices 3. **Follows the device** , not the index: profiles survive a BIOS reorder or a new USB port 4. Automatic switch when a Bluetooth headset connects or disconnects 5. **Communication device** , playback device, and recording device each get their own profile 6. Per-app volume memory so your games do not blow your eardrums after a Zoom call 7. **Tray popup with one click per device** , searchable when the list gets long 8. No background audio session; the service is idle until a device event fires ## Interface The main window is organized around the one workflow you came for. Everything optional is one click or one hotkey away; nothing is buried four menus deep. ## Install The quickest path is the signed .zip from the download link: Download the latest release (.zip) 1. Download the .zip from the link above. 2. Extract it anywhere; a user folder is fine, admin rights are not required. 3. Run the executable inside the extracted folder. 4. Pin it to the Start menu or add it to startup from the Settings tab if you want it running in the background. The archive is self-contained: it does not touch the registry on first launch and it does not install a service without your explicit consent. To remove SoundSwitch completely, delete the folder you extracted to and the data folder at `%LOCALAPPDATA%/soundswitch`. ## First run On the first launch, SoundSwitch walks through four short steps: 1. **Pick a workspace location.** This is where the local database lives. The