A great tool to play with, I hope I'll understand it in a reasonable time, before I get too old
What I'm missing is a kind of a "Random Block" in "Control" which lets us put in a little randomness here an there.
Example :
Pitch shift is fixed after all Pots are adjusted, but putting in a little randomness to let the pitch jitter around the "fixed" values would (hopefully) sound more natural. Think of two guitar players playing the same notes at the same time. They will always have a little delay in between and they will always have a little pitch difference, but the delay and the pitch will change from note to note from time to time, there's no exactness in playing even the differences will never be the same. I hope my explanation was understandable !?
Best regards
Harry
Hi Harry,
Take a look at this and see if you can pull something together which does this. If not let me know and I'll try.
SpinCAD Designer doesn't have a dedicated "Random" block, but you can build exactly what you're describing by chaining a few existing blocks together. In SpinCAD, audio and control pins can be freely connected to each other, so you can route signals between domains.
Stepped Random Signal: Noise AMZ → Sample & Hold
1. Add the Noise AMZ block (found under Utilities). This is a Galois LFSR pseudo-random noise generator. It outputs a continuous stream of random values. Set its "Output Level" control to taste, and use the "0 -> +1" or "-1 -> +1" range selector depending on whether you want unipolar or bipolar randomness.
2. Add a Sample & Hold block (found under Control). Connect the Noise AMZ output to the Control_In pin. The S/H block samples whatever is on its input at regular intervals set by its internal ramp LFO, then holds that value steady until the next sample. The Rate input controls how fast it samples -- connect a pot or another control signal here, or leave it unconnected and it uses the control panel rate. The result on the Sample_Hold output is a staircase of random values -- a new random level at each clock tick.
This gives you the "stepped random" signal: random voltages that jump to a new value periodically, just like a classic synth S&H circuit.
Smoothing with LPF and HPF
The stepped output will have sharp jumps between values. To make the randomness more organic:
- Route the S/H output through a low-pass filter (e.g., LPF_RDFX or the 1-pole LPF blocks). A low cutoff frequency will smooth out the sharp steps into gentle, wandering curves. This is perfect for slow pitch drift -- it turns the staircase into smooth undulations. The lower the cutoff, the slower and more gentle the wandering.
- Use a high-pass filter (e.g., HPF_RDFX) if you want to remove the DC/slow-drift component and keep only the faster fluctuations. This is useful if you don't want the random signal to wander too far from center -- it keeps pulling back toward zero.
- Combine both: HPF to remove very slow drift, then LPF to smooth the steps. This gives you a band of randomness -- not too slow, not too fast -- which is very natural-sounding for subtle pitch and timing variations.
[Note - Control Smoother block is an LPF with a rise time readout.]
Servo Flanger for Momentary Pitch Bends
The Servo Flanger block (under Delay) is a delay line with a servo-controlled read pointer. When you change the delay time via its Delay Time control input, the servo ramp chases the new position, and during the chase the pitch shifts momentarily (shorter delay = pitch up, longer delay = pitch down). Once the servo catches up, pitch returns to normal.
This is exactly the behavior of a tape machine speeding up or slowing down briefly:
- Connect your random S/H output (optionally smoothed by the LPF) to the Servo Flanger's "Delay Time" input. Each time the S/H steps to a new random value, the servo chases to the new delay position, creating a brief pitch bend. The Servo Gain slider controls how fast it tracks -- lower values = slower chase = longer, more noticeable pitch bends. Higher values = snappier tracking = subtler, quicker bends.
- The built-in Low_Pass control on the Servo Flanger also smooths the delayed output, which helps keep things musical.
Putting It All Together for Natural Pitch Variation
For the "two guitarists slightly detuned" effect the customer describes:
Noise AMZ → Sample & Hold → LPF (very low cutoff) → Servo Flanger "Delay Time" input
↑
Audio Input
↓
Audio Output
- S/H rate: Slow (a few Hz) -- new random target every fraction of a second
- LPF cutoff: Very low -- smooths the steps into gentle curves so pitch doesn't jump abruptly
- Servo Gain: Low (0.05-0.15) -- makes the pitch bend happen gradually
- Keep the modulation range small -- the customer wants subtle pitch jitter, not wild detuning
The result: the pitch gently wanders around the set value, never quite the same twice, mimicking the natural intonation variations of a human player.
============
I would recommend the use of the "Scope Probes" along with the Simulator display to visualize the AMZ Noise, Sample/Hold Output, etc. down the line.
Thx,
DL