From d0b07c4890cd479d392cd64c088285fe2aba9307 Mon Sep 17 00:00:00 2001 From: Felix Roos Date: Tue, 23 Aug 2022 21:52:24 +0200 Subject: [PATCH] fix latency issues for larger intervals --- packages/core/scheduler.mjs | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/packages/core/scheduler.mjs b/packages/core/scheduler.mjs index 95d8219a..9118a761 100644 --- a/packages/core/scheduler.mjs +++ b/packages/core/scheduler.mjs @@ -42,7 +42,8 @@ export class Scheduler { if (!hap.part.begin.equals(hap.whole.begin)) { return; } - const scheduled = time + (hap.whole.begin - begin) / this.cps + latency - passed; // this took me ages... + // the following line took me ages to come up with.. handle with care + const scheduled = time + (hap.whole.begin - begin) / this.cps - passed + interval + latency; const duration = hap.duration / this.cps; // TODO: use legato / duration of objectified value const now = getTime(); const deadline = scheduled - now;