Triggering sounds randomly

Hello all. I’m new to VCV and I’m not up on all the terminology. So if I explain something strangely, that’s why.

I’m creating an ambient soundscape based on a war zone. I have a few dozen sound effects of things like gunshots, explosions, et-cetera. I want to trigger these effects at random. Ultimately I’d like to have a knob (The master clock?) that can turn up the intensity of the war; which I assume would mean how frequently these sounds are getting triggered.

I figured a sequencer might work but I don’t want, say, perfect 20 BPM triggers. I know they will average out at 20 bpm but I’d like the individual triggers to vary. Some coming right after the last trigger, some waiting a second or two.

For added complexity, I’d like to have a random pan setting selected for each sound effect. So every time a sound is played, it can randomly show up in the listeners left ear, right ear or some mix of the two. I considered just triggering a random CV with the clock except each sound effect has different time lengths; ranging from 1-9 seconds. I wouldn’t want the pan to change while the sound is playing. I’m guessing a very slow LFO on the Pan CV would probably work but I’d be curious if anybody had a better idea.

I don’t need a step-by-step explanation. I’m hoping it will be enough to just point me in the direction of some modules that could do what I want, or maybe a link to some videos to watch.

Any help or advice would be appreciated.

1 Like

Welcome to the forum @svc88

The image above shows how I would start to get the effect you are looking for, but others may have varying solutions.

In the patch, the Bernoulli gate takes a trigger and has a probability of outputting that trigger, as controlled by the red knob. I have used a snare module for the sound, but this can be replaced with your sampler. To create the random panning I have used a sample and hold module, that will produce a new random voltage on every trigger, then I have used the Offset module to bring this to the correct range to control panning.

You could duplicate this arrangement for each sound, using a single clock, but using various probability settings, then adjusting the tempo will increase the intensity of the sounds.

I hope this helps, but please feel free to ask if you have any additional questions.

2 Likes

One module that may prove useful is Count Modula’s “Clocked Random Gates”.

Every time a clock pulse comes in, it randomly selects one (or more) of the gates, and each one can be given a greater or lesser probability of being chosen, either by a manual setting, or by several CV inputs. So that selects one (or more) of up to 8 sound effect generators that you’ve built.

Now, between your clock source and the Clocked Random Gate’s clock input, daisy-chain a couple (say, three of them) of “CHANCES” modules.

By “daisy-chain” I mean:

  • plug your main clock signal (maybe an LFO square wave) into the INPUT jack of CHANCES #1,
  • plug the OUTPUT A of CHANCES #1 into the INPUT of CHANCES #2, and
  • the OUTPUT A of CHANCES #2 into the INPUT of CHANCES #3.
  • Now plug the OUTPUT A of CHANCES #3 into the CLOCK input of “CLOCKED RANDOM GATES”.

Now the pulses from the LFO have to run the gauntlet of three CHANCES modules, any one of which can “veto” the pulse from getting through, try your luck next time.

Play around with the three CHANCE probability knobs of the “CHANCES” modules, and you should have somewhat random interval between clock pulses on the third output. Then also consider ways to adjust the CHANCE control of one or two of the “CHANCES” module by feeding it a CV from a VCV “RANDOM” module set to a slow rate. This could give you occasional “clumping” of output pulses, or create occasionally longer stretches between output pulses. Makes it a bit more fractal. Or use it to “turn up the intensity of the war”, as you say, with some ramp generator.

With a couple of VCV “NOIS” and Count Modula “S&H” modules you could generate random Pan control voltages. The S&H module will hold the output steady until it gets the next trigger pulse.

Another module that may be of use is the HetrickCV “DUST” module,

… but it may need something like a Bogaudio “OFFSET” module and a Count Modula “CLOCK DIV” after it to help tweak the rate of pulses.

Finally, check out ML Modules’ “Counter”. By feeding it a slowly changing CV to the “Length” input, you can create a sort of dynamic clock divider.

True story: Speaking of the Counter module, it occurred to me a few nights ago (in a dream, no less!) that a daisy chain of Counter modules could be used to program a set sequence of pulses to different modules one after the other, but with adjustable delays between each event - some short, some long. I think this was the only time that what I thought was a brilliant idea in a dream turned out to still be plausible after I woke up and had my coffee.

2 Likes

I’d do it like this:

  • Caudal provides varying random voltages.
  • Comparator generates a trigger when one of those voltages crosses a threshold.
  • Sample and Hold captures another random voltage at that moment to set the pan.

There’s no clock - the sounds have no regular cadence.

The “Speed” knob on Caudal “can turn up the intensity of the war.”

The Sample and Hold achieves “I wouldn’t want the pan to change while the sound is playing.”

2 Likes

I was just about to say the same. Some random voltage and a comparator, because then the triggers are not on a clock. BOG WALK is nice for a visualization of what is happening:

1 Like

Something else that occurred to me is that you may want another bunch of CVs for volume control, to give a sense of random distances and enlarge the battlefield, as it were. There is also a module, named “DISTANCE”, which purports to be a “far-away-izer”, but I have not tried using it yet. The manual for it says “Designed to mimic through-air high frequency attenuation”, and one of the CV inputs is for “Distance”. Sounds promising.

Also, if you want to add some punch to an explosive sound, try mixing it with a single pulse from a VISH module, which is primarily a slew limiter. Starting from the “initialized” state, make the RISE time = 0 ms, the FALL time = 0.1 seconds, the FALL shape = 1, and the MIN GATE = 0. Use that pulse as the audio signal, not a control voltage. It’s the initial instantaneous vertical rise of the pulse that makes the snap or bang, and it must ramp down, hence the 100 ms drop-off. A square pulse (with the second vertical transition) will just sound like a double click.

There’s also Soundstage for a three dimensional, surround sound effect. I haven’t played with it because it’s a paid module but it will be worth it to get the effect.

Thanks for all the suggestions everybody!! They gave me some ideas which got me to poking around a bit. I got it working on a basic level with an Audible Instruments Random Sampler for the clock with variable accuracy. The knob “jitter” did exactly what I was looking for. From there I went in to a couple of ML Modules Sequential Switch 1-8 with the “Random” and “In” tied to the same output on the Random Sampler. The rate knob adjusts the intensity of the fighting.

Next I’ll see if I can improve it with some of the suggestions above. The sample and hold trick sounds especially promising.

1 Like

A word of caution: The VCV “RANDOM” module has a “sample and hold” tag in the description, but it does not actually “hold” it in the conventional way. It ramps up or down between one random voltage and the next and stays there, but does not instantly hold the new value. (At least I haven’t figured out if it can do that.)

There are other ways, such as Count Modula’s “S&H”.

The fader on the right is the smoothing- / slew-amount. Set it to zero and it is a sample and hold (and for that I love that module).

1 Like

I knew that. I was just testing you to see if you were paying attention.

.

.

:blush:

Nah. I’m totally busted. It’s just been so long since I’ve used that module that I forgot that it worked that way. Welcome to the Post-Truth Era. Somehow I conflated it with the “shape” setting on some VCOs, that change it from triangle to square or sine wave.

Yet another Random Interval patch.

Noisemaker that ultimately needs the trigger: macro oscillator 2

Upon receipt of trigger pulse at its “Start/In” jack; (a)Counter puts out a single trigger pulse from "Trigger/Out), (b) Counter will count up to whatever number (max of 128) is currently chosen by the “Length” CV. We don’t care what it is. In this patch Counter counts the pulses coming from CLKD’s “CLK1”.

When Counter gets to the end of “Length”, it (a) puts out a single trigger from Stop/Out (via the OR gate of OG-106) to its own Start/In jack, (b) sends a trigger to the TRIG input of RANDOM and (c) sends a trigger to Macro Oscillator 2.

Now, RANDOM supplies the Counter “Length CV” with a new value, which selects a different (and random) number to count up to. So, the interval between triggers to Macro Oscillator 2 is randomly changing each time through the loop.

I had to use an OR Gate so that I could bootstrap the whole thing with the BUTTON o/p gate, and share the Counter Start/In jack with the Counter Stop/Out cable.

If you initially dial in Length of 128 and have a moderate clock rate coming in, you can end up with many long gaps between triggers, and a few very short intervals. If you reduce the Length dial and increase the clock rate, then you can end up with the same total number of output triggers over a long period, but they’ll be spread out more evenly.

What I like about this setup is that you can visualize what’s going on throughout, with easily read numbers etc. and you can adjust the clustering or clumping of the triggers.

Finally, (forgetting about randomly changing the Length for now) you could also daisy-chain several Counter modules with each one’s Stop/Out plugged into the next Counter’s Start/In jack. This, I came to realize, was the DIY sequencer that I’ve been wishing for that could have different pre-set intervals between each step. This notion actually came to me in a dream one night. The miracle is that I remembered the idea long after I woke up, and it still made sense to me.

I know that svc88 probably has moved on to something else by now, but this is like eating potato chips.

I came up with a slightly different variation, not realizing that it was almost the same as the other one.

The change is that I bootstrap it by using BUTTON (or any other pulse source) to trigger the Stop/In, which may be counter-intuitive, but that trigger pulse results in a pulse from the Stop/Out, which is connected to the Start/In. Then I figured out that even if you disconnect BUTTON from the patch, it will continue running until you remove either the blue cable (leaving nothing to be counted) or the white cable (lets it run until it hits the current “Length” value).

I didn’t go so far as making a CV-controllable kill switch for it, but it would probably involve interrupting either the blue or white cable with an AB/Y switch, like Count Modula’s “VC SWITCH”

BTW: If you slowly adjust the LFO in this patch from 20Hz to 400 Hz, it sounds like you’re making popcorn. :popcorn: :popcorn: :popcorn: :popcorn: :popcorn:

2 Likes

This works really well. I added a duplicate line with the Snare set to a different sample and lower frequency on the LFO. Hey presto - accents.