feat: native Core Audio backend (replaces svcl) + Active-only pickers + cycle shortcut - #13
Merged
Merged
Conversation
… + cycle shortcut - Replace SoundVolumeCommandLine (svcl.exe) with an in-process Windows Core Audio COM backend: enumerate render endpoints with their real states, read the default endpoint, set Console/Multimedia/Communications through IPolicyConfig and verify all three roles with one bounded retry. - Remove the NirSoft download/hash/extraction path from clean installs and delete a stale legacy svcl.exe during upgrades. - Device pickers (installer + Reconfigure wizard) list only Active endpoints (falling back to all with a notice if none are Active). - Installer offers a shortcut after picking headset/fallback: validate the ON->OFF->ON cycle (auto-detect mode) or use the endpoints as-is assuming WindowsEndpoint. - Language guard: allow plural collection helper nouns, avoid the submenu false positive. Co-authored-by: CommandCodeBot <noreply@commandcode.ai>
… cycle shortcut) Co-authored-by: CommandCodeBot <noreply@commandcode.ai>
The installer now asks which kind of headset was picked instead of a vague "validate cycle or use as-is": [1] Standard wireless (Bluetooth/USB, e.g. Jabra) -> WindowsEndpoint [2] Logitech PRO X 2 (LIGHTSPEED) -> LogitechGHub via G HUB [3] Not sure -> run the ON->OFF->ON cycle and auto-detect Explains per option when each detection mode is the right one, so a Logitech user does not pick WindowsEndpoint (which cannot tell ON from OFF for the PRO X 2). Co-authored-by: CommandCodeBot <noreply@commandcode.ai>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Replaces
svcl.exe(SoundVolumeCommandLine/NirSoft) with an in-process Windows Core Audio COM backend, and improves the device pickers.Active,NotPresent,Disabled,Unplugged), read the default render endpoint, set Console/Multimedia/Communications viaIPolicyConfig, and verify all three roles after each switch with one bounded retry. Failures read asUnknown(never switch on unknown).svcl.exeduring upgrades.Device StateisActive(fallback to all with a notice if none are Active), so you don't pick a NotPresent/Disabled device by mistake.WindowsEndpoint(skips the power dance).submenufalse positive.Based on the closed #10 with the picker improvements and cycle shortcut added; rebased cleanly onto
mainafter #9 merged (no svcl, no #9 churn).Validation
Not validated by CI: real headset behavior. Recommend a manual ON→OFF→ON test on a WindowsEndpoint device (e.g. Jabra) and on Logitech PRO X 2 (G HUB fallback) before releasing.