Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

WIP: timeout rework #16

Draft
wants to merge 7 commits into
base: master
Choose a base branch
from
Draft

Conversation

ZLLentz
Copy link
Member

@ZLLentz ZLLentz commented Nov 22, 2024

Previous behavior:

  • The camviewer has 1 and 9 hour timeouts.
  • After 1 hour, there is a pop-up that asks if you want to extend the timeout by 1 or 9 hours. Presumably this also appears after a 9 hour timeout.
  • If a timeout expires, the gui stops getting images from the camera (but the camera continues to run), leaving a stale image.
  • To re-establish connection, you can either swap the active cam back and forth or reconnect from the menu.

New behavior:

  • Pop-up has been removed
  • To reset the timeout: interact with the display in any way (click, type, etc.)
  • Live-updating timeout display has been added
  • The timer's starting value depends on the max display rate
  • Max display rate can be changed live by the user
  • 1 Hz = no timeout, ever
  • 2-5 Hz = 7 days timeout
  • 6-29 Hz = linear interp between 7 and 1 day
  • 30 Hz+ = 1 day timeout
  • If a timeout expires, rate drops to 1Hz until interacting with the GUI again (therefore: never a stale image if the real cam is running)
  • pre-existing idle cli arg is now defunct (not sure what to do with it)
  • min_timeout and max_timeout cli args added to help test the timeouts (timeouts in seconds, defaults to 1 day for the min and 7 days for the max)

I've been testing this via passing --min_timeout 10, then setting the rate to 30Hz, then watching the timeout apply after 10 seconds.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant