This repository has been archived on 2025-07-12. You can view files and clone it. You cannot open issues or pull requests or push a commit.
Files
shroom_of_doom/TESTING/Xlib_utilization.py
2025-02-26 14:40:25 -05:00

21 lines
1.5 KiB
Python
Executable File

# Taken from Glyph, Eevee on https://stackoverflow.com/questions/1225057/how-can-i-determine-the-monitor-refresh-rate
# Deconstruction, Commenting and Renaming by Cutieguwu.
from Xlib import display
from Xlib.ext import randr
displayGlobal = display.Display() # Get every display thing. Maybe a WM object?
default_screen = displayGlobal.get_default_screen() # Find default display for some reason.
info = displayGlobal.screen(default_screen) # Use this as a point to get information about all screens.
displayConfigs = randr.get_screen_resources(info.root) # Get every screen's possible configurations.
ConfigsActive = set() # Create an empty set to add configurations to.
for config in displayConfigs.crtcs: # For every display configuration, determine if it's active and add its identifier to the configurations in use.
crtc_info = randr.get_crtc_info(info.root, config, displayConfigs.config_timestamp)
if crtc_info.mode:
ConfigsActive.add(crtc_info.mode)
for config in displayConfigs.modes:
if config.id in ConfigsActive: # For every active display mode, figure out its framerate.
print(config.dot_clock / (config.h_total * config.v_total))