ETA set finish time?

Wonder if there is some clever maths I can do with a label to figure out what time our set will end?

Would be awesome to know if it was a late start if our current set goes over I can quickly know and remove a song from our set and stay within our allotted stage time?

Many thanks!

I’ve done this with M4L outside of Ableset …
A countdown clock with projected finish time

That’s definitely possible, though it will look a bit more complex:

${new Date(Date.now() + (osc("/setlist/remainingTimeInSet") * 1000)).toLocaleTimeString()}

Basically, this takes the current timestamp (Date.now(), in milliseconds), adds the remaining time of the set in seconds multiplied by 1000 to convert it to milliseconds (osc("/setlist/remainingTimeInSet") * 1000), and then converts it to a human-readable time (new Date(...).toLocaleTimeString()).

I’m currently travelling so I haven’t tested this yet, but it should work as expected. Let me know if this works for you! :slight_smile:

3 Likes

This works thank you!

Great feature! I asked chatGPT to adapt to European Time Output, and just hours and minutes, not seconds.
This Command works for this purpose, if anybody is interested:

${(() => {
  const d = new Date(Date.now() + (osc("/setlist/remainingTimeInSet") * 1000));
  const h = d.getHours().toString().padStart(2, '0');
  const m = d.getMinutes().toString().padStart(2, '0');
  return `${h}:${m}`;
})()}
3 Likes