Hi everybody, Particularly now with work to re-implement its timing techniques for the web API (Chris McCormick's WebPd) and to embed it as a DSP (and sequencing) engine (libpd), I know there's a lot of interest in how sample-accurate sequencing works in Pd.
It's been discussed on this list before, but I'm not sure that discussion has ever been systematically documented, and changes since mean now is probably an ideal time to revisit the question. This started as a discussion between me and Chris and extended to Eric Lyon and Hans, but Hans pointed out we should be having it on the list.
In short:
sequencer in Pd, what would the best technique be? Keep in mind that actual calculation of the sequences themselves might occur outside the Pd patch.
with the idea of using vline~ to trigger pre-calculated sample events based on its envelopes, which is at least interesting. His assumption was that not only are its ramps interpolated at sub-sample levels, but that the calculations of the delays themselves are sample-accurate -- though that may or may not be correct.
boundaries, and what isn't? (And for that matter, at what point do you think people should care?)
the Pd event engine thusly: "The underlying Pd event scheduler is sub-sample-accurate using 64-bit floating point numbers to represent time, though apparently at the cost of a higher likelihood of interruption of the audio scheduler, resulting in audible glitches. In both systems [Max and Pd] temporal accuracy of control-level events can drift freely within the space of a signal vector."
Is that still true?
Incidentally, I very much like the design of Eric's samm~, mask~, etc.
then the question is whether you want to rely on externals for this kind of timing. I'm convinced by his approach, but for those wanting to work inside vanilla, I'm not sure what the best approach and associated costs may be.
I imagined writing this as a short query, but there you are. Have at it. And since I'm paraphrasing some of my colleagues here, if they want to jump in and correct me, please do...
Thanks,
Peter
PETER KIRN peter@createdigitalmedia.net http://createdigitalmusic.com | PhD Candidate, CUNY Graduate Center | Adjunct faculty, Parsons The New School for Design