Synthesizer

Prozedurale Spektren

Keine Resynthese! Zufällig gefundener Klang. ;-)

Die Spektralgeneratoren erzeugen die (Amplituden-) Werte für die Teiltöne prozedural, also mit einer Funktion. Die Kosinus-Funktion wird in x-Richtung skaliert und auf die Teiltöne abgebildet. Die Amplitude eines Teiltones ergibt sich aus:

f(n) = |cos(s * n)|

n – Nummer des Teiltones, s – Squeeze

Dieser Parameter "Squeeze" kann manuell, durch Hüllkurve oder LFO gesteuert werden.

Perkussive Sounds

Spektralgeneratoren

Vier Spektralgeneratoren erzeugen das Klangspektrum für den additiven Oszillator

Zwei der vier Spektralgeneratoren (SG) erzeugen die Amplitudenwerte für die 12 Teiltöne des Oszillators. Die anderen beiden SG steuern Attack und Decay von Hüllkurven der Amplituden, die den Oszillator steuern.

Spektralgeneratoren / additive Oszillatoren

Die zentralen Komponenten des 10tet-Synthesizers sind einsatzbereit.

axoloti

Zum Erzeugen der Klänge, die für eine 10tet-Skala geeignet sind, kommt die additive Synthese zum Einsatz. Vorteil: Die notwendigen Frequenzen der Teiltöne (die nicht in der harmonischen Reihe sind, also ganzzahlige Vielfache) können direkt im Oszillator vorgegeben werden. Der Nachteil der Additiven Synthese ist die Große Anzahl von Parametern, die mit noch keinem Konzept zufriedenstellend, einfach und schnell editiert werden können.

Der Spektralgenerator

Dieses Modul erzeugt ein Spektrum, also grundsätzlich Amplitude, Frequenz und Phase für jeden Teilton. In der konkreten Umsetzung werden wegen knapper Ressourcen nur die Amplituden für die ersten 12 Teiltöne erzeugt.

Der additive Oszillator

Der Oszillator besteht aus 12 einzelnen in der Frequenz festgelegten Sinusoszillatoren.

Amplitudensteuerung

Für lebendigere Klangverläufe wird jeder Teilton über eine ADSR-Hüllkurve gesteuert.

Aus Gründen der Performance werden diese drei Module direkt in C-Code umgesetzt. Eine Integer-Arithmetik bringt erhebliche Geschwindigkeitsvorteile gegenüber Berechnungen mit Fließkommazahlen. Bei Multiplikationen sind die Faktoren möglichst so zu skalieren, dass der Genauigkeitsbereich optimal ausgenutzt wird. Zu grobe Quantisierung von Parametern erzeugt hörbare Artefakte.

Zur Zeit liegt bei fünf-stimmiger Polyphonie die Auslastung bei 87% des Axoloti. Es werden noch Module zum Abtasten einer Tastatur, LFOs und MIDI Funktionen dazu kommen. Das Ziel ist, mindestens vierstimmig polyphon zu bleiben.

Spektren für 10tet

Hüllkurvensteuerung der Amplituden von Teiltönen.

Für lebendige Klänge eines Oszillators ist eine Modulation von Parametern notwendig. Die im Axoloti verfügbaren Ressourcen erfordern es möglicherweise, nicht auf der Ebene des grafischen Editors, sondern im C-Code direkt nur die allerwichtigsten Funktionen zu implementieren.

Zusätzlich müssen ansprechende, universelle Parametereinstellungen gefunden oder erzeugt werden.

Additiver Oszillator

Oszillator zum erzeugen von für 10tet geeigneten Spektren.

additiv

Ein Oszillator, der gut in 10tet gespielt werden kann, ist wegen der nicht-harmonischen Frequenzverhältnisse der Teiltöne naheliegend als additiver Oszillator umzusetzen. Hier sethares.engr.wisc.edu/paperspdf/cmj98.pdf (S.69) werden für die ersten 12 Teiltöne Frequenzen vorgeschlagen. Der Klang ist zuerst einmal statisch, eine grundsätzilche Herausforderung für eine expressiv-kreative Bedienung eines Instruments ist, die vielen Parameter zu bändigen, und auf wenige Meta-Parameter/Regler zu reduzieren.

Oszillatormodell FM

Einfacher Oszillator mit Frequenzmodulation.

Um Klänge mit hohem polyphonen Verschmelzungsgrad, also Konsonanz, in 10tet zu erzeugen sind Klänge mit harmonischer Teiltonreihe nicht gut geeignet. Mit Oszillatoren nach dem FM (Frequenzmodulation) Modell ist es möglicherweise leichter Klänge für konsonant klingende Akkorde zu bilden, da sich die Verteilung der Teiltöne über die Frequenzverhältnisse der Operatoren leichter steuern lässt.

fm

FM Synthese mit drei Operatoren.

UPDATE:

Die FM-Synthese ist u.U. doch nicht gut geeignet, die für 10tet notwendige Frequenzverteilung der Teiltöne einfach zu erzeugen. Hier besteht weiterer Recherchebedarf, und genauere Analyse des Verhaltens der Bessel-Funktion.

10 tönig temperierte Stimmung

Alternative fremdartige Stimmungen mit angepasstem Klang.

Inspiriert durch Tuning, Timbre, Spectrum, Scale von William A. Sethares verwandelt der Patch den Axoloti in einen Synthesizer, der in 10tet spielen kann.

Die 10-tönig gleichschwebend temperierte Stimmung (10 tone equal tuning, 10tet) teilt die Oktave in 10 gleich große Tonschritte auf. Vergleichbar mit der 12-tönig gleichschwebend temperierten Stimmung, die in der westlichen Musik verwendet wird.

Konventionelle Musikinstrumente, insbesondere elektronische oder Software-instrumente lassen sich u.U. relative einfach in dieser Stimmung spielen. Der Klang konventioneller Instrumente erzeugt im mehrstimingen 10tet Spiel aber keine überzeugenden Konsonanten. Die Teiltöne gewöhnlicher Klänge (Chordophone, Aerophone, etc.) sind in der harmonischen Reihe (ganzzahlige Vielfache der Grundfrequenz) enthalten. Für Konsonanzen in 10tet sind aber andere Frequenzverhältnisse notwendig. Diese werden im Axoloti-Patch mit einem additiven Oszillator umgesetzt.

patch

Die Grundlage der 10tet Stimmung des Patch ist /Library/factory/demos/midi_fx/alternate_tuning im Axoloti. Als Oszillator werden additive Sinusoszillatoren mit angepassten Frequenzverhältnissen zusammengemischt. Für mehrstimmiges Spiel ist der Oszillator in einem Subpatch angelegt.

FM

Die Manganin Sound Engine mit Cloud-Oszillator, FM und Bandpässen.

spektrum

Scanner

Scanner zur Abtastung der Wahlschalter – Diodenmatrix

Um alle Schalterstellungen mit einer begrenzten Anzahl von Ein- und Ausgangsleitungen umzusetzen, ist es notwendig, die Schalter zu kodieren / multiplexen.

Diodenmatrix

Die zehn bzw. elf Schalterstellungen der großen Drehschalter werden mit einer Diodenmatrix in eine 4 Bit Binärzahl kodiert. Macht vier Eingangsleitungen im Axoloti. Die fünf Schalter werden nacheinander über Ausgangsleitungen des Axoloti angesprochen. Macht weitere fünf Leitungen.

Potentiell werden noch weitere Schalter hinzugefügt, eine Anzahl (~6) Potentiometer ist für die analoge Steuerung der Sounds vorgesehen.

Scanner

Die Erzeugung und Synchronisierung der Multiplex-Sequenz wird im Axoloti mit den vorhandenen Bausteinen umgesetzt. Rechteckoszillator -> Zähler -> Decoder -> Ausgangsleitungen.

Die vier Eingangsleitungen werden in eine Integer-Zahl kodiert, und diese synchronisiert in fünf Latch-Bausteine gespeichert. Die Steuerung der Latches wird vom Zähler/Decoder abgeleitet, aber mit dem invertiertem Clock-Signal zur Vermeidung einer Race-Condition gesteuert ("set" bei aufsteigender Flanke).

Manganin

Umbau eines Präzisionswiderstands in eine Drone-Box

Im Projekt "Manganin" werden das Gehäuse und die Bedienelemente eines Präzisionswiderstands aus den 1940er Jahren mit dem Audio-DSP Axoloti ausgestattet. Das Ergebnis wird eine Drone-Box zur Erzeugung von Klangflächen mit Axoloti-Patches und den vorhandenen Bedienelementen des Kaskadenwiderstands sein.

Manganin

Die vorhandenen fünf 10-fach Wahlschalter sind ein zentrales Steuerungselemnt für die Sounds. Um die begrenzte Anzahl der Ein- / Ausgabeleitungen des Axoloti auszunutzen werden die zehn Schalterpositioinen mit einer Diodenmatrix auf eine 4 Bit Leitung kodiert. Die fünf Schalter (und evtl. zusätzliche Schalter) werden gemultiplext abgefragt.

Manganin

Zusätzlich zu den digitalen Schaltern werden noch mehrere Analog-Drehregler eingebaut. Diese sind nicht im Original Widerstand enthalten, aber für eine nuancierte Einstellung der Sounds sinnvoll.

widerstand

Die internen Widerstandskaskaden werden nicht zur Klangerzeugung oder Steuerung verwendet, bleiben aber soweit vom Platz möglich eingebaut.

Loudness – Präsenz

Filterpatch zur Simulation und Parameteroptimierung für Analogschaltungen

lpr01

Präsenz- und Loudness-filter sollen die Verständlichkeit und ein ausgewogenes Klangbild erreichen. Sie werden auf der Wiedergabeseite eingesetzt.

Loudness

Bei geringen Abhörlautstärken werden vom menschlichen Gehör Frequenzen im Bereich von 1kHz bis 6kHz gut wahrgenommen, höhere und tiefere Klanganteile liegen u.U. unter der Hörschwelle. Der Loudness-filter hebt für ein ausgewogenes Klangbild hohe und tiefe Frequenzen an.

Präsenz

Ausgehend von den Blauertschen Bändern, der Beschreibung des psychoakustischen Effekts des Richtungshörens erreicht der Präsenzfilter eine verbesserte Sprachverständlichkeit.

Waveshaper

Manganin-Sound-Engine mit Waveshaper

Um das Klangverhalten weniger vorhersagbar zu machen, ist nach den Filtern ein Waveshaper geschaltet.

spektrum

Die Modulationen sind bisher manuell gesteuert. Anpassung der Wertebereiche folgt.

Oszillatorschwebung – Bandpassfilter

Die Sound Engine des Manganin-Projektes

Die Sound-Engine für die Manganin-Drone-Box befindet sich noch im pre-Alpha-Stadium.

Bisher existieren acht Oszillatoren, die verschieden stark gegeneinander verstimmt werden können. Danach eine Kombination aus drei parallelen Bandpassfiltern, gefolgt von einem Tiefpassfilter. Jeweils in der Resonanz steuerbar.

Lötrunde

Wir löten eine Zusatzplatine für den Axoloti, die Music Thing AxoControl.

Die Zusatzplatine Music Thing AxoControl ist eine Erweiterung für den Axoloti, ähnlich den "shields" des Arduino oder den "capes" für den Beagle Bone. Auf der Platine sind sechs Potentiometer, ein Joystick, drei Taster und vier Leuchtdioden untergebracht. Mit einer Plexiglas Grundplatte ergibt das ein kleines Gerät mit brauchbaren Eingabereglern. Der Schwierigkeitsgrad die Widerstände, Leuchtdioden und Potentiometer aufzulöten ist überschaubar.

axocontrol

Der Axoloti, ein Microcontroller Board, besonders geeignet für Audio: www.axoloti.com

Die Zusatzplatine AxoControl mit Eingabereglern: www.thonk.co.uk/shop/axoc/

Sechs Sinusse

Einfache Schichtung mehrerer Sinusoszillatoren mit manueller Frequenz- und Amplitudensteuerung.

axoloti

Nach einer kleinen Loetrunde testen wir zwei Axolotis mit den erweiterten Echtzeit-Eingabe-Reglern. (Potentiometer).

Links

Dave Rossum Morpheus Z-Plane Filter

Dave Rossum explains the Morpheus filter module.

filter

The Morpheus Z-Plane Filter as an Eurorack module www.rossum-electro.com/products/morpheus/

Synthesizers

Oktav-Terz-Klang

Einfache Frequenzschichtung mit drei Oszillatoren. Nord Modular G2.

NMG2

Patchblock FM

Frequenzmodulation und Bandpassfilter
Download: 150531e-a.mp3

Zwei Patches erzeugen einen Drone-artigen Klang. Ein Patch mit einer Frequenzmodulation mit drei Operatoren, ein Patch mit durch LFOs frequenzmodulierten Bandpässen.

patchblock

Ein Trägeroszillator mit zwei frequenzmodulierend hintereinander geschalteten Oszillatoren. Den Träger unterstützen noch drei leicht verstimmte Suboszillatoren. Die Modulationsstärke läßt sich mit dem linken Taster in zwei Stufen schalten, der rechte Taster aktiviert eine Rückkopplung des Trägersignals.

Die Drehregler steuern die Frequenz der Modulationsoszillatoren.

patch

Das Audiosignal am Digitaleingang wird durch parallel geschaltete zwei Bandpässe, Hochpass und Tiefpass geleitet. Die Frequenz der Filter wird durch vier leicht verstimmte LFOs gesteuert, die LFO-Frequenz kann durch einen Drehregler verändert werden.

Der zweite Drehregler steuert gleichzeitig die Resonanzeinstellung der Filter, und das Mischungsverhältnis "dry - wet".

patch

Das Spektrogramm zeigt deutlich die für Frequenzmodulation charakteristischen Seitenbänder. Die Frequenz des Trägeroszillators bleibt unverändert.

patch

Der Code für das FM Patch:

 AAMAAAWHeJxtlE9rE1EUxe+bTHLfSyqFtpS0TdrSTdtNnEkmTUJAKOqqSWubgq3JJn8mJZA2sSaiK1EofgUFQXQlRAuudedaVyruBfFb1PtmJokzk5mBBOa8d3/3nPsGABVEGF1XV/IZ/gVe7Ld7rW77Mah6LaUDCHGK0yD0fFrT8nQzgMgE2Ry+4/uAel53RPMAask8a4CaTmkGsGPxmT+HoHyd9K9nFW7gd7k+aa9nZYDQYefkpG2CWk1lMwC72MQKTFsU1m0VUxgUSF4BCGw3qFqumc0SIlHfAKH9R73sViwJgadSoSXSkokUMYncOqOCuUY6DbBAkuswpSUspvyWYamW3Cp2EV7AXxAxjBEYiVZCfoti/C++ly0aTj1kLqIof4lP3MxBN/NAPMXXNrNjE2wQTeH2rQegmindBCjgPO9A0NpgQkxx/MQXAA0rJskwx/yiWeziHwiTvdqIZMbjTZC/wA/ertGX2Q4GMCkzS1pd25klZWY0b8UJgMgvqfZ4jliZuQtP4Ve8lKFoGaeybGORVh6YdbP1kIRmbasK7B7WaM6DQ7Zdxb3PhniGP3yxKX6iEB/gHY8bUQZY6rZbvVUD1K1shsbgSBzwuxAZT6emBtgxKMCoW0ZrmMfBTfEFf/oAVFfgi/gNf7uHNM4gaJWmg1XNEV+RzvM5oOMFFYtJFXgBYVm08b4HUOEEuEZoA4pj3TVsCg9H8a1dO+NkcTEhsHm+h8fu70OUZKV+rXderRNlrW7QXK5Rt2/GnUjZJsluds565502jW9TyxKkwjW8ZsnsaVEDsEuIO4QYIsRZ8rDYekQ9mWaV5CuizqMQtw6Eta19LhK6Yf843Ece69fFIX1svNbTbG33G63O6l6/1+0TeTZTbVBuYp9/HCNpnr1msMuXvXvNuaxkZf6Kx4YRyfcC/gGQdPeV

Der Code für das Bandpass Patch:

 AAMAAAUheJxtVEtvElEYPTMM9xuk0I3QdwuUlLSJ5A4wPDIrNTZtIq1JNa6xUENKgFQwutekC+MfcO/OjTFx6WPjH3CjW7ddNO7spn4zMMNrZiaBxbnnnu+ccy8Q/CSew3uur+3P/YvQbrPVa5wl7j+AZhqmBDLiD31DVFqFgrRk1rSkZUmFkYB21Gw3oFXqpglE9VNKIOygnDfHoFUG7dbqDKqXcidASrzXTYQNyxhS2Uw7QKBa60LLFc0ysEJX9BAxad2yIYaVk9IypHQphYLgUbfV7LHAWsUANkVVfAUNN1UVpFQgMcm5pl8wZ9zjNCrMl6t4pGkFerXf6jW7rZfQjCd55l2gK3GJGwzOGvkhLjJJu8ozPxqTatqspsdKCsiRmihAK5ZL7NK6qNI+wq5HjNMC2IYKYuGChWdUaNXmC17QaNR4QYju6Qo2bOtzjmG+P7xZSpnMY47OKTWdxzJm59zWP9JbhOxECq4d6ozwsPhBe+PCJQtP28LBwrk9Gd7ydr/e7CQO+71un+Mpl2p1QOXI3yHkLRt17A53rFBuHHOmdEjf/TqmTs4UoX+zHVvhme522r2zTusZtBNZZmBAHHDJvU0NNjfGGjcxM9cOy3s6MVdAhcp4/ni6WbsW9VO3Fo73toSo31BEP+mL31DaRIeW6RU9xs1RNbk+ea9CmalU5/VL2ph2YM1H5pJ+wTI51XzWVTnvA0uIA4oMwi8PYesc9iDI/baTY+PYqAAK3xufx3JUVCR9CON0Lv6CnBPu0M2NvNljb4qlCpcirb/xD1zMBBSj1+LD9IlZ4mgWuXgLHGocUxdCMvibku6FIDnHMKO2fLRuBX9RezB80T1F+A9Cs+kM

Kleinzeugs

Elektronikmodule mit magnetisch/elektrischer Verbindung

littlebits

Alles da, was man braucht: Oszillatoren, Filter, Hüllkurve, Sequenzer. Die Little Bits lassen sich supereinfach, superschnell miteinander verbinden.

pb Space Sounds

Weitere einfache Patches mit Sägezahnoszillator und Filter

Grösstenteils Artefakte wie Aliasing im oberen Frequenzbereich und übersteuerte Filter.

pb1

Die Verzerrungen entstehen größtenteils durch hohe Resonanzeinstellung im Filter. Keine weiteren LoFi Module sind in der Audiokette.

pb2

Patchblock, los geht's

Ein erstes Patch für ein Patchblock als Oszillator

So sehen sie also aus und hören sich an, die Patchblocks. Und sie machen genau das, was man erwartet - auf mehreren Ebenen. Zum einen ist die Programmierung angelehnt an PureData , also Node-basiert und mit grafischem Editor. Zum anderen kann man nur überschaubare Rechenleistung erwarten, das Aliasing gehört zum Sound dazu.

patchblock

Editor für das Programm, das der Patchblock abarbeitet. Diese "Firmware" wird über USB von oder auf den Patchblock geladen.

editor

Die Klangerzeugung besteht im Wesentlichen aus zwei Komponenten:

  • Vier Oszillatoren mit Rechteckwellenformen unterschiedlicher Pulsweite. Über einen Drehregler lassen sie sich unterschiedlich stark verstimmen.
  • Ein LFO mit Sinuswellenform, der das Signal der Rechteckoszillatoren amplitudenmoduliert. Bei einer Frequenz im Audiobereich entstehen die zu erwartenden Differenz- und Summenspektren. Der zweite Regler steuert die Frequenz des LFO.

Der Code für dieses Patch:

 AAMAAANFeJx1kj9Lw1AUxU/a57tJq4htFWkRq+6StI2JZBI3QRR10klJhECwxSagn8DVP4vgJIi7X0JcnNzcHP0EjvW2NjWpNQkkw++ed865AaQnHzG4Op3uE38iu+a6EKvHtg0UyaQ9aI2G7vRuBVgExK5/4jHimiZQoQv6QH6A9KBZBepmFIR+KziHMI7qBlCmT7plLV13jD5WwV9MpQcah2o4tVisMEJslirqHMgYSEmeXG+ehKfNoA1xrNtsjcjinFpszMgoyHPIsgKx6Z81IDzvkLEx+cQJ5hlZrpnOf69uKpbcbQV+WOXZFdvi2TzdyzfkB9kdPZtBDgo0PkhNl1mQr8NlLqSJEt3RQZpYGlHRtHyRz9CMRJMzf63NyHeaSFkTWZSQQZHtFdjeFEffjoI2r/KoVrfYDRu8wWTv+GUjsc6xzBC5SA26islakhRD5BJd02VM1pOkxPha5PrN6lYUtqIQwrYOXV4kb3b/d2n6iPwafXEyXr7V1yqO+ENy6sYPVO9DJSXV9ZT0aCfddXW4kCoz17F5M2ke35kik3c=

Musikmesse 2014: Verbos Modularsynthesizer

verbos

Musikmesse 2014: Buchla Modularsynthesizer

Download: sk006_140315.mp3

buchla

Musikmesse 2014: Modularsynthesizer

Andreas Schneider und Dieter Doepfer im Gespräch

doepfer

Dieter Doepfer mit dem Modularsystem A-100 im Eurorack Format.