2. #HARMON-DATABASE#
Für die Sammlung der Akkordlisten empfiehlt es sich die eigens dafür entworfene Funktion HAMON-DATABASE zu verwenden.
Anstatt Akkorde mit absoluten Werten für die Tonhöhen, werden Pitch-Sets verwendet, in denen immer die einzelnen Abstände der Akkordtöne zu einem virtuellen Grundton in midicents (100 midicents = 1 MIDI = 1 Halbton) angegeben werden. So sind auch mikrotonale Akkorde möglich.
Danach werden die Umfänge der Instrumente (momentan maximal 4 Instrumente) in absoluten midicents angegeben. Dafür können zur Visualisierung auch CHORD-Objects eingesetzt werden.
![](https://edu.marlonschumacher.de/wp-content/uploads/2021/10/Chord-objects.jpg)
Fig. 6
Input-Syntax: Für jedes Instrument (min max) oder (max min) aneinander gelistet.
(HARMON-DATABASE erkennt den niedrigeren Wert unabhängig von seiner Position als Minimum an)
Der tiefste Ton des tiefsten Instruments sowie der höchste Ton des höchsten Instruments bilden ein Rahmenintervall; den Gesamtumfang.
![](https://edu.marlonschumacher.de/wp-content/uploads/2021/10/total-range.png)
Nun werden alle Pitch-Sets, die mit ihren Akkordtöne über die Anzahl der angegebenen Instrumente hinausgehen werden auf die passende Anzahl reduziert. Die Pitch-Sets welche weniger Akkordtöne haben mit „nil“ auf die passende Anzahl ergänzt.
Während ersteres, Bugs vermeiden soll, ist letzteres praktisch um einzelne Instrumenten Pausen zu geben.
![](https://edu.marlonschumacher.de/wp-content/uploads/2021/10/pitch-classes-1024x303.jpg)
Die Input-Syntax für die Pitch-Set-List: ((0 200 300 400) (0 100 500 700) etc…)
Da die Werte der Pitch-Sets den Instrumenten über die Position in der Liste zugeordnet werden, wird die Database um alle Permutationen jedes Pitch-Sets erweitert.
![](https://edu.marlonschumacher.de/wp-content/uploads/2021/10/pitch-set-lists.jpg)
Dann wird eine chromatische Skala, vom tiefsten bis zum höchsten Ton des Gesamtumfangs erstellt. Diese Skala ist die Sammlung aller virtuellen Grundtöne auf die, die Pitch-Sets transponiert werden.
![](https://edu.marlonschumacher.de/wp-content/uploads/2021/10/harmon-material-1024x173.jpg)
Nun sind voerst alle möglichen Akkorde entstanden. Zuletzt besteht noch die Möglichkeit, eine Register-Liste zu erstellen, in der von 0 an, was keine Oktavierung bedeutet, in midicents alle Oktavlagen angegeben werden, mit denen permutativ alle möglichen Oktavierungen eines jeden Akkords berechnet werden. Der default-Wert ist (0 1200 2400 4800).
Nun werden in diesem Prozess oftmals Akkorde entstehen, die für einzelne Instrumente außerhalb ihres Stimmumfangs liegen. Daher gibt es zuletzt noch einen Range-Check, der alle Akkorde herausfiltert, die aus diesem Grund unbrauchbar sind.
Alle Akkorde die mehrfach in der Liste auftauchen werden ebenfalls herausgefiltert, da sie den Zufall manipulieren.
![](https://edu.marlonschumacher.de/wp-content/uploads/2021/10/pitchesoctaves-1024x543.jpg)
Die Instrumente ab dem zweiten Instrument (Instr 1) und die Register-Liste werden alle mit &key-inlets angegeben.
![](https://edu.marlonschumacher.de/wp-content/uploads/2021/10/Harmon-Database_Skizze-1.jpg)
Über den Autor