Vocoder

Description of feature (short and simple):
Vocoder Module
How will this feature improve the workflow or experience for all SSP users (keep it short and focused):
Just thinking of tools that SSP could do where other Eurorack modules fall short. Wondering if there is a VST that could be ported?

The SSP already has the required modules to patch together your own vocoder.
I’ve built this Patch in my head already, but have not tried how well it works in practice.

It could work as follows:
Feed an input signal to a number of SVFs in bandpass mode.
Each SVF-BandPass must be tuned to a specific frequency band. The number of frequency bands you want to use determine how many of the following chains you need:

1: INP → SVF (In bandpass mode) → EFL → VCA (Control In)
2: OSC (tuned to same frequency as the Bandpass filter) ->VCA (Audio In).

Next you collect all the frequency band outputs from the VCAs and combine them in an OUT module.

The principle is to get a filter (SVF) to listen to a narrow frequency band. Use the Envelope Follower (EFL) to generate a control signal based on that frequency’s amplitude. Finally use that control signal to drive the amplitude (VCA) of an oscillator (OSC) that is tuned to the frequency band.

Give it a try and let us know hw you went. If I get around it, I will post a Patch in the forum.

1 Like

for superbooth, I created a 16 band filterbank with svf (*) , which is kind of the first half of this…
(filter banks are a lot of fun!)

as you say, just add an EFL from the bands output, pass directly into the level of the OSC (they already have a ā€˜built in’ vca)

the fun, is tuning the bands (I based mine on the filterbank on fumana from frap tools) and also setting the parameters of the EFL.

this I guess is the ā€˜analog’ approach to vocoders… (using filters)

the digital approach would be to use an FFT for analysis, this gives N frequency/amplitude outputs (as ā€˜bins’) which you would drive N oscillators with. the ā€˜issue’ is FFT are pretty cpu intensive (there is also an ā€˜analysis’ delay)

… of course, a ā€˜vocoder’ would essentially be a combination of the fft analysis /vcas/ oscillators… but I think in modular it be better to keep separately… as you could then use with different oscillators and filters.

definitely worth playing with the analog version though, its not as ā€˜perfect’, but actually that’s likely to give it much more character… and allows for a little more ā€˜user’ tuning


( * ) as for using an existing VST, as Ive mentioned before… its basically never worth it…
the issue is, you need to recreate a specific UI that works well with the SSP… it also needs to compile for ARM… and a host of other ā€˜adapations’… to do this you have to pretty much rip apart the VST and understand how it ticks…
by the time you have done that, its much easier to just look at the DSP code for inspiration etc (or find other similar open source DSP) and create the module from scratch.

(there are also other ways to create DSP code, for specific purposes like this… e.g. using something like FAUST… and then again, create the UI as required)

the issue is , VSTS are basically designed for desktops so have little in common with embedded hardware and also modular environments…
similar reasons why VCV rack module are generally not ā€˜ports’ of vsts, rather fresh implementations.

(yes, I know the VST host module exists in vcv rack… but that also demonstrates the limitations of that appoach e.g. automation mapping, but also only works because vcv rack is running on a full desktop, with mouse/keyboard)

i have given this module (vocoder) also a great deal of thoughts,
as i am looking for a way to superimpose/imply one sound source on another
-or play a carrier through a modulator so to say

all this above only is half of the story

since there’s no FFT (yet?) in the SSP this option is out of the question

rests the way of the filter, or to narrow certain frequencies so we can analyze and retrieve certain bands to extract the information we need/want from it

ideally this would be the frequency, amplitude and sequence/tempo/gate

i think amplitude & gate can be substracted through an EFL

but for the frequency of the signal to be analyzed into meaningfull information , the modulator signal needs to be (ideally) monophonic, which is not something i’m interested in (compromising to)
you could tune the SVF into really small/narrow bands & end up with something like 128 bands, which puts us into FFT realms again

and all this to analyze the modulator signal, we haven’t spoken about the carrier signal yet, and how to superimpose it on the other signal

vocoders with a limited number of bands are very common…
(actually, outside of vsts etc, Id suspect they are the most common)

first search…found this

AnalogFX - VXC-2220 Vocoder, using the Synton Syntovox 222 vocoder, uses only 10 bands.
a GRP vocoder 22 (nearly 4500 euros!) uses 22 bands
the classic (again 5000+$) mood, had 16 bands

again, as analog these use the filter bank approach.

generally, Id say in modular, you are going to use a limited number of bands… since each band also becomes a kind of ā€˜voice’… so 128 bands, would need 128 oscilllators/vcas… so in physical modular, few are going to cope with even 16 bands :slight_smile:

of course, once we go digital… then its easier to create more bands, more oscillators etc.
(though of course, there, obviously, are limits with things like the SSP, compared to a desktop/laptop.)

also, I said, FFT is just ONE approach… and it yields something very different, as the way it presents the bands (even if you use a limited number of bins) is very different, its not the same at all, as using filterbanks/bp filters.

basically there is no ā€˜right’ way to do vocoders (or frankly, any synth/fx) , all have different pros/cons, and also a different character…
with vocoders, Ive tended to be driven by what they can do/sound like, rather than any idea of needing X/Y/Z, as I find that the more musical approach due to the fact they all vocoders have such an individual character.

honestly, though, not sure I have much interest in this area…

as above, I do really enjoy filterbanks… and I may well create one, as id like a spectral tilt function on it… and whilst possible, by patching… it takes a few modules :slight_smile:

but really, whilst I understand the various uses of vocoder and played around in this area before - Ive never really been excited much by the sound/effect… perhaps Id need to play more in this area.
but as I said, filterbanks are much more ā€˜up my alley’ :slight_smile:

I often use the vocoder on the Nord Modular I have and it is very useful for much more than your standard ā€œrobot voiceā€ thing. Applying it to or using percussive loops can give very unusual results. The Nord’s Vocoder is a 16 band one with the ability to assign any carrier band to any program band.
It looks like this -

3 Likes

Indeed I’ve used hardware vocoders for years and not once needed to make one ā€œtalkā€ :smiley:

Instead of speaking or singing, I’ll use my voice to shape any sound with my mouth/lips/teeth/tongue (frankly the most powerful multi-mode ā€œfilterā€ nature has provided us) in real time…it’s like having enough hands to adjust all the knobs on a fixed filter bank at the same time with great agility and precision.

Plus these human ā€œfiltersā€ aren’t fixed at all, neither is the effective Q of each. The vocoder channels may (usually) be fixed, but your vocal Modulator input maps your complex noises across them, opening the available vocoder channels in subtle and organic ways which you could not replicate with two hands.

Instead of words, you make sounds like a child creating the explosions of an imaginary battle or rockets wooshing by. Anything. The Carrier can be simple white noise, a mixed piece of music, sound effects or…anything.

Another aspect of this non-verbal vocoding is that 8 or 10 bands can be plenty to achieve complex, evolving textures. You don’t necessarily need a 16+ channel vocoder to do musical things. It may not ā€œtalkā€ convincingly, but you might find you don’t care.

1 Like