Karplus-Strong Algorithm
February 27th, 2009
At FITC Amsterdam I demoed my first and fairly simple implementation of a Karplus-Strong implementation. Together with KP, we were able to enhance it to sound more like a real guitar. I think, the result is already quite impressive, considering spending just a few hours. At some point I cannot hear a difference to a real guitar. This is even more impressive when you think of how it is accomplished.
A simple low-pass filtered feedback in a short delay line with the length of one period of the target frequency and some white noise do the first impression of a plugged string in common. For a guitar you need more tweaking, randomizing parameters and adding the guitar body resonance to get it more realistic. But the basic is done with an algorithm, discovered 1978!
I really like the elegance of the circuit. You basically bring in chaos (white noise contains all frequencies) and the system is going to stable itself and produces a nice waveform, perfectly suggesting a plugged string.
Naturally we are already planning an AudioTool plugin for synthesizing different guitars. But I am worried about the footprint of the algorithm. I stumbled over this comment which pointed out that the Karplus-Strong algorithm is patented. That is tough. At the time being this algorithm was a great accomplishment! But now where even Flash is able to playback code-generated audio data, I would think that someone may stumble over this method even by accident. It is better to commit our lawyer with this issue, but as the comment says, it is a really good example how bad code-patents are.
Listen and picture it for yourself. (Check the CPU!)
The implementation has a static set, but gives you some control on how the guitar is played. Nothing really magic. Definitely it would be a perfect addition to the AudioTool.
Filed under: +
8 Responses to “Karplus-Strong Algorithm”
-
Willem Says:
February 28th, 2009 at 7:52 pmLike you probably know, there are more ways to implement physical modelling circuits. Most i encounter use digital waveguides : http://ccrma.stanford.edu/~jos/Mohonk05/Digital_Waveguide_Interpretation_Karplus_Strong.html
It’s possible they all are patented, but i wouldn’t count on it.
-
Nicolas Says:
March 6th, 2009 at 9:55 pmSimply great :)
And you don’t have to worry about software patents, since we’re in Europe.
-
Anonima Says:
March 11th, 2009 at 4:53 amHi there, I understand you are no longer freelancing, however I’m looking to have something developed along similar lines (instead of music, I’m just looking for something that would greatly assist hobbyist radio play and dub producers) — I was wondering if there are some people you could recommend who could help me get a better understanding of what to look for/plan, and what’s possible with PopForge? :)
Thank you, and I forgot to say this, but faaaaaantastically beautiful work you’ve done with Hobnox. It’s absolutely brilliant.
-
atomoil Says:
March 21st, 2009 at 2:13 amreally excellent. the comment you’ve linked to then has a followup saying if there was a patent then it’s expired, so sounds like it’s fine to use. hurrah!
\a
-
fritz Says:
April 16th, 2009 at 5:19 pmPatents expire internationally after am maximum of 20 years
-
FFK09 - Die Flash Plattform Konferenz in Köln | Wolkenform Says:
April 30th, 2009 at 1:41 pm[...] Beispiele und was man damit machen kann. André Michelle blieb den Tönen treu und stellte den Karplus-Strong Algorithm vor und Frank Reitberger zeigte Pixel Bender Effekte und föhnte, mit dem Föhn seiner Frau, [...]
-
Tuxi Says:
July 19th, 2009 at 9:16 pmFritz is right: the patients (US4,649,783 and US4,622,877) belonging to the Karplus-Strong method have expired in 2006 and 2007.
-
Cooker Says:
September 7th, 2009 at 1:11 pmGood article thanks
