T and Sympathy — a six-voice sympathetic string emulator

Sympathetic, resonating drones. Weird, pseudo-vocoding. Shimmery cascades of tonality. T and Sympathy uses a comb filter/resonator made from a short delay line and a low-pass filter feedback loop to create all kinds of resonant chamber pseudo-reverbs and ringing resynthesized sounds. A multi-tap delay is placed before the strings, so you can space them out and even ping-pong from left to right and back again, each tap pinging a different frequency.

This patch started with my umpteenth attempt to figure out how to tune delay lines to make a Karplus-Strong synthesizer (that is playable via MIDI or CV; making the synthesizer is easy, tuning it is not so easy — I think there’s an answer out there, probably, but I don’t think I’m going to find it). I gave up, but not entirely. Before I threw in the towel I exchanged the noise-burst exciter I was using for external audio. And I said, heck, this sounds pretty neat. (I grew up in a 1950s sitcom.) So, I said, even if I can’t get this to tune to some external source, there are still a lot of uses for this sound. And then I did it five more times, because if one is good, six is better, except in all the cases that that is not at all true.

The patch passes stereo audio, and a true stereo image can be created (splitting the comb filters into discrete left and right clusters), but there are also options for different pan spreads (see below).



Left — tap tempo. There is also a tap tempo button on the front page. It also accepts MIDI clock. And CV clock if you load it into a Zebu (there’s already a module set up for it). The delay has some quirks — I think good quirks — but you might want to be aware of them, so check out the section on it below.


Each string has four individual controls. TENSION determines the pitch/frequency of the comb filter (for the most part; more on this in a second). At 0, the string is the most tense and therefore highest pitch. As the value rises, the string becomes “looser,” and the pitch drops. (I know this isn’t how string tension works, but it was a really cool name for the control, and I didn’t want to spend the CPU to invert the signals, because the patch uses a lot of multi-filters and multi-filters can add dynamic stress to the CPU and cause clipping. Which the patch does not do.) As mentioned in the introduction, the tuning is not quantized or anything like that; instead, tuning is done by ear.

The DAMPING and RESONANCE controls work in tandem. The damping controls the frequency of a low-pass filter in the feedback path of the string. The resonance controls the filter’s resonance. As damping is increased, the string becomes brighter and more resonant — this is something of a timbre control. As damping approaches 1, the string can take on more characteristics of an oscillator. The resonance also affects timbre, but it also affects how quickly the ringing of the string diminishes. It should be noted that in certain settings, with certain audio sources, at high damping and resonance, strings can clip and go into excessive oscillation. If that occurs, reduce one or the other (or both) parameters.

Because of the phase delay of the low-pass filter, at different frequencies it can slightly affect pitch.

Also, of note: lower pitches will tend to ring out longer, so you may want to adjust damping and/or resonance to compensate.

There is also an ON button for each string. You can mute individual strings, which can affect the pattern of the delay, along with simply thinning out/simplifying the sound.


Because of the smearing/ringing aspect of the resonant comb filters, in some settings the tempo may not be readily apparent, but it will still contribute to how the taps spread out.

It should also be noted that there are two delay schemes:

In the first scheme, when the PING-PONG button is OFF, the left and right delay taps will be synchronized, and the delay will move through the pairs of comb filters, beginning with the innermost left and right filter and then moving outward before returning to the input for regeneration. Each tap will be spaced according to the tap tempo, so it will take three times the tap tempo for regeneration to occur (the output of the delay network will be consistent with the tapped/clocked tempo, though, it will just move through different comb filter pairs).

In the second scheme, when PING-PONG is off, the right comb filters will be offset by half the tapped/clocked tempo. So, the innermost right comb filter will be heard at half the time of the tapped/clock tempo, then the innermost left comb filter will be heard on the tapped/clocked tempo, then it will bounce back to the middle-right comb filter at time and a half and so on. Again, both sides will reach the end of the output taps before regeneration occurs (a supplemental delay is added to the right side to keep the delay times in sync).

Because a lot of the neat features occur when the comb filters are very narrowly spaced (quasi-reverbs) or stacked on top of one another (weird spectral vocoder-ish stuff), I added a control to act as a compromise between tap tempo and the types of delay times only easily accessible via a manual control: CLOCK PERCENT. This essentially scales the clock (which is converted into CV). At 1, the clock percent is 100% and the tapped/clocked tempo will correspond to the output of the patch (in the manner described above, based on whether ping-ponging is active or not). At 0, the delays will have minimal effect (there is some buffering involved). At points in between, you have different percentages of the tapped/clocked time, which allows you the option to explore these places that aren’t easily accessed via clock. It’s a good compromise, but not without its downsides: the time equivalent to the clock percentage setting will change each time the tapped/clocked tempo changes, so if you liked the percent setting, then change the tapped/clocked tempo, you may have to readjust.

The FEEDBACK control does… what you’d expect. At very short delay times, high feedback settings can add another layer of comb filtering.


There are WET LEVEL and DRY LEVEL controls for creating a mix. The WET LEVEL can get quite loud in many settings (resonators gonna resonate), so practice some caution when initially setting it.

The PAN SPREAD determines the distribution of the strings. The spreading corresponds to the placement of the string controls on the front page. The left- and rightmost strings are spread most, followed by the middle left and right strings, with the innermost pair being spread the least. But the control works such that at .3333, all of the voices are spread evenly across the stereo field, with the leftmost and rightmost strings being hard-panned. As the control increases beyond this, the middle pair of strings and finally the innermost pair will be hard-panned at a setting of 1. This creates a true stereo output, with the left strings only accepting and outputting audio from the left side, and ditto for the right. Most of the time I like a less extreme setting, but that one exists if you want it, and it can create some interesting effects.

Leave a Reply

  • Platform:
  • Category: Effect Synthesizer
  • Revision: 0.1
  • License: Creative Commons Attribution Share Alike 4.0
  • Modified: 1 year ago
  • Views: 1582
    Likes: 16
    Downloads: 662