Help creating a stutter effect
  • I'm trying to build a stutter effect patch. The idea is to combine a square wave with some randomness and use that to determine whether to play a given audio stream.

    I have a patch built (see attached), but modulating the amplitude like I am is introducing what I suspect is aliasing of some kind. I don't have a good intuition for dealing with things like that. Could anyone help me understand what I might be doing wrong?
    JJT stutter.audulus
  • Hey @jjthrash, I'll see what I can do :)

    The patch has two LessThan nodes multiplied together. One changes from 0 to 1 at regular intervals, and the other outputs 0 or 1 randomly according to a probability (the knob connected to the LessThan node). The latter LessThan is doing this at sample rate, so this is essentially noise. So when you multiply them together, you get silence, noise, silence, noise, etc. Multiply another (non-silent) signal by that and you'll just end up with alternating noise and silence too.

    Does that make sense?

    Is your goal to sort of wobble the amplitude randomly when the stutter effect is on?

    - Taylor
  • Ah, I see, yes, that makes sense. OK, I just did the following and it's closer to what I want:
    Square wave @ 8Hz -> LessThan[b] -> S&H[trigger]
    Random -> S&H[in]

    My goal is to AND some main on-off signal (the square wave in my original patch), with some randomness to create a mostly random, but controllable on/off stutter.

    What I'm seeing now with my sine wave oscillator is that the hard on/off of my stutter driver is causing clicks/pops. Not sure what to do about that, but with a signal with more harmonics it might not cause a problem. I'll play with it.

    I've attached the new version.
    JJT stutter.audulus
  • PS - Thanks for the help. :)
  • @jjthrash, sure thing! Try passing the stutter driver through a low pass filter (DSP -> LowPass) with the coefficient set close to 1.0 (say, .999). That should smooth it out.
  • Thanks, the Low Pass worked. I've attached the final version, hooked up to inputs rather than an oscillator. It does exactly what I want, but after playing with it in the Audiobus effect slot I'm not sure how much I'll actually use it. Just another way to glitch, I guess.

    Followup question. If I:

    - create a new patch
    - create a new subpatch
    - paste this patch into the subpatch
    - hook up the inputs and outputs

    it should work the same, right? I saw a strange behavior last night that I'll describe, but may miss a few details:

    - I had Audulus in the effect slot already working with my patch
    - I thought, "I'd like to combine this with a delay, so I'll use it as a sub patch"
    - Did the above steps, but as soon as I'd pasted my stutter effect into the subpatch, the audio started up again, *even though* I hadn't hooked up the "super-patch's" inputs and outputs. Hooking up the super-patch's inputs and outputs didn't make any difference.
    JJT stutter.audulus