Open-source VST plugin: vocoder with pitch shifting.
Note
This project is complete and archived. It will not receive updates, but it remains functional.
- LPC: vocoder on/off
- Order: vocoder order
- Mono / stereo: choose stereo, mono, or anything in-between
- Dry / wet: ratio of effect signal to input signal
- Voice 1, 2, 3: advanced pitch shifting - first pitch shifts the voice, second and third add additional shifted copies
- Good performance and real-time processing (latency ~50ms)
- Good sound quality
- WebView UI with native-like knobs
- Choose any inputs, or try a microphone
For technical reasons, the effect is only compatible and verified to work with the following systems:
| OS | DAW |
|---|---|
| Windows x64 | FL Studio, Ableton |
The effect will not be ported to other systems nor ensured to work with other DAWS.
The recommended DAW sample rate is 44.1 kHz.
A carrier signal, e.g. guitar or synthesizer, is fed into one channel (green). The adjacent channel (blue) receives a voice signal - voice recording or microphone input. The effect is inserted on the carrier channel. To wire both signals into the effect, sidechain is used (connection highlighted in blue).
Please note that the carrier should ideally be a sound with a rich spectrum.
- Download the .VST file
- Unzip the file and place it in a VST directory like
C:\Program Files\Common Files\VST3\ - Follow the steps for FL Studio setup or Ableton
The core effect is a vocoder based on Linear Predictive Coding (LPC). The pitch shifting algorithm is inspired by DAFX.
The project is based on the JUCE framework and KFRlib for FFT. Vue GUI is integrated as WebView.
Important algorithms:
- Autocorrelation
- Convolution
- Formant-preserving pitch shifting
- IIR all-pole filter
- Levinson-Durbin recursion
Optimizations were made to achieve real-time processing. Many algorithms are implemented using FFT.
A python implementation was created to test the algorithms: Python LPC vocoder.
Click the insert effect button of the channel that you have selected for the carrier signal.
More plugins → Manage plugins → Find more plugins.
There, find the Prescient-VST plugin. Star it and it will appear in the effect category Fx-Vocals. Now, you can add it to the channel.
Prepare a channel with voice signal and sidechain it to the channel with effect by right-clicking on the triangle and Sidechain to this track only.
Ensure that the channels have the correct signals.
When you hit play, you should hear only the carrier signal. Set the plug-in to receive the sidechain signal:
I recommend setting the plug-in window as detached.
Settings → Plug-Ins → enable VST3, Rescan.
In plugin browser (not pictured), find Prescient-VST under BLCK. Drag the effect onto the carrier track in Arrangement View.
Notice the carrier and voice tracks in Arrangement View. By clicking into the square with the name, open a list of effects. Assign the effect to the carrier track.
The sidechain input of the effect must be set so the effect can receive the signal from the voice track:
- On reopening window,
Orderjumps to a low value - The effect may clash with a limiter on master











