Markov-basierter Pseudozufallsgenerator von Tonfolgen
Einleitungssermon überspringen
Magst du Musik komponieren? Hoffst du auf eine Software, die dich dabei unterstützt?
Hier wirst du keine finden, zumindest keine, die dich bei der Komposition selbst unterstützt, Begleitschemata findet u.ä. – Software, die einem das Denken abnimmt, ist mir suspekt.
Das ist ein 100% deterministisches Tool zur Endlos-Inspiration für Komponisten, und solche die es werden wollen, garantiert ohne KI-Schmarrn.
Es nimmt einen beliebigen Text von einem Umfang bis max. 1000 Buchstaben des Alphabets und andere Unicode-Zeichen entgegen. Der Text sollte für dich eine große Bedeutung haben, damit du Motivation genug hast, ausgehend von [Pause in Ticks, Tonhöhe, Länge in Ticks]-Tripeln selber weiter zu gehen, also diese in Noten zu gießen und selber auf deinem Instrument in Klang, und durch sparsame Korrekturen daran weiter zu Musik zu verwandeln.
Der Computer »versteht« diesen Text nicht, für die Berechnung der Tonfolge ist nur relevant, wo jedes Unicode-Zeichen im Text erstmalig auftritt und an welchen Positionen es wiederholt wird. Zunächst wird daraus ein Digest berechnet, also eine ziemlich große Zahl, die dann inkrementell mit bestimmten verschiedenen Basen per Divisions-Modulo-Operation reduziert wird. Die Reste werden dann für die weitere Verarbeitung benötigt.
Außerdem kann die voreingestellte Markov-Netz-Spezifikation geändert werden – dazu musst du sie selbst ergründen, dokumentiert ist sie derzeit nicht. Außerdem kannst du ändern, wie stark sich Noten in ihrer Länge unterscheiden, wie wahrscheinlich Pausen zwischen Noten und ggf. wie lang diese sind.
Zukünftige Features, entworfen, aber noch nicht umgesetzt oder getestet:
- In einer opaken Base64-kodierten Zeichenfolge ultrakomprimierte Kette von notenbezogenen Änderungen hinsichtlich Harmonie und Polyphonie, Oktave, Intervallsprung, Länge und Position jeder einzelnen Note.
Außerdem eine – längere, aber lesbarere – Zeichenfolge, die in kodierter Form angibt, wann wo welche Teilfolge von Noten (Motive) wie oft von welchem Instrument gespielt werden soll, nebst Informationen zu Takten, zu Tempi, Dynamik und Agogik.
Die Ausgabe erfolgt dann direkt nach Sompyler-Script. Da es sich dabei um YAML handelt, einem Datenserialisierungsformat mit dem erklärten Ziel, auch für Menschen lesbar zu sein, ist es auch für Anwender zur Weiterverarbeitung durch eigene Workflows geeignet, die Sompyler nicht verwenden möchten. Zum Beispiel Pianisten, denn das Klavier, in Sompyler mitgeliefert, klingt nach wie vor sicher unerkennbar scheußlich in ihren Ohren.
Der serverseitige Code ist Open Source und untersteht der General Public License, Version 3. Du kannst ihn dir auf Neusician's code repository herunterladen, verändern, auf eigenem Gerät installieren. Sogar selbst den Service im Internet anbieten, denn mein Server ist jetzt halt nicht so pralle dimensioniert.