Skip to main content

Lektion 5 - Additive Synthese

Completion requirements
Ihr bekommt eine Einführung in die klassischen Synthese-Algorithmen: Additive Synthese und wie ihr mehrere Parameter auf einmal kontrollieren könnt.

Lektion 5:

edu sharing object


Video-Transkript

00:08 - Lektion 05. Additive Synthese. In diesem Tutorial werden wir die Prinzipien und Techniken hinter der additiven Synthese behandeln, eine der grundlegendsten Synthesetechniken. Das Wort "synthesis" bedeutet, dass wir Klänge von Grund auf an erzeugen werden, sogar komplexe Klänge, dank der Implementierung verschiedener Algorithmen. Das Wort "Algorithmus" ist ein technischer Begriff, der mit einer Reihe von Anweisungen übersetzt werden kann. Die additive Synthese ist eine Klangsynthesetechnik, die Timbre erzeugt, indem sie sinusförmige Wellen zusammenfügt. Es ist konzeptionell unkompliziert und sehr einfach zu implementieren. 00:57 - Dies wird es uns ermöglichen, einige neue Objekte zu benutzen sowie Objekte, die wir bereits zu verwenden wissen, auf eine neue Art und Weise zu benutzen. Theoretisch kann jeder komplexe Klang durch die Summe einer nahezu unendlichen Anzahl sinusförmiger Wellen nachgebildet werden. Wir werden sehen, dass dies nur teilweise zutrifft, hauptsächlich auf Grund von Einschränkungen der Rechenleistung und Annäherungen. Lassen Sie uns jetzt sehen, wie diese Technik von einem brandneuen Patch aus implementiert werden kann. Der Kern des Patches ist der Oszillator von sinusförmigen Wellen, den wir bereits kennen "osc (tilde)", also erstellen wir einen. Dann erstellen wir, sagen wir, vier Kopien des Oszillators. 01:53 - Diese Oszillatoren werden unser neues Timbre in der additiven Synthese zusammenstellen. Nun erstellen wir einen "dac (tilde)", um auf die Soundkarte herauszugehen. 02:07 - Wir erstellen auch eine allgemeine Lautstärke, wie wir es bereits vorher schon getan haben. 02:20 - Wir fügen auch einen "slider" hinzu, wir legen den Bereich auf von 0 bis 1 in seinen „properties“ fest, eine "line (tilde)"und eine „message“ für die "line", um eine Rampe von 100 Millisekunden zu erstellen. 03:21 - Wir hören noch nichts, weil unsere Oszillatoren erst abgestimmt werden müssen. Dazu nehme ich eine "numberbox" und schließe sie mit dem ersten Oszillator zusammen. Normalerweise werden die Oszillatoren in der additiven Synthese auf verschiedene Frequenzen abgestimmt. Diese Frequenzen beziehen sich in der Regel auf die erste Frequenz, die den Namen der Grundfrequenz hat. Wir können dies auch neben der "numberbox" mit einem sogenannten "comment " machen. Um so einen „comment“ zu erstellen, drücken Sie ctrl_5/cmd_5 oder Sie wählen aus dem Menü "insert" und "comment". 04:09 - Welche Art von Beziehung haben die anderen Frequenzen mit der Grundfrequenz? Wenn wir die Grundfrequenz mit ganzzahligen Zahlen multiplizieren, bekommen wir ein Timbre, das "harmonic" genannt wird, wenn ich stattdessen Gleitkommazahlen verwende, wird das Timbre "inharmonic" genannt. Lassen Sie uns versuchen, eine harmonische Beziehung zu implementieren, indem wir die anderen Oszillatoren mit 2, 3, 4 und 5 multiplizieren. 05:15 - Auf diese Weise können wir dann die "numberbox" mit den Multiplikatoren verbinden, um die gesamten Frequenzen auf einmal einzustellen. 05:30 - Wir sind jetzt bereit, aber eines fehlt noch. Wir müssen bedenken, dass jeder meiner Oszillatoren mit einem Signal ausgeht, das eine Lautstärke von 1 hat. Das bedeutet, die 5 Oszillatoren werden zusammen summiert und wir werden am Ende eine Verzerrung haben. Daher muss ich die Lautstärke dieser Oszillatoren reduzieren, um die Verzerrung zu verhindern. Um dies zu tun, müssen wir, wie wir bereits wissen, das Signal mit einer Zahl kleiner als 1 multiplizieren. 06:19 - Lassen Sie uns 5 Multiplikatoren erstellen und wir verbinden sie mit der allgemeinen Lautstärke, wie wir das bereits getan haben und mit jedem Oszillator. 07:14 - Oft hat jede sinusförmige Welle, die wir in der additiven Synthese erzeugen, eine abnehmende Amplitude, die mit der Grundfrequenz beginnt. Wir werden das nicht übernehmen, weil wir uns nicht mit festen Werten beschäftigen wollen, aber um mehr Flexibilität zu gewinnen, möchten wir jede Lautstärke dynamisch und unabhängig festlegen. Um dies zu tun, genügt es, den „slider“ und die „line“ und ihre „message“ dazwischen für jeden Oszillator zu kopieren und einzufügen, ctrl_C/cmd_C ctrl_V/cmd_V und zwar so, und dann mit ihren Multiplikatoren zu verbinden. 08:37 - Wir sind endlich bereit, das Ergebnis des von uns implementierten additiven Synthesealgorithmus‘ zu hören. Lassen Sie uns zuerst eine Grundfrequenz in Hertz-Werten eingeben, lassen Sie uns sanft jede Lautstärke ein kleines bisschen erhöhen und auch die allgemeine Lautstärke erhöhen, und zwar so. Wir können jetzt die Lautstärken des Oszillators anpassen, um die unterschiedlichen Timbres zu hören, und wir können auch eine andere Grundfrequenz einstellen, wenn wir möchten. 09:22 - Eine nette Übung, die Sie jetzt zum Beispiel versuchen können, ist, die Lautstärke der verschiedenen Oszillatoren anzupassen, um näher an die Klangfarbe eines echten Instruments zu kommen, das Sie bereits kennen. Zum Beispiel können wir eine komplexe Wellenform erstellen, die dem Timbre der Klarinette ähnelt, indem wir die Lautstärke nur der ungeraden Oszillatoren erhöhen. 09:49 - Es gibt noch ein paar Dinge, die wir tun können, um unseren Patch zu verfeinern und ein noch interessanteres Ergebnis zu erhalten. Nun wird das Verhältnis der Tonhöhe zwischen den verschiedenen Oszillatoren fixiert und durch die Argumente der Multiplikatoren definiert. Wir können den kalten Eingang jedes Multiplikators mit einer "numberbox" verbinden. 10:59 - Jetzt sind wir in der Lage, verschiedene Beziehungen zu definieren, sogar die, die wir vorher "inharmonisch" genannt hatten. Dies ist möglich, weil wir uns aus dem ersten Tutorial daran erinnern, dass jeder Wert, der durch einen kalten Eingang gesendet wird, das Argument des Multiplikators überschreibt. Lassen Sie uns versuchen, ein wenig auszuprobieren, um das Ergebnis zu hören. 10:58 - Solange wir den Ganzzahlwert verwenden, befinden wir uns immer noch in dem "harmonic"-Bereich, lassen Sie uns es jetzt mit Gleitkommazahlen versuchen. Um eine Gleitkommazahl in der "numberbox" mit der Maus zu setzen, anstelle sie einzutippen, müssen Sie die "Shift"-Taste drücken und nach oben oder unten scrollen. 12:24 - Lassen Sie uns jetzt damit ein wenig herumspielen. Und nicht zuletzt, unterschätzen Sie nie den Nutzen eines grafischen Feedbacks, um die erklärten Konzepte besser zu verstehen. Lassen Sie uns den Patch öffnen, den wir im vorigen Tutorial erstellt haben. Und hier wählen wir das "tabwrite"-Objekt, den "bang" und den "canvas" aus, um das Ergebnis anzuzeigen. 12:51 - Lassen Sie es uns kopieren und in den Patch, an dem wir gerade arbeiten, einfügen, und verbinden Sie den Ausgang der allgemeinen Lautstärke mit dem Eingang vom "tabwrite". 13:12 - Ich hätte auch den Visualisierungsteil von Grund auf neu erstellen können, ohne den vorherigen Patch zu öffnen. Da Pure Data eine modulare Umgebung ist, ist es oft einfacher und schneller, Teile bereits implementierter Algorithmen zu kopieren und einzufügen. Dies gilt auch dann, wenn Sie, sagen wir mal, die Lautstärkeeinstellungen jedes Oszillators wie im vorherigen Patch automatisieren möchten. Probieren Sie es einfach aus! Lassen Sie uns ein wenig herumspielen und das Ergebnis visualisieren. 14:28 - Wenn Sie sich an die vorherigen Patches erinnern, haben wir uns immer mit sinusförmigen Wellen und damit mit sinusförmigen Visualisierungen beschäftigt. Sie können jetzt sehen, wie die Form der Wellen, die wir zusammengefasst haben, eine interessantere grafische Darstellung erzeugt. So kann eine komplexere Form aussehen. Im nächsten Tutorial werden wir eine neue Art der Synthese implementieren.



Beispiel Patch:

 

edu sharing object
 

Last modified: Tuesday, 12 September 2023, 7:28 PM