Physical Modelling system problem


    Aug 22 2006 | 10:55 am
    The signal doesn't seem to like being plugged back into the [+~] element- no sound goes through to the [dac~]. How come? Everything else works fine. The second argument of [delay~] sets the inital delay time to about 11 ms, which should produce some kind of decayed, plucked sound.
    max v2;

    • Aug 22 2006 | 12:19 pm
    • Aug 22 2006 | 12:30 pm
      Perfect, thankyou.
      So the signal path has to be delayed by one sample - yet the [delay~] object is already delaying it by 400? I don't understand...
    • Aug 22 2006 | 12:37 pm
      a dsp chain (ie a serie of msp object connected one to the other) can't loop on itself.
      using a combination of tapin~ tapout~ instead of delay~ solves this as well.
      //yac
      >
      > Perfect, thankyou.
      >
      > So the signal path has to be delayed by one sample - yet the [delay~] object is already delaying
      > it by 400? I don't understand...
      >
    • Aug 22 2006 | 1:48 pm
      The trouble with tapin~ and tapout~ is that small delay times don't register. Plus, a [delay~] module is more elegant and fitting with the algorithmic descript of Karplus-Strong.
      One limitation of this system seems to be that even the shortest delay time (1 sample) doesn't produce a particularly high pitch. Any suggestions? Here is an expanded model, just hit the preset to get going:
      max v2;
    • Aug 22 2006 | 3:57 pm
      On 22-Aug-2006, at 14:19, r.julien wrote:
      > The signal path has to be delayed by one sample (if I'm correct).
      Almost.
      There has to be a break of one sample *vector*. That is typically a
      lot longer than one sample. This has been covered on the list dozens
      of times, for instance:
      http://www.cycling74.com/forums/index.php?
      t=msg&goto=64824&rid=0&S=ddb91f73fbf711b63acae91df9099b42#msg_64824
      http://www.cycling74.com/forums/index.php?
      t=msg&goto=63688&rid=0&S=ddb91f73fbf711b63acae91df9099b42#msg_63688
      http://www.cycling74.com/forums/index.php?
      t=msg&goto=59586&rid=0&S=ddb91f73fbf711b63acae91df9099b42#msg_59586
      http://www.cycling74.com/forums/index.php?
      t=msg&goto=58165&rid=0&S=ddb91f73fbf711b63acae91df9099b42#msg_58165
      http://www.cycling74.com/forums/index.php?
      t=msg&goto=54963&rid=0&S=ddb91f73fbf711b63acae91df9099b42#msg_54963
      BTW: you can set the sample vector size to a single sample with an
      msp;-message. Watch your CPU usage go up.
      -------------- http://www.bek.no/~pcastine/Litter/ -------------
      Peter Castine +--> Litter Power & Litter Bundle for Jitter
      Universal Binaries on the way
      iCE: Sequencing, Recording &
      Interface Building for |home | chez nous|
      Max/MSP Extremely cool |bei uns | i nostri|
    • Aug 22 2006 | 5:31 pm
      You could put the section of the DSP graph that has feedback into a
      separate patch, load it using poly~, and set the vector size of the
      poly~ to be small, rather than your whole graph.
      The inputs of the sub-patch for poly~ will need to be in~ objects
      (and the outlet will be out~ objects). If you saved it as
      KarplusStrong.pat, and load it in poly~ like this:
      poly~ KarplusStrong vs 2
      Then that section of the dsp graph will process at a vector size of
      2. Actually I expect a vector size of 4 or 8 will give you plenty of
      headroom for high frequencies; Nyquist for a vector size of 8 at
      44.1kHz gives a theoretical max frequency of 2,756.25 Hz.
      See the help on poly~
      HTH
      On Aug 22, 2006, at 8:57 AM, Peter Castine wrote:
      > On 22-Aug-2006, at 14:19, r.julien wrote:
      >> The signal path has to be delayed by one sample (if I'm correct).
      >
      > Almost.
      >
      > There has to be a break of one sample *vector*. That is typically a
      > lot longer than one sample. This has been covered on the list
      > dozens of times, for instance:
      >
      > http://www.cycling74.com/forums/index.php?
      > t=msg&goto=64824&rid=0&S=ddb91f73fbf711b63acae91df9099b42#msg_64824
      >
      > http://www.cycling74.com/forums/index.php?
      > t=msg&goto=63688&rid=0&S=ddb91f73fbf711b63acae91df9099b42#msg_63688
      >
      > http://www.cycling74.com/forums/index.php?
      > t=msg&goto=59586&rid=0&S=ddb91f73fbf711b63acae91df9099b42#msg_59586
      >
      > http://www.cycling74.com/forums/index.php?
      > t=msg&goto=58165&rid=0&S=ddb91f73fbf711b63acae91df9099b42#msg_58165
      >
      > http://www.cycling74.com/forums/index.php?
      > t=msg&goto=54963&rid=0&S=ddb91f73fbf711b63acae91df9099b42#msg_54963
      >
      > BTW: you can set the sample vector size to a single sample with an
      > msp;-message. Watch your CPU usage go up.
      >
      >
      >
      > -------------- http://www.bek.no/~pcastine/Litter/ -------------
      > Peter Castine +--> Litter Power & Litter Bundle for Jitter
      > Universal Binaries on the way
      > iCE: Sequencing, Recording &
      > Interface Building for |home | chez nous|
      > Max/MSP Extremely cool |bei uns | i nostri|
      > http://www.dspaudio.com/ http://www.castine.de
      >
      >
    • Aug 26 2006 | 10:56 am
      lists@grahamwakefield.net wrote:
      > Then that section of the dsp graph will process at a vector size of 2.
      > Actually I expect a vector size of 4 or 8 will give you plenty of
      > headroom for high frequencies; Nyquist for a vector size of 8 at
      > 44.1kHz gives a theoretical max frequency of 2,756.25 Hz.
      The problem isn't the highest available pitch, its the resolution of the
      pitches. You won't get them tuned (even if you relate your key to the
      sample rate...). But inside a poly you can also use a higher sample rate
      which helps, but needs even more CPU...
      Stefan
      --
      Stefan Tiedje------------x-------
      --_____-----------|--------------
      --(_|_ ----|-----|-----()-------
      -- _|_)----|-----()--------------
      ----------()--------www.ccmix.com
    • Aug 26 2006 | 10:51 pm
      > > Then that section of the dsp graph will process at a vector size of 2.
      > > Actually I expect a vector size of 4 or 8 will give you plenty of
      > > headroom for high frequencies; Nyquist for a vector size of 8 at
      > > 44.1kHz gives a theoretical max frequency of 2,756.25 Hz.
      well the nyquist at 44.1khz samplingrate is always the same,
      the vector size will not help much here. :)
      it seems you mixed up downsampling with vector size, because
      2.7 khz nyquist is what you get at [poly~ foo down 8]
      -poly~ up 110