Battery-Aware Switching
The control loop checks Windows power status before lowering the refresh rate. This targets battery-powered use instead of applying the same policy while the device is plugged in.
WINDOWS UTILITY
Save laptop battery by lowering the refresh rate during full-screen video.

Keeping a laptop display at 120 Hz can use more battery power even when the content does not need that refresh rate. A 30 or 60 fps video does not contain 120 unique frames per second, yet the display may remain at 120 Hz throughout playback. I wanted to reduce that unnecessary power use while keeping a higher refresh rate for everyday interaction.
Auto 60 Hz checks the foreground window and power source. While running on battery, it selects the configured lower refresh rate when the tracked window is full-screen and restores the higher rate after full-screen mode ends. Connecting AC power also restores the higher rate. The Qt interface exposes both values and a run-on-startup option.
The control loop checks Windows power status before lowering the refresh rate. This targets battery-powered use instead of applying the same policy while the device is plugged in.
WinAPI tracks foreground-window bounds, while PSAPI identifies processes so Windows system processes can be excluded. Full-screen state is a practical trigger for video watching; the app does not inspect playback frame rate or identify video content.
Users choose the high and low refresh rates to suit their display. The background loop checks once per second and avoids requesting a display change when the target rate is already active.
Reducing the refresh rate can extend battery life by up to 20%, depending on the display, brightness, workload, and device. The app uses full-screen detection to trigger the switch, so full-screen games can also activate the lower rate.
Read the Battery-Life Estimate