Karplus Strong Synthesis

 

Florian Anwander wrote:

I am trying to build a Karplus Strong synthesizer. The Karplus Strong synthesis uses a highly resonating delay line which is feeded with a short noise pulse. The sounds are very similar to plucked strings. The AD-envelope of the noise pulse imitates the kind of pluck; a filter in the feedbackloop of the delay imitates the damping of the string; the delay time specifies the tune of the string:

(If you want to try: I use four delay modules in series to get reasonable delay times)

Now my problem: I modulate the delay time with the note value, but the delay reacts non-linear to the notes: If I adjust the modulation amount of the delaytime that way, that a octave E2-E3 works fine, then the difference between A2-A3 is already too wide. Is there any possibility to get an adjustable logarithmic control-module?

Rob Hordijk wrote:

There are several solutions to tuning the delay line for Karplus Strong and several patches in the archive that do just what you want. A simple way is to use the note/level scaler. Have a look at DelayModule and go to the paragraph 'Tuning the delay to a chromatic scale', somewhere at the end of the workshop. But there are more ways, perhaps Clavia will add a chromatic tuner input in the next update.

Using a filter means that if the cutoff of the filter tracks the pitch a perfect tuning curve should be possible. However a LP filter set to a fixed cutoff frequency does bend the range slightly. Middling the last two samples bends the range also slightly (as the one sample delay has a slight change in ratio in respect to the total delaytime for different delay times). Disadvantage of the tracking filters in the NM is that they sometimes exceed unity gain, especially at somewhat higher Q, so to much feedback and there goes the model.

Here is an example of the original Karplus Strong way of filtering, middling out the last two samples and feeding these back. Note that switch module must be inserted AFTER the crossfader is inserted in the patch to get a proper one sample delay.

Of course not only noise is interesting as input source. And using an inverter in the feedbackline lowers the note by an octave, introduces a strong odd harmonics only timbre and nicely cancels any DC shift due to a not exact symmetrical input signal. Another way to get rid of a possible DC shift is to insert a 6dB HP filter set to 12Hz, but this also changes the tuning curve slightly.