rate~ but for cycle~?


    Jun 26 2007 | 7:42 pm
    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.

    • Jun 26 2007 | 8:01 pm
    • Jun 26 2007 | 8:28 pm
      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.
    • Jun 26 2007 | 9:11 pm
      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
      max v2;