Releases: Belphemur/SoundSwitch
SoundSwitch v6.15.0-beta.1
This is a huge new version where you can test setting audio device for specific application using the new app rules setting. Thanks to @Bluscream
Also, the notification settings has been fully overhauled to let you decide where to put your notification. Thanks to @XangelMusic
6.15.0-beta.1 (2026-04-21)
Features
- add copilot-setup-steps.yml to run Copilot agent on Windows (6dbc87f)
- add Sign-Binary.ps1 with SHA-256 signing, move code signing out of Inno Setup (95cc05b)
- app-rules: auto-open process picker and add description when creating a new App Rule (#2050) (0431a44)
- app-sound-lock: decouple process polling and implement notification batching (05b9f57)
- audio-manager: add ProcessMonitor for periodic process polling (202aa72)
- notification: add support for App Rule triggers and configuration (4fafaec)
- rethink release pipeline with zip artifact, Python markdown tool, and PowerShell download script (98a2a16)
- tools: add GitHub CLI as dependency in Install-BuildTools.ps1 (9a98686)
- tools: add Publish-Release.ps1, refactor Build-Installer.ps1, enforce PS 7.0+ (09a9e5b)
- ui: improve app rules grid, add process selection icons, and clear buttons (e48b47f)
Enhancements
- bump version to 6.14.3 for app rules patches (f6ba43c)
- icon: refactor icon extraction into general-purpose ref-counted GDI infrastructure (#2039) (a44433a)
- move to .NET 10 (0942d7c)
- Notifications Tab (877bd41)
Bug Fixes
- add Switch Recording Device option for tray icon double-click (615e354)
- address PR review feedback - revert Make.bat, add Build-Installer.ps1 and Install-BuildTools.ps1, fix LASTEXITCODE check, add permissions, auto-detect framework (0fcc4c7)
- app-rules: add logging to empty catch blocks (37e4867)
- app-rules: fix NU1510 compiler warnings (bbffe63)
- apply review feedback — error checks, LiteralPath, fix CI winget failure, document PowerShell 7+ (f349ea4)
- auto-detect .NET SDK version in copilot-setup-steps.yml from csproj TargetFramework (f064d96)
- banner: reuse custom position notification and improve keyboard hints (551c45f)
- build: replace NuGet signtool with Windows Driver Kit (WDK) installation via winget (8903306)
- ci: build the full solution instead of individual projects (17a0c35)
- ci: check Inno Setup registry before running winget install (85b17db)
- ci: finding the right version of the framework (cfc8f32)
- ci: reset exit code after handling already-installed Inno Setup in test-installer-build (4e97121)
- ci: trigger build on root-level NuGet/SDK configuration file changes (fcf1cc3)
- cli: change ExecuteAsync to protected for Spectre.Console 0.55.0 and build CLI in normal CI (4c9ab27)
- cli: fix cli lib update (a93a131)
- double-click: fix naming of double click feature (6101c48)
- download signtool from GitHub with smoke test, fallback to Windows SDK (7bed774)
- hotkey: reject AltGr input in hotkey capture to prevent blocking international key sequences on Windows 11 (#2075) (21f66ba)
- icon: use the new way to extract icons (8e53fa9)
- improve error message consistency and winget exit code handling (547fcc4)
- localization: Add fallback mechanism for missing localized strings (5a36295)
- missing designer file for switch Recording device (a04c624)
- notifications: address PR review feedback (3ec10e7)
- null-safe PATH refresh in Install-BuildTools.ps1 (4a669ca)
- replace full Windows SDK with lightweight NuGet signtool, add Certum SimplySign Desktop (1884ebf)
- replace ternary operator in Install-BuildTools.ps1 and add Pester tests (0b69f88)
- restore localized dropdown fallback behavior (63ffe2b)
- scope mismatch in callCount variable and add Directory.Parent mock properties (9f18897)
- settings: align split notification settings with model and runtime (c3e2c9a)
- signing: switch to DigiCert timestamp server with SHA-512 timestamp digest (ef978a1)
- tools: streamline responsibilities, invoke ISCC directly, derive release state from channel (83ef154)
- update Python version to 3.14 in Install-BuildTools.ps1 (e77b965)
- winsdk detection (f664d00)
SoundSwitch v6.14.2
Couple of bug fixes relating to use - and + as hotkey.
Trying to get the banner always visible, keep your game in borderless mode if you want to see the banner.
Translation to Armenian by @hranthakobian.
Major changes are updates to translation and addition of a new feature by @Scordo #491
I've added a new double click action "switch profile". It cycles the "active" profile with every double click.
Also clean up work the code base by @XangelMusic .
6.14.2 (2025-09-15)
Enhancements
- double-click: eliminate switch statement using factory pattern for double-click actions (a8e9bbd), closes #491 #1800
- hotkey: Add Subtract (-) and Add (+) as valid hotkey on a num pad (ad7e2ae)
Bug Fixes
- banner: Fix issue where the banner might not be Top Most. (889c9a0)
- double-click: use singleton factory instance to maintain profile cycling state (0591e4e), closes #491 #1800
- hotkey: Fix not being able to use Multiply and Device for hotkey (f323d90), closes #1853
Languages
- Add Armenian (d232247)
- Amharic: Translated About using Weblate (1e0cf10)
- Armenian: Added About translation using Weblate (61695d2)
- Armenian: Added Settings translation using Weblate (fabee80)
- Armenian: Added Tray Icon translation using Weblate (fac6327)
- Armenian: Added Update Download translation using Weblate (8130310)
- Armenian: Translated Settings using Weblate (e3000ca)
- Armenian: Translated Settings using Weblate (ce4adc1)
- Armenian: Translated Settings using Weblate (abe0eb3)
- Armenian: Translated Tray Icon using Weblate (4eb5fd7)
- Armenian: Translated Tray Icon using Weblate (49dbffb)
- Armenian: Translated Update Download using Weblate (7831db5)
- Chinese (Traditional Han script): Translated Settings using Weblate (d3fbfdb)
- Chinese (Traditional Han script): Translated Settings using Weblate (46cbc62)
- Chinese (Traditional Han script): Translated Settings using Weblate (eede079)
- Croatian: Translated Settings using Weblate (686089e)
- Danish: Translated Settings using Weblate (fa13761)
- Danish: Translated Tray Icon using Weblate (2a589e1)
- Danish: Translated Update Download using Weblate (4324bf6)
- Dutch: Translated Settings using Weblate (0382374)
- French: Translated Settings using Weblate (cfa5014)
- Italian: Translated Settings using Weblate (2919196)
- Japanese: Translated Settings using Weblate (58caf63)
- Japanese: Translated Settings using Weblate (56f8417)
- Korean: Translated Settings using Weblate (2cfea16)
- Korean: Translated Settings using Weblate (fc4d827)
- Korean: Translated Settings using Weblate (45f2fd2)
- Korean: Translated Settings using Weblate (ccc03aa)
- Norwegian Bokmål: Translated Settings using Weblate (bfeda5d)
- Polish: Translated Settings using Weblate (ed920f6)
- Portuguese (Brazil): Translated Settings using Weblate (1712e65)
- Portuguese: Translated Settings using Weblate (e9916b1)
- Russian: Translated Settings using Weblate (12cd94e)
- Swedish: Translated Settings using Weblate (f8ff6ba)
- Tamil: Translated Settings using Weblate (eb9d573)
- Tamil: Translated Settings using Weblate (40b9c4d)
🛡 VirusTotal GitHub Action analysis:
SoundSwitch v6.14.2-beta.3
Translation to Armenian by @hranthakobian.
Also adding some bug fix with using numpad as hotkey.
6.14.2-beta.3 (2025-08-12)
Enhancements
- hotkey: Add Subtract (-) and Add (+) as valid hotkey on a num pad (ad7e2ae)
Bug Fixes
- banner: Fix issue where the banner might not be Top Most. (889c9a0)
- hotkey: Fix not being able to use Multiply and Device for hotkey (f323d90), closes #1853
Languages
- Add Armenian (d232247)
- Armenian: Added About translation using Weblate (61695d2)
- Armenian: Added Settings translation using Weblate (fabee80)
- Armenian: Added Tray Icon translation using Weblate (fac6327)
- Armenian: Added Update Download translation using Weblate (8130310)
- Armenian: Translated Settings using Weblate (ce4adc1)
- Armenian: Translated Settings using Weblate (abe0eb3)
- Armenian: Translated Tray Icon using Weblate (49dbffb)
- Armenian: Translated Update Download using Weblate (7831db5)
- Chinese (Traditional Han script): Translated Settings using Weblate (d3fbfdb)
- Chinese (Traditional Han script): Translated Settings using Weblate (46cbc62)
- Chinese (Traditional Han script): Translated Settings using Weblate (eede079)
- Dutch: Translated Settings using Weblate (0382374)
- Italian: Translated Settings using Weblate (2919196)
- Korean: Translated Settings using Weblate (2cfea16)
- Korean: Translated Settings using Weblate (fc4d827)
- Korean: Translated Settings using Weblate (45f2fd2)
- Korean: Translated Settings using Weblate (ccc03aa)
- Tamil: Translated Settings using Weblate (eb9d573)
- Tamil: Translated Settings using Weblate (40b9c4d)
🛡 VirusTotal GitHub Action analysis:
SoundSwitch v6.14.2-beta.2
Major changes are updates to translation and addition of a new feature by @Scordo #491
I've added a new double click action "switch profile". It cycles the "active" profile with every double click.
Also clean up work the code base by @XangelMusic .
6.14.2-beta.2 (2025-06-25)
Enhancements
- double-click: eliminate switch statement using factory pattern for double-click actions (a8e9bbd), closes #491 #1800
Bug Fixes
- double-click: use singleton factory instance to maintain profile cycling state (0591e4e), closes #491 #1800
🛡 VirusTotal GitHub Action analysis:
SoundSwitch v6.14.2-beta.1
Warning ⚠️
This version has been removed because of a bug causing a loop where SoundSwitch would keep reinstalling the same update.
Major changes are updates to translation and addition of a new feature by @Scordo #491
I've added a new double click action "switch profile". It cycles the "active" profile with every double click.
Also clean up work the code base by @XangelMusic .
6.14.2-beta.1 (2025-06-24)
Languages
- Amharic: Translated About using Weblate (1e0cf10)
- Danish: Translated Settings using Weblate (fa13761)
- Danish: Translated Tray Icon using Weblate (2a589e1)
- Danish: Translated Update Download using Weblate (4324bf6)
- French: Translated Settings using Weblate (cfa5014)
- Japanese: Translated Settings using Weblate (58caf63)
- Japanese: Translated Settings using Weblate (56f8417)
- Norwegian Bokmål: Translated Settings using Weblate (bfeda5d)
- Polish: Translated Settings using Weblate (ed920f6)
- Portuguese (Brazil): Translated Settings using Weblate (1712e65)
- Russian: Translated Settings using Weblate (12cd94e)
- Swedish: Translated Settings using Weblate (f8ff6ba)
🛡 VirusTotal GitHub Action analysis:
SoundSwitch v6.14.1
6.14.1 (2025-06-04)
Bug Fixes
- settings: fix opening settings crashing the application when using CLI or opening SoundSwitch again (b3dca74)
Languages
- Amharic: Added About translation using Weblate (8a40dab)
- Japanese: Translated About using Weblate (3541994)
- Japanese: Translated Settings using Weblate (ca5b2fe)
- Japanese: Translated Settings using Weblate (39a2340)
- Japanese: Translated Tray Icon using Weblate (1286b92)
- Japanese: Translated Update Download using Weblate (1c2c658)
- Norwegian Bokmål: Translated Settings using Weblate (5aaf243)
- Portuguese: Translated Settings using Weblate (e11f18d)
- Swedish: Translated Settings using Weblate (8b7b738)
🛡 VirusTotal GitHub Action analysis:
SoundSwitch v6.14.0
Thanks to the work of @XangelMusic we have new features:
- Change the behavior of the microphone mute banner (you can easily disable it or keep it as before, fading)
- Change the double click behavior
- Export/Import SoundSwitch config
And also multiple small bug fixes like incorrect tooltip for volume.
6.14.0 (2025-05-25)
Features
- Add PowerShell script for Windows Update management (b81371a)
- add workflow for testing installer build without signing (12324fe)
- installer: Detect Win10 LTSC and if the right Windows Update is present (26173ef)
- Integrate Windows Update check into InnoSetup installer (f65b438)
- mute: choose the style of banner for the mute or no banner at all. (227b70b), closes #1746
Enhancements
- logging: Improve logging of setting up the volume listener. (f36fc56)
- Microphone Muted is now a drop down; (9fb0659)
- troubleshooting: export configuration file for troubleshooting (8f13c26)
- troubleshooting: Import configuration file (8a82ad7)
- troubleshooting: Import configuration file (88f2e1a)
Bug Fixes
- audio: Subscribe to OS-level volume notifications for devices (f59cc2c)
- banner settings: Banner Settings now properly disabled when notification type not set to banner (f7b9305)
- cli: fix building CLI (0f8232d)
- config: fix migrating to new configuration for persistent mute (465a0c9)
- Dialog box won't show when current UI language is selected (2956336)
- double-click: fix issue where double-clicking on the icon triggered the switching menu (b85adca)
- FullBanner(), MicrophoneMuteManager renamed, PersistentMuteNotification migrated (7a03b2c)
- import/export: Verify that the configuration is valid before importing it. (3786395)
- NotifyIcon.MouseDoubleClick() (08405c8)
- refine update search criteria and add sanity check in Invoke-KBInstall function (beaeca3)
- remove redundant sanity check in Invoke-KBInstall function (1e74c3c)
- secondsLabel ready for localization (7cd7221)
- settings: fix systray icon selection being blank even when set (28b12a4)
- single and double click properly distinguished on tray icon (64711ef)
- tooltip: fix volume tooltip stuck at 0% on the systray (c33793d)
🛡 VirusTotal GitHub Action analysis:
SoundSwitch v6.14.0-beta.4
Thanks to the work of @XangelMusic you can now in the troubleshooting tab export and import config of SoundSwitch.
6.14.0-beta.4 (2025-05-22)
Enhancements
- troubleshooting: export configuration file for troubleshooting (8f13c26)
- troubleshooting: Import configuration file (8a82ad7)
- troubleshooting: Import configuration file (88f2e1a)
Languages
- Italian: Translated Settings using Weblate (9917b1f)
- Portuguese (Brazil): Translated Settings using Weblate (18fb33b)
Bug Fixes
- import/export: Verify that the configuration is valid before importing it. (3786395)
🛡 VirusTotal GitHub Action analysis:
SoundSwitch v6.14.0-beta.3
6.14.0-beta.3 (2025-05-10)
Languages
- French: Translated Settings using Weblate (5a3fdfd)
Bug Fixes
- banner settings: Banner Settings now properly disabled when notification type not set to banner (f7b9305)
- double-click: fix issue where double-clicking on the icon triggered the switching menu (b85adca)
- settings: fix systray icon selection being blank even when set (28b12a4)
- single and double click properly distinguished on tray icon (64711ef)
- tooltip: fix volume tooltip stuck at 0% on the systray (c33793d)
🛡 VirusTotal GitHub Action analysis:
SoundSwitch v6.14.0-beta.2
You can now control the behavior of the double click. Thanks to @XangelMusic for this feature.
6.14.0-beta.2 (2025-05-06)
Languages
- Arabic: Translated Settings using Weblate (2c29b85)
- Bulgarian: Translated Settings using Weblate (3a4656c)
- Chinese (Simplified Han script): Translated Settings using Weblate (2175efc)
- Chinese (Traditional Han script): Translated Settings using Weblate (f81ce81)
- Croatian: Translated Settings using Weblate (a8ca4d2)
- Czech: Translated Settings using Weblate (5f792a6)
- Danish: Translated Settings using Weblate (ee3a78c)
- Dutch: Translated Settings using Weblate (1ef9918)
- French: Translated Settings using Weblate (ae5e32c)
- German: Translated Settings using Weblate (40deacd)
- Greek: Translated Settings using Weblate (0aa6656)
- Hebrew: Translated Settings using Weblate (9c4c254)
- Hebrew: Translated Settings using Weblate (df461d6)
- Hungarian: Translated Settings using Weblate (6a6ff2b)
- Italian: Translated Settings using Weblate (72763ea)
- Italian: Translated Settings using Weblate (8d6f52b)
- Japanese: Translated Settings using Weblate (dc8aa59)
- Korean: Translated Settings using Weblate (1251740)
- Norwegian Bokmål: Translated Settings using Weblate (263ff53)
- Norwegian Bokmål: Translated Settings using Weblate (f087a20)
- Norwegian Bokmål: Translated Settings using Weblate (be6a36d)
- Polish: Translated Settings using Weblate (99dcf0b)
- Portuguese (Brazil): Translated Settings using Weblate (b73e5b2)
- Portuguese (Brazil): Translated Settings using Weblate (ee81ba4)
- Portuguese (Brazil): Translated Settings using Weblate (9342c9d)
- Portuguese: Translated Settings using Weblate (dec3dc3)
- Russian: Translated Settings using Weblate (12dbe7b)
- Russian: Translated Settings using Weblate (87f494a)
- Serbian: Translated Settings using Weblate (8e60d30)
- Slovenian: Translated Settings using Weblate (19e9405)
- Spanish: Translated Settings using Weblate (05065ac)
- Swedish: Translated Settings using Weblate (607c843)
- Tamil: Translated Settings using Weblate (66a6be0)
- Thai: Translated Settings using Weblate (e6bb066)
- Turkish: Translated Settings using Weblate (30a2747)
- Ukrainian: Translated Settings using Weblate (a0ec425)
Bug Fixes
- NotifyIcon.MouseDoubleClick() (08405c8)
🛡 VirusTotal GitHub Action analysis: