Not much code today, really the work was following the current code paths to figure out exactly where the error is creating InstrumentSchedules.
It’s my old friend “Scheduling a bar to played before the current bar.”
Basically, if we’re on bar 4, the Composer is scheduling for bar 3… which will never get played because bar 3 has already happened.
The Conductor is owner of what bar we’re on. The Composer creates an InstrumentSchedule
which defines which bar to start on.
There’s probably a better way to do this.
Composer should probably be looking at timing of InstrumentSchedules relative to themselves- First Schedule play bars 0-3, 2nd schedule at 4-7, etc.
Then Conductor should be saying “Ok we play now for real” and putting that first schedule at 0 + CurrentBar + 1, with Instrument reading from the “for real” number.
Which means the composer can use totally derived numbers, and pull well ahead of the others.
Ok. Off to work.