BBCut icon indicating copy to clipboard operation
BBCut copied to clipboard

PmonoArtic(...).playExt doesn't handle rests correctly

Open celesteh opened this issue 8 years ago • 3 comments

PmonoArtic is fine with playExt, unless there are rests and rearticulations, in which case it loses track of notes, so they continue forever. To reproduce:

(
c = ExternalClock(TempoClock.default);
c.play;
s.waitForBoot({
	PmonoArtic(
		\default,
		\legato, Prand([1.1, 0.8], inf),
		\note, Prand((0..3) ++ [\rest, \rest, \rest], inf)
	).playExt(c)
})
)

Is there a way that ExternalClock could become a subclass of TempoClock? (How does it differ from TempoBusClock?)

celesteh avatar May 07 '17 21:05 celesteh

Thanks for the report, I'll take a look in a few days.

nhthn avatar May 07 '17 22:05 nhthn

This is a naive thought, but I wonder if playExt is even really needed? If ExternalClock can change tempoclock (and I don't see where that actually happens), could both clocks be added as dependants of each other, so tempo changes would propagate from one to the other?

celesteh avatar May 08 '17 11:05 celesteh

I'm terribly sorry, but I don't think I'll have time to investigate this.

nhthn avatar May 18 '17 16:05 nhthn