Chris Smith wrote:
Is there any significant difference in the output of a clocked sample and hold module with a noise oscillator as input, and a (much cheaper) clocked random step generator?
The S/H module is an audio rate (96KHz) module, so it might sound different if you tried to clock the two modules at audio rates to create an audio signal. The clocked random generator may have some aliasing artifacts if you try this, but since it's random noise anyway, you may not notice much difference.
Regarding the behavior of the two circuits, I dunno. Anybody know how the noise generator & the random generators determine their values?
Of course, the handy MONO and COLOR switches on the random generator can be quite useful. It would be a hassle to devise a MONO scheme using the S/H module, perhaps impossible in some applications.
Rob Hordijk wrote:
Not having contributed anything to the list for quite a while it seems about time to add something that hopefully is inspiring to some. So some more after the answer to your question.
The difference between the clocked random step generator and the noise/S&H combi depends on the type of noise that is fed into the S&H. Noise has certain statistic properties, like how much the next value can change from the previous value and if there is a tendency that smaller changes occur more often, etc. These statistics can be controlled to some extend by the colour knob on the noise generator. White noise will favour all possible values equally, while coloured noise will favour the notes in the center by favouring small changes between steps. So, while the clocked random step generator has only two 'statistics' settings, the noise generator colour knob has 128 steps and so 128 'statistics' settings. Additional filtering or waveshaping of the noise before it is fed into the S&H offer endless more possibilities. Though the sound of the noise generator is not bad for a digital system between knobsettings 0 and 64 the statistic properties at the coloured end are not really that good, it is a bit spikey over there.
Here is some more:
Many times the real question is: do generated sequences sound good and natural. In general for a sequence to be musically interesting it is said that they gain interest if little parts of the sequence repeats now and then, so there is something to recognize in the pattern. A little 'motif' so to say, that now and then comes back. This is named redundancy, or how many times and how often do one or more little motifs recurr. Both the clocked random step generator and the noise generator/S&H combination do not have these small redundant 'sub' patterns. They both wander aimlessly in a way that gets boring pretty soon, no matter what sort of statistics are between the steps.
The human mind apparently wants to hear little patterns that repeat within sequences, things for the mind to anchor on, the mind waits for these and when they happen the mind feels good, "hey, there it is again" it thinks, even more so when it happens more or less on an expected time. And when there is a slight change in the motif, in a way that it is recognized as the same motif but with a slight change that induces the though "Ahh, now that is nice as well", it gets more and more interesting to listen to. A good composer has the feel to use these principles to create a piece of music that keeps the attention all the time. But for an algorithm to do this real good, well, when that one is discovered most of us will be out of business, and one of us would become probably more loaded than Bill Gates. (The one who manages to patent that algorithm and licence it to every record label) The S&H also offers possibilities to generate sequences with certain statistical properties by sampling a waveform with a frequency that is related to the clock signal in some ratio. By using an lfo instead of noise very ordered sequences can be created, where the chance of a next value depends on the waveform being sampled. E.g. when a sawtooth or triangle is used all notes are favoured equally over some time. But when a square is used there will be only two equally favoured values. Changing the pulsewidth will favour one of the two values in a relation equal to the pulsewidth. A sinewave will favour the notes that are closer to the extremes. But the generated pattern is in general too ordered, always the same pattern over and over again, causing the mind to get quickly bored.
Conclusion is that sequences generated with a S&H and a lfo tend to be too ordered, while sequences generated with noise tend to be too random. A trick to get more variation is to use a method that can generate sequences that are somewhere in between the purely random noise sequences and the boringly ordered lfo sequences. So, sequences that appear to be ordered but change gradually or slightly variate over time, featuring small recognizeable motifs that recurr and develop over time. These changes and variations should have a natural feel. Now, this is not simple at all, many composers and university research institutes have tried to solve this problem for the last fourty years or so. And I won't pretend I have the answer either, though I would like to have it and become astronomically fat. J
Interesting techniques have come forth from fractal and chaos theory. One of the more interesting sorts of randomness is a result of a feedback look with a non-linear function. In music the most well known example is a FM oscillator set to selfmodulation. When the modulating feedback exceeds a certain level the oscillator starts producing noise, which is the way noise is generated in DX7-type FM synthesizers. Basically it lets itself be captured in the formula X'=SIN(X). In reality it is a bit more complex than this simplified formula, but that formula is just to show where the non-linear function is that has the potential to create chaos. Another well known example is the use of the function X'=4*X*(1-X). When plotting this function it is an upwards facing parabol that fits nicely in the square between the point 0,0 and 1,1. The trick is to constantly feed the last result back into the formula to generate a sequence of numbers. At the beginning a start value or seed must be put into the formula, and the resulting sequence will depend on this start value. The interesting behaviour is that with seeds that are higher than about .86 short repetitious sequences are generated. When slightly changed, e.g. by every now and then add a little something to the input value, the 'sub' patterns seems to double or halve in length. This behaviour is named frequency doubling and sequences that have these frequency doublings appear to have a natural feel. Probably as in nature this phenomenon often occurs. It comes close to the idea of redundancy in a composition. Good and very consumable introductory reading on the subject is still the book 'Chaos' by James Gleich.
I heard that in the G2 there will be a lfo that uses a similar sort of formula to create pseudo random sequences that feature these 'frequency doubling' effects.
Attached is a patch named 'RandomlyOrdered' that is about the simplest way on a modular synthesizer to create sequences that can be gradually changed from an ordered lfo sequence to a 'chaotic' sequence. The idea is to use a S&H on a lfo, but have the output of the S&H control the speed of the lfo. A slave lfo is very useful, as when it is slaved to the clock generator and no feedback is applied, it creates an ordered sequence that depends only on the ratio (knob1) and the phase setting of the lfo (knob3). A crossfader is used to crossfade the slave input between the grey value of the clock generator and the output of the lfo (knob2). When the crossfader knob is gradually opened there will be less influence of the clock generator and more influence of the lfo output signal and the sequence will appear more and more random. The lfo output is scaled to the grey value to allow for predictable behaviour over a large range of tempi of the clock generator. The Bar reset button (knob6) can be used to reset the lfo at the end of the bar. When the crossfader is to the left this will give a short one bar sequence that is only depending on the ratio and the phase on the lfo. But when the crossfader is opened, the sequence will change and at a certain moment will become longer than that one bar when the influence of the lfo output on its own frequency becomes more significant. The reason why this happens is that every time the lfo is reset the last S&H value is different right after this reset. This will influence the lfo speed, making the lfo start with a different speed after the reset and also causing a different value at the next reset as all accumulates over time.
Knob4 inverts the feedback signal, changing the feedback polarity will move the sequence to another pattern. Note that many times this will not happen instantly but gradually over a few steps. Other knobs can have this behaviour as well, it is like the sequence has to settle for a while. A bit like it is attracted to a new pattern but needs some time to 'find it'. In chaos theory such behaviour is named a 'strange attractor'. Personally I like a metronome running, or a simple kick like in the patch, when experimenting with algorithmic sequences. It gives a better idea about their musical use(ful/less)ness.
There are lots of other interesting sequence generating techniques, most are a little bit more complex. The described technique is about the simplest to create little or more drastic temporal discontinuities. And it can be varied upon endlessly.
The S&H feedback oscillator principle works on audio as well, as in the patch 'ChaosOscillator', which creates all sorts of chaotic sounds. Sort of a WoggleBug class of chaotic sound, or your bands guitar player getting stcuk. These sounds can then be filtered by a sharp bandpass filter with variable width to create 'eerie' space noise. Play through an analog bandecho over a big Marshall stack for best effects.
Note that the bp filter is created by two parallel filters in opposite phase to avoid the dreaded resonance headroom clipping when the bandwidth of a serial high resonance lp/hp combination gets very narrow.
Chris Smith wrote:
Wow!
Not only a detailed answer to my question but some detailed answers to questions I hadn't even asked (and yet needed answered) - you seemed to telepathically know exactly what I was working on. And two awesome patches too!
Steve Whiteley wrote:
This is a topic I love. I've learned so many cool things from this list, hope these suggestions are not too redundant to what is already available.
Some ways I've been using to get a fixed sequence to become more random and interesting are: