Karplus-Strong-Algorithmus

Der Karplus-Strong-Algorithmus ist ein Verfahren der Klangsynthese, welches besonders geeignet ist, um den Klang von Saiteninstrumenten zu simulieren. Der Algorithmus wurde 1983 im Computer Music Journal von Kevin Karplus und Alex Strong vorgestellt. Ein US-Patent wurde 1987 erteilt.[1]

Der Algorithmus basiert auf einem Kreislauf, in dem Geräuschsamples zirkulieren und dabei einen Filter durchlaufen. In diesen Kreislauf wird initial ein zufälliges Geräusch eingespeist, welches in jedem Durchlauf einmal vom Filter modifiziert und ausgegeben wird. Der Algorithmus gehört zu den sogenannten waveguiding-Verfahren.[2]

Funktionsweise

Funktionsschema

Zunächst werden p Samples mit zufälligen Geräuschen in den Kreislauf eingeführt, die einen Speicher (FIFO) füllen, der p Samples halten kann. Danach wird die Eingabe beendet und das erste Sample verlässt den Speicher, wird ausgegeben, durchläuft den Filter und wird in seiner nun modifizierten Version wieder in den Speicher gefüllt. Das Ganze geschieht mit einer Rate von R Samples pro Sekunde, die den Speicher verlassen und den Kreislauf durchlaufen.

Aufgrund eines psychoakustischen Phänomens, dem „Periodicity Pitch“ (periodische Tonhöhe) nimmt man einen Ton der Höhe R/p Hz wahr. Die Klangfarbe wird dabei von den gewählten Eingangsgeräuschen bestimmt. Um die Abklingcharakteristik einer gezupften Saite zu simulieren, wird als Filter ein Tiefpassfilter verwendet. Hochfrequente Komponenten der Geräusche verlieren dadurch schneller an Energie, als die niederfrequenten.

Aus Sicht der technischen Signalverarbeitung liegt hierbei eine Faltung des Signales mit sich selbst vor, bei der ein dedizierter Ausschnitt, nämlich die sich ergebende Dauer zur Periode des wiedergegebenen Signals wird. Infolge der Dämpfung verklingt der zunächst im Rauschmuster enthaltene Oberwellenanteil, ähnlich dem Verhalten einer ausgelenkten Saite. Damit nähert sich das Signal im Verlauf immer mehr einer Sinuswelle an.

Anmerkungen

Als Start-samples eignen sich besonders Geräusche mit dichtem Oberwellespektrum, wie z. B. ein weißes Rauschen. Möchte man geringere Stärken beim Saitenanschlag simulieren, lässt man die Samples vor der ersten Ausgabe einige Durchläufe zirkulieren ohne sie auszugeben. Dies bewirkt einen realistischeren Effekt, als einfach die Lautstärke abzuschwächen, da weniger stark gezupfte Saiten eine geringere Elongation besitzen und einen geringeren Oberwellenanteil in sich tragen.

Die Genauigkeit der Frequenz ist nicht ganzzahlig an die Speichergröße gebunden, sondern kann durch Interpolation fein eingestellt werden.[3]

Man unterscheidet Oszillatoren erster und zweiter Ordnung.[2]

Es existieren einige Abwandlungen, die mit mehr Rückkopplungen arbeiten.[4]

Weblinks

Einzelnachweise

  1. Patent US4649783A: Wavetable-modification instrument and method for generating musical sound. Angemeldet am 24. Mai 1984, veröffentlicht am 17. März 1987, Anmelder: The Board of Trustees of the Leland Stanford Junior University, Erfinder: Alexander R. Strong, Kevin J. Karplus.
  2. a b The Digital Waveguide Oscillator | Physical Audio Signal Processing. Abgerufen am 31. Januar 2023.
  3. Digital Waveguide Oscillator - Octave? Abgerufen am 31. Januar 2023.
  4. Tonerzeugung und Klangformung mit wenig Rechenbedarf. Abgerufen am 31. Januar 2023.

Auf dieser Seite verwendete Medien

Diagramm karplusstrong.png
Autor/Urheber:

Wusabaer

, Lizenz: Bild-frei

Funktionsschema des Karplus-Strong Algorithmus