[PD] high frequency control data
Andrew W. Schmeder
andyschm at eh2o.ws
Wed Nov 7 04:55:29 CET 2001
> I am attempting to use a phasor~ linked to a threshold~ unit to generate
> high frequency bangs to then trigger a reasonably complex sample playback
> mechanism, attempting to mimic granular synthesis. The problem is that
> when i bring the phasor frequency up into the range of audible pitch, say
> above 100hz, i can hear a low frequency cyclical shift in the sound
> texture, which theoretically should be completely even.
Seems like just using metro for triggering would accomplish the same thing.
I believe that control messages can only be processed on vector endpoints -
i.e. the finest possible resolution is about 1.4 milliseconds with a
64-sample dsp vector... someone please correct me if I am wrong.
This means that the theoretical maximum rate of reliable triggering is ~689
events per second -- although jitter will probably arise at significantly
slower speeds... in fact you are guarenteed to have jitter if the frequency
of triggering is not an integer submultiple of the vector-processing speed.
However this is not to be confused with the behavior of the clock when using
delays, qlists, metros, etc - where you can schedule events to the
millisecond at 64-bit floating point accuracy--- see the pd documentation for
the details on this.
For granular synthesis try using the output of phasor~ directly to control
the playback operation.. i.e. use phasor~ to drive tabread~. Then convert
all parameters to signals and use samphold~ to achieve sample-accurate
control.... all in the signal domain. I believe that this method will be
less computationally expensive also.
Since phasor~ cannot take signal input for phase I've considered using
sample-delays to implement accurate phase shifts for very small grain
windowns (untested theory). The other options are to do tricky stuff with
the block size and overlap or use some completely different method like
convolution (also untested ideas for me).
andy
More information about the Pd-list
mailing list