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

No handling of clock drift #22

Open
PeterJCLaw opened this issue Mar 26, 2023 · 0 comments
Open

No handling of clock drift #22

PeterJCLaw opened this issue Mar 26, 2023 · 0 comments

Comments

@PeterJCLaw
Copy link
Member

PeterJCLaw commented Mar 26, 2023

Currently mixtape doesn't seem to have any means to ensure that its actions are actually in sync with the events in the arena. Those are handled by NTP sync between the compbox and the various displays, which ensures that their clocks align. Alternatively the website, which can't rely on NTP (since we don't control the host browser in such cases), has direct handling of this at the application level -- i.e: implementing its own approximation of NTP to adjust the displayed events relative to the local clock.

Perhaps it's just not documented, but mixtape doesn't appear to have either of these. There is a fixed latency parameter, however from memory that's intended to cope with the latencies within the operation of e.g: lights actually spinning up rather than clock drift. Given its fixed nature it doesn't feel like a great solution anyway.

A possibly related thing here is that mixtape appears to sort-of rely on the event stream as a means of timing, which the event stream isn't really capable of providing. The event stream only checks for new events to issue every couple of seconds, which is actually quite large relative to the duration of a match (typically 100-200 seconds). Given that humans can easily perceive desyncs in the order of tens of milliseconds another source of timings is probably warranted. (moved this part to #23)

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

No branches or pull requests

1 participant