Dieser musikalische Generator entstand im Rahmen des Faches 'Models of Computation'.
Eigentliches Projektziel war es, ein eigenes Rechensystem zu erstellen.
Das resultierte System dient nicht nur zum schreiben von mathematischen Programmen, sondern besitzt eine geeignete Struktur zur Erzeugung von Melodien und Musikstücken.
So können Tonumgebungen, darin befindliche 'Spieler', übergänge und ein musikalisches Gedächtnis minimalistisch konstruiert werden.
Die Umsetzung erfolgte mit der SuperCollider Sprache
Beispiel:
Der aufgeführte Code erzeugt ein Stück von 3 Minuten Länge. Es verfügt über 2 tonale Umgebungen mit je zwei Stimmen.
In der 'Sounds' Sektion kannst du es anhören, es heisst 'MOCa'.
The melody generator was created during the course 'Models of Computation' at the university zurich.
The official project goal was the creation of a computational model.
My take on it wasn't just a program to calculate mathematical problems, but also a program/model optimized for music creation in a minimalistic way.
With the program you can define musical 'environments', players , transitions and a musical memory which allows continuous modulation.
SuperCollider was my choice of language
Example:
The Code below creates a musical piece of 3 minutes with two environments and two players each.
You can listen to it in the 'Sounds' section, it's called 'MOCa'.
t = MySystem(
argInitValues: [2,1,1,1,1],
argInitEnv: \env1,
argEnvs: Dictionary[
\env1 -> [
[ [2,2,1],[-2,-2,-2,-1] ],
[0,1,2,3,4,5,6,7,8,9,10,11],
[ [[0,9,0,9], \env2], [[2,"_","_"], \env1]]
],
\env2 -> [
[ [0],[-2,-2,-2,-1, 1,2,2,2,2] ],
[0,1,2,3,4,5,6,7,8,9,10,11],
[ [[1,0,9], \env1] ]
]
])
)
t.generate(1000)
t.play1()