Voice Layers Module

I've been experimenting with constructing virtual "Sound Cards" as a way to emulate vintage synth sounds.

Attempting this using the existing layers modules is difficult. I've found constructing multiple copies of the same (or different) synth on multiple layers results in lots of buggy behavior. But it can be done by building each layer and connection part by part.

Another problem is maintaining polyphony.

The idea I have is a layer module designed for assigning each polyphonic voice to its own layer.

I can create a suboptimal version of this now by using a pair (or more) of Voice Selector Modules at the beginning of each layer, one for the gate and the other for the note. But it gets very complex when routing modulation sources in front of the Layer Module into it, because things like Env ADSR output need to be brought into each voice layer through a dedicated Voice Selector. On some builds I've used as many as 6 Voice Selectors per layer.

A Voice Layers Module...

I'm thinking of three primary features.

1&2) A Gate, Velocity, and Note input in the front, and Gate, Velocity, and Note outputs behind. These outputs are necessary because I've found that once polyphony is divided in the layers, it's no longer available to send to modules after the layer module (i.e. you can't put in an ADSR envelope after, because it requires "polyphonic encoded" signal to work).

3) The ability to modulate individual parameters on all the voice layers with controls built into the Layer Module. The way I see this working is by including a front end on the Module that could provide knobs using the same tap to create knob method as the Mixer. The deference would be you get a choice to either route-in an input signal from a module in front of the Layers, or double tapping the knob would let you set the knob to send "built in" CV uniformly into each layer. In the Layer view each created input appears as a labeled connection point in the front of the layer.

The ultimate point is to be able to create independent sounds of any type on each voice layer. Each press of a key plays through the layers in sequence. The creative possibilities are pretty broad IMO.

I made a short Video to demonstrate the power of voice layers. Notice when I'm playing the chords, I get a different sound each time I press the same chord. The sequencer part is simply repeated notes occatioanly changing key. But notice the effect created by varying the adjustment on each of the three synths, one on each layer. Each synth plays only one voice via the voice selector modules.


Comments

  • I like this idea! This module could be usable, so who knows :)

    btw. there is another way to modulate voices separately, use Voice Number module... it sends voice number to corresponding voice in its output.

  • @giku you mean the Voice Selector maybe?

    What signal type does the signal output carry?

    Seems like it's the pitch, no gate and no velocity... Or did I just miss another module to extract these signals from the selected voice? Neither Voice Selector nor Voice Number show them.

  • Voice selector carries the signal, that is connected to its input.

    Voice Number - is a generator... it sends a constant polyphonic array [0,1,2,3,4,5,6,7]. it may be used e.g. to vary LFO speed across voices.

  • edited June 2020

    Let's say I have a 5-voice chord and I wanted to tune the oscillator pitch of voice 3 slightly downwards and the pitch of voice 5 slightly upwards.

    Apart from the fact that voices are sequentially distributed, how would I do that? Sorry I still don't get it.

  • Glad you like the idea. :)

    I posted a photo below of the way I know to use the Voice Number module. Does it have further uses?

    It would be great to be able to use it selectively as a CV source that triggers for only one selectable voice.

    Currently I use gate voltage filtered through a Voice Selector as a CV source to use with one specific voice.


  • Here's two screen shots of the synth on Layer 3, and the synth on Layer 5.

    All 5 Layers each have two Voice Selector Modules labeled "Voice Gate and Voice Note". The Voice Selectors on each layer connect to the GATE and NOTE outputs on the MIDI TO CV, then each pair of Voice Selectors has its voice setting adjusted to be the same as the number of the layer it is on.

    Once set up, the press of each key will only play the one synth on the layer that corresponds to the Voice Number the key is triggering.

    This is essentially an emulation of how the sound cards work in vintage analog synths.

    What I've done in this setup is to place a single Number Module and Mixer in front of the "Voice layers", then connect that mixer output to the tuning for OSC 3 and 5. By using external controls, you can make adjustments to modules of all the synths in the Layer Module with one control.

    However, certain external modulation sources like Env ADSR, and LFO's used to modulate Oscillators, will need to have their signals channeled through their own dedicated Voice Selectors on each layer or they wont work properly.

    Seems there's something about any module that requires a Gate needing its output filtered through a Voice Selector to work properly inside a this type of layer setup.

    Beware when you construct elaborate synths using this method that modules can occasionally "bug out". I discovered the best way to build this type of setup in to place every module, and make every connection one step at a time. Copy and paste works of for simple protects, but I've had lots of bug crop up when pasting complex synths onto multiple layers. I discovered the best remedy for a bugging out "voice layer module", is to delete it, add a new one, and redo the connections one at a time.

    This is why I think a "made for the purpose" Voice Layer Module would be frigging awesome. Especially with new filters on the way.

    We should theoretically be able to recreate vintage synths, and create a huge variety evolving sounds that change with every note played by the sequencer! :)




  • @Horsetrainer

    Thank you for the great example! 😊

Sign In or Register to comment.