Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

feat: Keep volume level across audio devices #1328

Merged
merged 3 commits into from
Dec 16, 2023
Merged

Conversation

XangelMusic
Copy link
Collaborator

Created a function called SetVolumeFromDefaultDevice in the AudioSwitcher lib.

Created a new checkbox "Keep volume across playback devices" in Settings along with numerous KeepVolume values throughout the code for this checkbox.

This allows the user to keep the same volume level when switching devices. As a design choice, it can only switch between playback devices. This can be changed in the boolean inside the SetActiveDevice function of the ADeviceCycler lib.

n.b. SetVolumeFromDefaultDevice can be used for both Playback and Recording devices.

@Belphemur Belphemur self-requested a review December 16, 2023 14:41
@Belphemur
Copy link
Owner

@all-contributors please add @XangelMusic for code

Copy link
Contributor

@Belphemur

I've put up a pull request to add @XangelMusic! 🎉

Copy link
Owner

@Belphemur Belphemur left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Great work, thanks also for adding the feature to the UI and providing localization with tooltip.

Other than the part with my suggestion it's ready to be merged.

SoundSwitch.Audio.Manager/AudioSwitcher.cs Outdated Show resolved Hide resolved
Copy link
Owner

@Belphemur Belphemur left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Perfect I'll merge it and when I get access to my code certificate again I'll release a new version with it.

@Belphemur Belphemur merged commit ca293b5 into Belphemur:dev Dec 16, 2023
7 checks passed
github-actions bot pushed a commit that referenced this pull request Dec 19, 2023
## [6.8.0](v6.7.2...v6.8.0) (2023-12-19)

### Enhancements

* **.NET:** Move to .NET 8.0 ([43f0d60](43f0d60))
* **device::cache:** Improve the performance and speed of caching devices ([594b49c](594b49c))
* **device::cache:** Increase the TTL for refreshing device list ([6ab8028](6ab8028))
* **device::cache:** keep only one cache alive for all devices ([9b3a126](9b3a126))
* **device::cache:** rework the logic behind refreshing devices when changes are detected in the system. ([3c12b3f](3c12b3f))

### Languages

* **Bulgarian:** Translated Settings using Weblate ([b2cf464](b2cf464))
* **Bulgarian:** Translated Tray Icon using Weblate ([fffe534](fffe534))
* **Chinese (Traditional):** Translated Settings using Weblate ([4582119](4582119))
* **French:** Translated Settings using Weblate ([4496335](4496335))
* **French:** Translated Tray Icon using Weblate ([76905a4](76905a4))
* **French:** Translated Update Download using Weblate ([67c281b](67c281b))
* **German:** Translated Settings using Weblate ([061583c](061583c))
* **German:** Translated Tray Icon using Weblate ([3da0c83](3da0c83))
* **Korean:** Translated Tray Icon using Weblate ([4ca2b15](4ca2b15))
* **Polish:** Translated Settings using Weblate ([43f8fa2](43f8fa2))
* **Polish:** Translated Tray Icon using Weblate ([3b05aeb](3b05aeb))
* **Polish:** Translated Update Download using Weblate ([6cd0022](6cd0022))
* **Serbian:** Translated Tray Icon using Weblate ([d17e650](d17e650))
* **Slovenian:** Translated Tray Icon using Weblate ([b8c4269](b8c4269))
* **Swedish:** Translated About using Weblate ([2b0a112](2b0a112))
* **Swedish:** Translated About using Weblate ([943befb](943befb))
* **Swedish:** Translated Settings using Weblate ([9a182a1](9a182a1))
* **Swedish:** Translated Settings using Weblate ([49d3fcc](49d3fcc))
* **Swedish:** Translated Settings using Weblate ([f2eb255](f2eb255))
* **Swedish:** Translated Settings using Weblate ([d9e285f](d9e285f))
* **Swedish:** Translated Settings using Weblate ([3454648](3454648))
* **Swedish:** Translated Tray Icon using Weblate ([e939073](e939073))
* **Swedish:** Translated Tray Icon using Weblate ([fe21446](fe21446))
* **Swedish:** Translated Update Download using Weblate ([c95fe6e](c95fe6e))
* **Swedish:** Translated Update Download using Weblate ([1b65fa4](1b65fa4))

### Bug Fixes

* **Device::Cache:** Devices not being refreshed ([a113175](a113175)), closes [#1323](#1323)
* **profile:** possible issue with profile where the the state couldn't be restored after the profile ended. ([a648e4e](a648e4e))

### Features

* **volume:** Add an option to keep volume level across audio devices ([ca293b5](ca293b5)), closes [#1328](#1328)
Copy link
Contributor

🎉 This PR is included in version 6.8.0 🎉

The release is available on GitHub release

Your semantic-release bot 📦🚀

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants