-
Notifications
You must be signed in to change notification settings - Fork 649
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
Add settings profiles #594
base: master
Are you sure you want to change the base?
Conversation
… this commit, only profile management is implemented and no existing settings data is handled any differently.
…tream uses settings values from the current active profile.
…e read-only by providing a READ function instead of a MEMBER variable.
…tion dropdown and delete profile button are in a row.
…oose profile combo box is set as the focused item.
…gs profiles related debug logging.
I would love if this got merged in! Some games look amazing at 4K@60, some games I prefer to play at 1080@120. This would be so helpful to quickly swap profiles. @cgutman would you be up for taking a look at this so it can get merged in? :) |
I was about to start work on this feature until I found this. Will this PR be completed anytime soon? |
Yeah the main thing was basically the design of how profiles would work with different hosts and apps. It seems like we probably want a combination of per-app, per-host, and global settings with some sort of precedence system. You probably want the freedom to make global changes to things like video decoder, finding PCs on the local network, UI language, etc. without having to go update every profile. For things like muting host PC speakers, you probably want that per-host. Settings like remote desktop mouse mode, HDR, and resolution probably tend to be per per-app. However, there's a ton of overlap between per-app, per-host, and global settings. Bitrate might be a global or per-host setting, depending on if the network bottleneck is on the client or host side. Resolution and frame rate might be a global or per-app setting depending on your host PC performance and personal preference between image quality and performance. Reversing the scrolling direction might be global or per-host, depending on whether the host or client has inverted scrolling. As a user, how do I create and manage these profiles? How do I set precedence for each of these settings? How can I easily tell which combination of settings are the actual ones being applied (and if something isn't applied as expected, how can I figure out why?) I don't have a clear idea answer to these design questions. If anyone has thoughts on this, I'd be happy to hear them. |
I don't think you need to get that far into the weeds when it comes to the first iteration of the feature. A simple menu that offers the ability to snapshot your current host-level settings (all of them from host speakers, to bitrate, to resolution, etc) and give them a name is a perfect MVP. Most users are only connecting to one host but may have changes that need to be made depending on their client conditions like whether or not they are on wifi or ethernet, whether or not they need to change the resolution due to a particular app or game, or if they are enabling remote desktop mouse. I posted a message in Discord if there is any way I could help build this out as I am a user who definitely needs this with my client setup. |
My thinking at the time was similar to what @ZacTyAdams has said, a MVP/simple approach to having this functionality available. A solution could go as deep as per-app, per-host etc, but from my experience as a user in emulators like Dolphin on Android, it comes with it's own issues such as it becoming difficult to keep track of the level at which something has been changed, and more per-app management. The way it's set up here, users aren't impacted by it unless it's a feature they want to interact with. At which point, there is some complexity in managing these profiles, but whatever solution is ultimately used will always have that to a certain degree. |
Any updates on this? Is there anything we can contribute to push this PR?
As far as I understand the PR, profiles can be managed in the client settings. The applied settings are visible at the top before selecting a host. Personally, this is exactly what is was looking for - simple and straightforward. |
I'm still pretty interested in this feature on clients; I often change res/fps/bitrates for different games. |
+1 for getting this implemented (7 month check in here). |
This commit implements a feature discussed in #213.
It allows users to create settings profiles which store the changes they make on the settings menu under a user-defined name. Multiple profiles can be created, deleted and switched between.
It has been implemented in a non-intrusive way for those who don't wish to use this feature, as the only thing that is different to their experience is the 'save as new profile' box at the bottom of the settings menu.
This update has introduced new text into the UI which would need translating before release.