Stillcolor
Disable temporal dithering on your Mac with this lightweight menu bar app. Designed for Apple silicon Macs.
Install / Use
/learn @aiaf/StillcolorREADME
Stillcolor for macOS
<img src="https://github.com/aiaf/Stillcolor/assets/119462/26f4fe39-44bb-436d-9348-fc5ba9e8dfde" align=left width=256> Save your eyesight and disable temporal dithering on your Mac with Stillcolor, a lightweight menu bar app for macOS running on Apple M1/M2/M3.Why?
Heaps of people are sensitive to certain properties of modern displays such as blue light, PWM, and temporal dithering (FRC) which alternates pixel colors at the speed of your display's refresh rate, tricking your eyes into perceiving a wider range of colors than the display can actually produce.
These sensitivities manifest as eyestrain and fatigue, dry eyes, headache, nausea, inability to focus, and other physical symptoms.
There's even a petition urging Apple to make use of these technologies known and to implement accessbility options.
While there are apps and accessories to help dim blue light, and plenty of flicker-free monitors, temporal dithering can happen at the GPU level with no visible option to disable it (such as the case in Apple silicon Macs).
Stillcolor allows you to disable GPU/DCP-generated temporal dithering from user space, helping massively reduce eyestrain with little to no degradation in image quality.
Caveats
Note that while Stillcolor is 100% confirmed to remove GPU/DCP-generated temporal dithering, which is applied directly to the pixel framebuffer right before it's sent to the external/embedded display, the display panel's timing contoller (TCON) may still apply its own dithering/FRC to achieve advertised color bit depth. Whether or not Apple displays actively use TCON dithering in addition to DCP/GPU dithering is under investigation.
Story and write-up
Stillcolor in action
See this timeblend video of how your screen looks like with temporal dithering vs without:
https://www.youtube.com/watch?v=D9AZqJH-U-U
Requirements
- Apple silicon Mac e.g. M1/M2/M3
- macOS >= 13
Installation
Head over to Releases and download the latest zip.
Unzip Stillcolor.app to your Applications folder and launch.
Select “Launch a login” to make this app run automatically and disable dithering whenever your computer starts.
Verifying status of temporal dithering
To check wether the app did the job, run the following in Terminal:
ioreg -lw0 | grep -i enableDither
Should see 1 or more ”enableDither” = No corresponding to each live or past display.
To re-enable dithering simply uncheck “Disable Dithering.”
enableDither is reset back to Yes on computer restart that's why you need to launch this app on login.
To verify that your GPU is not applying dithering you can try a visual test by visiting Lagom LCD Gradient (banding) test
Set your built-in display’s color profile to sRGB at full brightness and look carefully at the gray parts, you should be able to see subtle banding when you disable dithering which happens in realtime.
And if you're sensitive to temporal dithering you should notice a lot less eyestrain while dithering is disabled.
A more complicated approach is to use a video capture card and record your display's uncompressed output then run the recording through ffmpeg to visualize dithering with something like the following command:
ffmpeg -i input.mov -sws_flags full_chroma_int+bitexact+accurate_rnd -vf "format=gbrp,tblend=all_mode=grainextract,eq=contrast=-60" -c:v v210 -pix_fmt yuv422p10le diff.mov
Roadmap
- Make this app compatible macOS 11+
- Create a foolproof and easy dithering test
- Intel Macs?
- iOS?
Related Skills
diffs
339.1kUse the diffs tool to produce real, shareable diffs (viewer URL, file artifact, or both) instead of manual edit summaries.
clearshot
Structured screenshot analysis for UI implementation and critique. Analyzes every UI screenshot with a 5×5 spatial grid, full element inventory, and design system extraction — facts and taste together, every time. Escalates to full implementation blueprint when building. Trigger on any digital interface image file (png, jpg, gif, webp — websites, apps, dashboards, mockups, wireframes) or commands like 'analyse this screenshot,' 'rebuild this,' 'match this design,' 'clone this.' Skip for non-UI images (photos, memes, charts) unless the user explicitly wants to build a UI from them. Does NOT trigger on HTML source code, CSS, SVGs, or any code pasted as text.
openpencil
1.8kThe world's first open-source AI-native vector design tool and the first to feature concurrent Agent Teams. Design-as-Code. Turn prompts into UI directly on the live canvas. A modern alternative to Pencil.
ui-ux-pro-max-skill
53.2kAn AI SKILL that provide design intelligence for building professional UI/UX multiple platforms
