rate~ but for cycle~?
Does anyone know of an external or abstraction to do this? If two cycle~ objects are kept at the same freq then their phases are kept in sync (or not depending on a float into the phase inlet - MSP "keeps track" of the phases of oscillators at the same freq says the manual). After changing the freq of one cycle~ and then setting it back to the same freq as the other, how can the phase relationship be reestablished (ala the "sync lock" message to rate~)? Here is a little patch to demonstrate what I'm after.
Cycle~ can be driven by a phasor~ connected to the right inlet, so you can
use rate~ & phasor, as below.
Cheers
Roger
On 26/6/07 20:42, "Lewis Keller" wrote:
>
> Does anyone know of an external or abstraction to do this? If two cycle~
> objects are kept at the same freq then their phases are kept in sync (or not
> depending on a float into the phase inlet - MSP "keeps track" of the phases of
> oscillators at the same freq says the manual). After changing the freq of one
> cycle~ and then setting it back to the same freq as the other, how can the
> phase relationship be reestablished (ala the "sync lock" message to rate~)?
> Here is a little patch to demonstrate what I'm after.
Here's a slightly wonkier version that interpolates at signal rate
rather than jumping instantly. The right-hand part with the phasor~ is
just setting when it switches between the higher and lower speeds. You
can adjust the times for rampsmooth~ to make interpolation faster or
slower.
You can get better performance by storing your panning waveform into a
buffer~ and then playing that buffer~ using wave~ instead of cycle~.
I do the following:
-Use a buffer~ that is 1000 ms so that you don't have to do any
interpolation, and 2 channels so you don't have to mess with the
offsets. (i.e. one channel is up while the other is down) (that is,
do all the math once, rather than continuously)
-send wave~ the message interp 0 at startup
Peter McCulloch