turing-smart-screen-python icon indicating copy to clipboard operation
turing-smart-screen-python copied to clipboard

Add FPS counter reset and limiter.

Open rud01f opened this issue 6 months ago • 0 comments

Is your feature request related to a problem? If so, please describe the problem.
It's actually two problems:

  • the FPS counter is refreshed only when it reads a positive value, but when fullscreen 3D application is closed it should reset back to 0 (as "3D engine not in use") - at least this behavior is observed at LibreHardwareMonitorLib method
  • the FPS counter (again, tested with LibreHardwareMoniorLib method) sometimes shows abnormal values, usually when screen switching, (for example 2408791), which result in wide text display and ghosting

Describe the feature / solution to your problem you'd like
(Proposed solution code is provided in discussion here)

  • FPS refreshing - provide timer/timed method that mesures amount time the sensor reading stays 0 and resets the FPS counter to 0 after certain period of time
  • FPS abnormal high values - trim values to certain safe amount like 9999 (sensor_value = min(9999, sensor_value))

Describe alternatives you've considered / and or tested

  • as FPS refresh/reset, I considered simply counting the amount of continuous 0 values, but it made FPS counter reset time too depended on sensor's INTERVAL parameter
  • as of FPS abnormal values - considered just dropping high values if sensor_value > 9999: return previous_value) - it should work fine as well, maybe even less abrupting the display for pedantic people (like me)

Screenshots / photos & mockups of the Turing screen
Add screenshots or photos/mockups of the rendering on the Turing screen to help explain your request. You can drag and drop photos here to add them to the description.

Environment:

  • Revision of this project - 3.9.3
  • Windows 11
  • Python 3.13
  • Hardware - doesn't matter to be honest

rud01f avatar Jul 18 '25 07:07 rud01f