madmozg if a true 10-bit monitor is driven by an Apple Silicon Mac it will still receive a temporally dithered image, this we established. Did you try it with GPU/DCP dithering disabled using Stillcolor or BetterDisplay? If temporal dithering is not your issue, it could be another type of LED light sensitivity or some other mechanism of these displays.
I disabled dithering on Apple silicon + Introducing Stillcolor macOS M1/M2/M3
madmozg you're wasting your time if you're testing Apple Silicon Macs and external monitors without disabling GPU/DCP dithering! We've proven in multiple empirical ways that Stillcolor and BetterDisplay's disable GPU Dithering options prevent the Mac from sending a temporally dithered image over the wire.
Here is a hardware confirmation that BetterDisplay 8/10bit switch works as intended.
From the feelings perspective, I prefer 8bit for now. I need to test more with 10bit.
I'm currently testing on MSI MPG321UR-QD, its a true 10bit panel. From the microscope perspective I didn't see any difference tho, don't know why yet. Will upload videos later.
Have also a question, if for example monitor have 8bit + FRC panel and the laptop sends just 8bit signal, is that monitor still goin to use FRC ?
Thanks @waydabber and @aiaf for the hard work.
madmozg keep testing, also try YCbCr and Limited Range options, you might feel a difference.
For commercial microscopes and cameras, they aren't sensitive enough to measure these tiny differences in light. I tried.
madmozg Have also a question, if for example monitor have 8bit + FRC panel and the laptop sends just 8bit signal, is that monitor still goin to use FRC ?
It shouldn't use FRC in that scenario.
@waydabber is there a way to implement a feature to show in menu bar:
- 8bit enabled or something similar (color mode status)
- Dithering disabled
To have it as a separate icons in menu bar. That would help to quickly understand that settings are the same.
Trying out MacOS Sequoia on the M1 Max. Never seen com.apple.prodisplay.plist before. Might have just missed it. It gets recreated when switching XDR presets on the built in display.
These seem interesting enough tho:
- enableGlobalBacklight
- enableAppleLook
- contrastEnhancementFactorLimits
Didn't spend much time as I guess the file will just be wiped our on reboot, and the last time I tried to create XDR presets I had a horrible time. Maybe they can be modified with BetterDisplay @waydabber?
Donux did you check all of those "disable" boxes in the NoMachine client advanced display connection settings? and set quality to 4 notches (important, the defualt quality level of 5 and higher works totally differently)
also, in the server-side NoMachine settings, did you disable acceleration and GPU encoding?
aiaf Thanks for the report! I added a Configuration Protection option for Color Mode, the app should reapply the change whenever the system reverts back. True, it's a Pro feature, but it's only a convenience one, a power user can just as easily create a script (some tools like Hammerspoon can be used for example as well) to run on wake, mode change or system startup and use betterdisplaycli to query the bit depth and switch if needed.
@madmozg - Thanks for the confirmation. Adding some menu bar indicators would indeed be a nice enhancement. I might add a feature like this - feel free to add an Issue for this under the app's GitHub Issues page, will tag it as an enhancement and do it when I get there! Thank you!
@async - wow, this is intriguing, did not notice that plist myself until now. I don't see enableGlobalBacklight
as a normal preset option (you can check what things the underlying API reports and offers as potentially changeable items under BetterDisplay's Display Information…/XDR Configuration
(under Settings/Displays) - these are mostly the same as a Preset export offers from System Settings. I'll experiment with it though, it would be nice to have an easy option to turn on global backlight (if that means turning off local dimming). The method of trying to force-enable it by changing various framebuffer settings did not work out very well (did have the desired effect to some extent but rendered the system unstable). Simply changing enableGlobalBacklight
to true
by editing the plist has no effect whatsoever.
waydabber The preset imports ignores quite a few things. Gave up on trying to run some of the flags the last time I tried. I guess you use some api for the XDR changes.
Not sure if you saw it, but I dug up a ton of bootflags and changable plist items that no one has looked into yet. Didn't have much time to play with any of it. Depending on what direction you're taking the app there might be some pretty useful stuff there. Still searching for a way to kill this horrible sharpening effect on all scaled resolutions.
https://ledstrain.org/d/2686-i-disabled-dithering-on-apple-silicon-introducing-stillcolor-macos-m1m2m3/1039
https://ledstrain.org/d/2686-i-disabled-dithering-on-apple-silicon-introducing-stillcolor-macos-m1m2m3/1029
https://ledstrain.org/d/2686-i-disabled-dithering-on-apple-silicon-introducing-stillcolor-macos-m1m2m3/1040
https://ledstrain.org/d/2686-i-disabled-dithering-on-apple-silicon-introducing-stillcolor-macos-m1m2m3/1020
DisplaysShouldNotBeTVs I did not do quality changes, but that 30 frames did some trick. Probably will need to try with some more changes. But, I have to say, it is so inconvenient, that I almost lack motivation. And 1:1 scaling does not work for me at all with noMachine, which is really disappointing. There must be so other solution, preferably connecting external monitor or windows laptop via USB-C and pushing an image there. Maybe even using some sort of network streaming with OBS or VLC and picking up that stream in windows laptop via ethernet cable.
Tried a bit on and off with the double invert trick for iPhone. Pretty significant effect. I have almost zero problems with it now, and it has been like this for at least a month. None. Dropping in 2 anectodal experiences in case others that are struggling with similar effects can provide some experiences that might make it a bit easier to relate them to some biochemistry.
But, after using the phone for a short while without the double invert trick again I realized that other monitors get these intense glowing red colors again. Seems super strange, as those sources doesn't trigger the effect on their own. Almost like the intensity of the iPhone recalibrates my vision. Like an on/off switch for HDR on other screens and lights. Same applies to led lights on cars, and it is most prominent for red.
I also noticed one other strange effect before I started doing the double invert. If I put on a color blind filter that skews the colors, like almost removing red from the iPhone screen it would significantly affect how I percieve other bright light sources for å pretty long time afterwards. If I remember correctly it turned the bright snow almost purple or green. For the white sky I often get this glowing yellow effect at times as well after screen use.
No idea what kind of sorcerery the screen is doing, but I'm really interested in what kind of adaptation it might be triggering.
- Edited
the quality change to 4 notches is 100% necessary because it prevents the screen from switching over and over between a color-fringed (compressed) version and less compressed version with slightly different colors every couple of seconds at random times (which is what happens at quality 5 and up)
at 4 notches and below, it remains the compressed version at all times, although this means you still get color artifacts they will stay the same at all times
also, another thing you need to do is disable show remote cursor pointer, otherwise the "pointer within the video stream" will cause anything it passes over to re-render and flicker slightly
hiding the remote pointer and only showing the local one, in combination with the quality setting, will give you the most still image
also, what do you mean by 1:1 scaling does not work? do you mean for retina / HiDPI displays? if so, then yeah that's right — it doesn't support Retina at all which is unfortunate. it only works properly when both the server and client are low DPI
for me i work through NoMachine on a standard low DPI laptop and it handles that perfectly. all i needed to do to get a 1:1 fit was create a custom BetterDisplay virtual display with a resolution that matches my Windows laptop
if it's still not working for you, try forcing the NoMachine server to H.264 compression mode and if that doesn't work try VP8 mode. while you're in that menu also set all the GPU acceleration options to software-only if you haven't done that already
So I just got a deal on a m1 MacBook Air with a messed up LCD. I also snagged a dasung 13.3 hd portable monitor for a extremely good price to which I plan to use on it for now. My question is which Mac osx version should I update to? I see 14.6.1 Sonoma is what it's trying to get me to update to but I'm assuming I can just manually update a older version?
The Mac currently is on OSX Monterey 12.5 and I noticed better display and still color doesn't support this version. Also do I just download better display or do I need that and still color both? I plan to eventually test other displays but need to find a baseline first.
photon78s mine has a front light but I haven't tried it or tested it yet. I am getting discomfort from the eink not sure why. Even with better display dithering set to off still is not comfortable. Certain mode on the eink flickers too
Vid here : https://imgur.com/a/6pBOwzA