View Single Post
Old 4th June 2020 | Show parent
Lives for gear
SkyWriter's Avatar
Originally Posted by pekbro View Post
This would be hard to comment on without having a look at the api. It's not super clear what you would need here.
If you're looking for inspiration on the algorithmic front, maybe have a look at Artwonk, it's free now and there's a ton
of stuff in there to have a look at, fractal's etc, all in the context of generative music.
Hi @ pekbro , any answer is a good answer. :-)

So forget all the context. Look at how you construct modulation chains on modular synths. For instance, if I simply wanted a delayed vibrato effect I would do something like:

Ramp(ascending slope)->LFO(amplitude)->OSC(pitch)

This takes two modulators, with a two controls:
Ramp: Rate, Intensity
LFO: Rate, Intensity

Now if I wanted to have the same effect the cutoff freq of a LPF, I might do this:

Ramp(ascending slope)->LFO(amplitude)->(A)->OSC(Pitch)

Where I have the same modulation chain, branching on (A) to a tracking modulator (see Matrix 12), which routes it to another input on a LPF including an intensity control to adjust the effect. Or maybe I want to use a Lag filter to smear the cutoff a little in time.

So, I checked a few synths I knew with programable Modulation matrix, and came up with a few. It was a short list. There must be more.

In modular, you deal with CV's with a variety of devices, Maths, attenuators, mults, S+H, in the same way you might use a waveshaper or folder on an audio signal, to put some variety, and dynamics to an otherwise static sound parameter.

I realize, at this point most of these common ones has been subsumed by do-everything-modules. You want delay vibrato, turn the delay vibrato on! But, at one time (early moog), all this stuff was done with VCA's, EG's, atten's, mults, etc...
If I explained myself well this time, we can go back to context. I'm writing modulation software for a pre-existing sound generator (Plaits). The modulation software and sound generator software is compiled together into a single executable load module into the synth (Prologue 16). The synth will only* make available 6 numbers ranging from -100 to +100 (inside a menu), and two rotary encoders to control the software. To implement a robust modulation system, capable of being controlled at a reasonable granularity given the paucity of control structures, I "need" to do one of two things:
- pre-define a set of pre-set modulation 'connections', and modulation patterns, and select between them one at a time mapping the available controls to different portions of the modulation matrix. Or
- define a set of source and operators that 'tesselate' into a variety of useful combinations of sources and modulators based on a multilayer modulation matrix. Then permute inputs and outputs through to focus on different aspect of the oscillator model.
For each source or modulator, create a useful description of that only operation in one or two control values.

Stamp and repeat, 100's of times.

So! To the point. I came up with a list of simple modulators (see attachment), that seem pretty good. Thought someone would go "Dude you friggin forgot 'schmoooch'!" Or something I didn't even think of.

So... good talk! :-)

*-there are other methods. However, they violate the rules required to preserve in a 'preset' of the state of the oscillator.