diff --git a/packages/webaudio/scheduler.mjs b/packages/webaudio/scheduler.mjs index 11195aef..e4719307 100644 --- a/packages/webaudio/scheduler.mjs +++ b/packages/webaudio/scheduler.mjs @@ -10,11 +10,11 @@ import { State, TimeSpan } from '@strudel.cycles/core'; export class Scheduler { worker; pattern; - constructor({ audioContext, interval = 0.2, onEvent }) { + constructor({ audioContext, interval = 0.2, onEvent, latency = 0.2 }) { this.worker = new ClockWorker( audioContext, (begin, end) => { - this.pattern.query(new State(new TimeSpan(begin, end))).forEach((e) => { + this.pattern.query(new State(new TimeSpan(begin + latency, end + latency))).forEach((e) => { if (!e.part.begin.equals(e.whole.begin)) { return; }