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

Allow more configuration combinations to be saved in the favorites #3996

Open
featherwit opened this issue Feb 2, 2025 · 3 comments
Open
Labels
enhancement New feature or request

Comments

@featherwit
Copy link

featherwit commented Feb 2, 2025

Allow more configuration combinations to be saved in the favorites, including special refresh rates and color modes.

For example:
1.4K @ 23.98Hz RGB Full range 10-bit SDR
2.4K @ 59.94Hz YCbCr 4:2:0 10-bit HDR

Just like the Monitor Profiles feature in the Windows software DisplayFusion:
https://www.displayfusion.com/HelpGuide/WorkingWithDisplayFusionMonitorProfiles/

Switching between these settings using the keyboard will be very helpful for watching videos.😉

@waydabber waydabber added the enhancement New feature or request label Feb 2, 2025
@waydabber
Copy link
Owner

Right. Favorites are only for native modes currently. This is probably more appropriatly handled with some kind of Preset support which I was planning but with the extensive CLI support I think the best solution is to simply create a macOS Shortcut and use CLI to configure the apporpriate resolution and connection mode (at least for now this is the only way).

@featherwit
Copy link
Author

Right. Favorites are only for native modes currently. This is probably more appropriatly handled with some kind of Preset support which I was planning but with the extensive CLI support I think the best solution is to simply create a macOS Shortcut and use CLI to configure the apporpriate resolution and connection mode (at least for now this is the only way).

Indeed, I have found that entering commands through a shell script in Automator Quick Action can achieve this effect. I can also assign a hotkey to the Quick Action within the system. Additionally, I can use SleepWatcher to automatically switch when the device is woken up.

However, I have also discovered an issue. Suppose I am currently using the following settings:
60Hz bpc:8+range:full+encoding:rgb+hdrmode:sdr

When I use the following command:
betterdisplaycli set -namelike=sony -refreshrate=23.98Hz set -namelike=sony -connectionMode=bpc:10+range:full+encoding:rgb+hdrmode:sdr

BetterDisplay seems to prioritize the execution of the refresh rate change first and ignores the subsequent connectionMode parameter. I have to split the command into two parts with a 3-second interval in between, like this:

/Applications/BetterDisplay.app/Contents/MacOS/BetterDisplay set -namelike=sony -refreshrate=23.98Hz
sleep 3s
/Applications/BetterDisplay.app/Contents/MacOS/BetterDisplay set -namelike=sony -connectionMode=bpc:10+range:full+encoding:rgb+hdrmode:sdr

Only then can the commands be executed smoothly.

@waydabber
Copy link
Owner

Yes, you should separate these two commands as the refresh rate involves a normal mode switch. You can directly switch the connection mode by specifying the connection mode ID (which you can get by using get -connectionModeListAll), that can also do the refresh rate switch but it will not update the display mode fully so macOS will still show the old refresh rate - but in practice things should mostly work.

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

No branches or pull requests

2 participants