unflicker

Your USB webcam bands under mains lighting, and it forgets the fix every time you plug it in. This puts the setting back, on every reconnect.

✅ This is for you if an external USB webcam ripples or bands under mains-powered lighting, and the banding comes back every time you reconnect it. Cameras ship set to 60 Hz, so they are wrong out of the box anywhere on a 50 Hz supply: the UK, Europe, most of Asia, Africa, Australia, most of South America.

❌ This is not for you if it is the built-in camera on a MacBook. Those are not USB and expose no UVC control, so nothing here can reach them, and neither can any similar tool.

Install

brew install andrew-hill/tap/unflicker
unflicker install

Replug the camera. That is the setup. Building from source needs the Xcode command line tools; there is nothing else to install and nothing to configure.

Why your camera forgets

Webcams have a power-line-frequency setting that matches exposure to your mains supply, and they band when it is wrong. macOS exposes it nowhere: no System Settings pane, no defaults key, no API. Worse, reconnecting a camera resets it along with brightness, white balance and the rest, so setting it once does not hold. A camera inside a monitor re-enumerates whenever the display link drops, so powering the monitor off is enough to lose it.

Nothing runs in the background

No daemon, no menu bar item, no timer. macOS starts unflicker when a USB device attaches, it checks whether your camera needs the setting put back, and it quits. The same happens at login for anything already plugged in.

More