[CM] Multipart in a "process"
Heinrich Taube
taube at uiuc.edu
Sat May 10 05:36:34 PDT 2008
> Hi
> I try to generate multipart music (with different rhythmic values)
> within the same 'process', because all parts have to get their
> values serially from the same set.
hello there are a number of ways to express this. here is one that
uses a process:
(defun cellular ()
(process repeat 10
for key1 = 40
for key2 = 60
for dur1 = .2
for dur2 = .4
for amp1 = .7
for amp2 = .3
for beg1 = (random 1.0)
for beg2 = (random 1.0)
sprout (new midi :time (+ (now) beg1) :duration dur2
:keynum key1 :amplitude amp1)
sprout (new midi :time (+ (now) beg2) :duration dur2
:keynum key2 :amplitude amp1)
wait (max beg1 beg2)
))
(events (cellular ) "foo.mid")
another way would be to write a LOOP that simply collects events and
then sprout that list:
(defun cellular()
(loop ...
collect (new midi :time beg1 ...)
collect (new midi :time beg2 ...)
))
(events (cellular ) "foo.mid")
best ,rick
More information about the Cmdist
mailing list