Karplus–Strong string synthesis

Hello folks!

Since reading this other thread, I have been experimenting with Karplus Strongk synthesis, I have had some half success in this, but I still avoid getting a usable patch on the vcv rack

After several attempts with the VCV Rack where tuning was my main problem, I moved to the renoise with great success, where I even got the effect with chorus in addition to delays. I went back to the rack with my mind a little clearer and I got something that seems to work, but not quite

the main problem appears when I connect a keyboard to the patch and move for example in the ascending C scale (C3, D3, E3 … … C4) it works quite fine , but when I go down the scale, (C4, B3, A3 … … C3) works very badly

it is clear that I am doing something incorrectly but I cannot find my mistake, does anyone have any idea what is happening?

Thanks you!

I leave you an example

20.vcv (12.7 KB)

facebook video 
https://www.facebook.com/infame.david/videos/10222209720009355/
1 Like

I have found tuning Karplus Strong to be a tricky subject. I feel one of the problems you may experience when going down the scale is the delay buffer size is suddenly increased, so your feedback loop is containing more historic data at a higher pitch. I also had a lot of problems with filters in the feedback loop affecting tuning. The original paper describing the technique shows a simple 1st order feed-forward filter, the delay time for this is constant and can be used when calculating delay times for tuning, most of the audio filters in VCV are IIR, so the setting of the filter will also change the tuning. A lot of the time when I see this used in both vcv rack and modular videos, the sound is not normally tuned to work with V/oct

The original paper can be found : https://www.academia.edu/2750161/Digital_synthesis_of_plucked-string_and_drum_timbres

I also have a module in the vcv library dedicated to tuned Karplus Strong that may give you some ideas : https://library.vcvrack.com/StudioSixPlusOne/KSDelay

2 Likes

ohhh!

that is exactly what i need ! ( I hope so)

thanks so much, for your answer and your module, that sintesis is really really nice and colorful , I ll use your module a lot!

1 Like

Have you tried the new Karplus focussed module called Wallenda from 6+1?

It has a V/Oct input

Omri did a video on it too.

This might be a bit “all-in-one” for what you want though :slight_smile:

3 Likes

Yes, I have not had the opportunity to try it yet, but I think this is what I need. With Dave explanation, I now see clearly what was wrong with my patch. thank you!

This module from Frozen Wasteland is my favorite for this purpose. It wraps up what I think are the essential features for a fully flexible Karplus Strong synth:

  • V/Oct tracking (standard delays don’t)
  • Processes external input (many KS modules don’t), but will make its own impulses using the trigger input (many KS delays don’t, although you can just roll your own so no big deal)
  • Includes send/return jacks so you can get inside the feedback path

I’m not aware of another module that does all three. If you really want to get into waveguide synthesis, getting inside the FB loop is where the power is IMHO - e.g. you can put another delay line inside the FB loop. String Theory also includes a filter in the FB path (not uncommon), a ring mod in the FB path (unique but not always useful), and a “grains” control, which is also unique but, unlikely ring mod, it’s more subtle, allowing for organic-sounding variation between plucks.

1 Like