I have a Lumix S5ii and this camera able to do 30 shots per second. Maybe I can somehow capture dithering on MBA? Like setting proper shutter speed. And after using ffmpeg to make a video and see any differences/pixel flickering. I don't have any micro lenses unfortunately, to make a really close photos to display
I disabled dithering on Apple silicon + Introducing Stillcolor macOS M1/M2/M3
Did anyone experiment with the logging flags? I couldn't figure out where they end up. Don't thing they are written to disk automatically at least.
Found these as well. Not that ChatGPT descriptions can be trusted, but seemed promising.
enableDBMMode: This flag likely refers to a "Dynamic Backlight Management" mode. Dynamic Backlight Management (DBM) is a technology used to adjust the backlight intensity of a display based on the content being shown. This can enhance the viewer's experience by improving contrast and detail in dark areas of the image while also reducing power consumption. In a device's framebuffer, enabling DBM mode would allow the system to dynamically adjust backlight levels based on real-time screen content, optimizing for both display quality and energy efficiency.
enableBLMSloper: This flag seems to indicate an option to enable a "Backlight Luminance Modulation Slope" adjustment. This feature would allow the system to control the rate at which backlight luminance changes, possibly in response to changes in environmental lighting conditions or on-screen content. A sloper adjustment could fine-tune the backlight for smoother transitions or more accurate representation of content brightness, enhancing user comfort and potentially contributing to energy savings by avoiding overuse of high backlight levels.
madmozg Nice catch! Additionally, looking at the Pro Display XDR White Paper, the specs match the M3 MBP almost word for word, brightness (MBP has higher SDR nits), color gamut, refresh rates (MBP additionally has ProMotion), contrast ratio, reference color modes. The only thing that doesn't show up in MBP marketing is the "true 10-bit" part, which can be a marketing trick so as to not cheapen the Pro Display XDR.
I've now learned about a new variable besides the DCP, which is the display's TCON (Timing Controller). Does it perform its own dithering? To what extent is it influenced by driver properties?
- Edited
@aiaf Can confirm it works on my Macbook air M2 15inch (Ventura 13.5)! Thank you!
How to check:
Go to this page and enable/disable dithering while viewing test image --> http://www.lagom.nl/lcd-test/gradient.php
I'm clearly seeing banding appearing in the test image when dithering is disabled
My other findings:
ARM64 version shows colors in a different way compared to X64 (LibreWolf)
How did I test? Run this youtube video in LibreWolf ARM64-version and also X64-version, when compared, ARM64 looks more static to me. I guess this has to do with Rosetta.
https://www.youtube.com/watch?v=ksyYkA59LtU
Also very interesting, as @aiaf stated: "If you play a 60fps video on a 60Hz display while dithering is enabled, you actually get no dithering in the video for the most part. There’s no time to dither."
(Thanks to @async, you shared this github link before with us) https://github.com/abinabdc/flickeringMacFix
The program runs a small invisible video on the menu bar, the author of the program says it fixed flickering for him. Seeing your observation, maybe this can also be a different workaround with the same effect. I guess the program also forces the ProMotion refresh rate to stay always at 120hz. I have no ProMotion, as I have the Macbook Air, but maybe it's useful for people who have the Macbook Pro.
Would be interesting if someone with a microscope experiments a bit with Pro Camera. You can set custom fps and adjust a ton of options, as well as get a visual indication as to how much noise there is.
Also noticed that while zooming in you get this clear red and blue bleeding on white letters. Similar to what is annoying me.
- Edited
Lumix S5ii can do 24p/180fps? Perhaps trying capturing high speed video with the microscope held in front of the sensor (have to do this very carefully).
Has anyone noticed changes in pixel level flicker over time? In the morning my screen has less activity than when left on for a few hours later sampling with the scope at the same gradient dark area. Is this related to time/temperature compensation/timing controller?
https://www.cnet.com/reviews/apple-pro-display-xdr-preview/
In this article, they mention the pro display xdr maintain color accuracy over the whole day as opposed to other monitors which can do so only for 30 minutes!
Does the system do more/different dithering over time as an attempt to maintain color reproduction over time?
What would be the best way to get feedback on how many people have found resolution with stillcolor?
And how many of those are such that get red eyes from PWM and dithering,
async don't know how feasible it is to capture data that's sent to the built-in display, perhaps the m1n1 DCP tracer can help here. We have to contend with the DCP and TCON (if that's a separate chip on notebooks). Can anyone shed light on Apple TCONs? We also don't know what pixelcapture means in the context of DCP either.
- Edited
DisplaysShouldNotBeTVs I think I've figured out what Normal Mode
is- it's the counterpart to Self-Refresh Mode (or Low Power Mode). Useful when the image is static and there's no need to still transmit 60 frames per second, so we save energy overall.
See
https://www.anandtech.com/show/7208/understanding-panel-self-refresh
https://hardwaresecrets.com/introducing-the-panel-self-refresh-technology/
https://patents.google.com/patent/US9640146B2/en
https://patents.google.com/patent/US8749541B2/en
This can explain the apparent lag with the cursor. Perhaps self-refresh mode pauses dithering too. Repeats only a single frame.
One experiment we can try is to toggle Normal Mode on and off with a timer at t
intervals, starting with 1 second and see how that affects image quality, subjective eye strain, cursor lag, and system stability.
Hunter20 this is a super interesting concept! But as noted in my original post, only the video portion of the display does not experience dithering, surrounding elements will still be subject to dithering.
However, we can perhaps overlay a refresh-rate matched video over the entire screen. This video will contain precise noise to subvert any subsequent dithering algorithms. However care should be taken so that this video does not become another source of eyestrain.
- Edited
I talked to a guy who works as an hardware engineer for very big company with their mobiles phones, I told him my problem with the displays, and he was shocked and hear about this for the first time. He mentioned that they are just getting the displays from other manufacturers like samsung/lg/boe and don't give a sh1t what that display is, how it works and etc. They just assemble it and sell, thats it. So maybe this info would be some how helpful
aiaf I have an election app that overlays live static noise. The type people here would panic when seeing. I've used it plenty when using the built in display. It's super comfortable at times. Almost like white noise for the eyes. Especially when I start to get annoyed by glowing text or focus problems. It locks the refresh rate obviously, but my main feel has been that it gives enough input to keep something in the vision system activated enough to avoid some issue. I also get the feel that it is easier to focus at the right distance to where the screen is. This however makes all pixels change continously, so I would guess it might also prevent some other stuff by accident. Also it keeps the gpu at super high load and eats the battery.
- Edited
photon78s Absolutely. Text can suddenly start to glow again. I've been somewhat uncertain about if this is from the display, something closer to migraine switching on, or related to contact lens dryness / light scattering. Tbh I don't know. I do get similar effects on other text at times, but I've also had many cases where I reopen the laptop lid or change something and it seems to come on. The are multiple flags related to temperature and similar, so I guess in theory it could be. I've also usually felt that the screen is better in low power mode. Even when comparing with fixed refresh rate. I did not however check what framebuffer flags change when in that mode.
One slightly more far out theory of mine is that what is known but slightly changed triggers some other processing on the brain. Truetone is absolute hell obviously, but I often end up with way more issues after testing some color adjustments or resolutions. Or it could just be the reticular activating system and hypervigilance after focusing on it changes are good for a while.
Sure would be nice to have a straight forward objective measure for when problems are present.
- Edited
async yep i've done this before on my M1 XDR Pro a few times too! it's because people like you and me are only sensitive to invisible flicker (flicker trying to hide itself, like temporal dithering) but visible/obvious static noise is fine.
for example for me i'm actually totally fine to be at a concert with tons of obviously flashing intense strobe lights at once, but can't stand flourescent or cheap LED lights that are trying to "convince" me that they're on but are actually flashing on and off at 120hz.
something interesting i've noticed the few times i've used a visible static pattern like this, is that my vision persistence seems to get really good for like 15 minutes after looking away from the computer. like it suddenly feels like real life is running at a "way higher framerate" too and turning my head has a less "jagged" feeling than i'm usually used to experiencing in real life.
and for a bit after turning off the noise pattern, the display also looks WAY smoother than usual, like it feels like i'm suddenly looking at a screen from the future with double the resolution for a little bit of time.
it's a really good feeling that makes me think "is this the way people with better vision than me truly see the world?"
can you send me the app you made / upload it to GitHub?
The TCON also detects certain patterns that may be difficult for the LCD panel to display, and optimizes the display at the pixel level to minimize artifacts.
Sounds suspicious… deeper than the DCP level, "minimize artifacts", what is this optimization?
- Edited
That is why I was wondering why some says screens don't manage being color "accurate" over time and dithering and other algorithms can be used to "hide" defects in hardware. On my T480s, I recorded something but it is hard to be sure. Really need to find a better camera not just a better phone app with better camera sensor and ideally bigger/brighter scope as well.
Over at flickersense.org, it is reported that certain LED lights start out with no or very little flicker and start flickering over time as they "degrade". Similar things probably happen with screens.
photon78s Over at flickersense.org, it is reported that certain LED lights start out with no or very little flicker and start flickering over time as they "degrade". Similar things probably happen with screens.
Yes it’s my understanding that bulb manufacturers can use off-brand smoothing capacitors, where the liquid dialectic tends to dry up. This removes the smoothing capacitance from the original circuit.
- Edited
DisplaysShouldNotBeTVs Here's the tool. It's a bit rough. If you have node installed it should be runnable with npm i; npm run start
Not really relevant in this topic, but out of curiousity, when you get glowing text at times, try to turn on the light on your cellphone and hold it to the side of your head so you see the reflection in the screen. Try moving the reflected light on top of the text you read, and try moving the head together with the light. At least for me that instantly gets the text into focus again. The effect is way more prominent with my Mateview 28 that has a matte screen. I've had some luck with aiming light at the screen from the side of the screen as well previously. Not exactly sure how it cleans up the "glow", but it sure changes how easy the text is to read at times. Might even be related the proproreception.