I do not know what it means, bet I have very noticeable eye strain even using macbook with noMachnine remote connection from Windows laptop. Is this expected considering that TCON is flawed? From my side dithering disabled on betterDisplay app.
I disabled dithering on Apple silicon + Introducing Stillcolor macOS M1/M2/M3
waydabber happy to report that this works! This is a major step into solving another piece of the temporal dithering puzzle. Thank you! I no longer need to use an old HDMI wire to force 8bpc on my external monitor.
Tested on SAMSUNG 32” Odyssey G7 with Display Port. Using @Blooey gradient image, banding is obvious in
8-bit mode vs 10-bit mode (GPU/DCP dithering disabled in both cases)
For anyone out of the loop, this means that external displays that are reported to be 10-bit as 8-bit+FRC can now function in native 8-bit mode without temporal dithering. No need for crappy wires!
Additionally, with GPU/DCP dithering disabled, you can guarantee that the display receives a clean 8-bit signal from your Apple Silicon Mac.
The only issue as reported here is the display reverting back to 10-bit mode on sleep which is very inconvenient.
- Edited
aiaf I tried many times in person that monitor. I've tested it with opple device and it didn't show any PWM for it, but it still gives me very slight symptoms. So I'm confused why:
- If its a true 10bit display and still gives weird symptoms, then the problem is with Apple chips and their gpu drivers
- If its not true 10bit, then it explains my slight symptoms
- It can be a mini-led, but I didn't find any flickering with opple or with my camera. I tested on white and dark backgrounds.
But after tons of all the tests I made already with all apple devices, I'm leaning towards that apple chips and the drivers are somehow fcked. I still remember how bad was start of their M1 chips, when you connected mac mini or laptop with M1 to external display, it made that display flicker. I know it's another problem, but I think its coming from the same global apple chip problem.
Here is opple results for Apple Pro XDR Display.
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.
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.