Generator Multiplyers
ls
- Create Generator List
If you want to modifiy multiple generators, you can collect them in a list.
Example
(sx 'ba #t
(pear (rev 0.1)
(ls ;; thanks to ls, you can apply the reverb to everything at once
(cyc 'drum "bd ~ sn ~")
(cyc 'bass "saw:'a1 ~ ~ ~"))))
spread
- Takes a List of Complete Generators and Distributes Them
Works similar to xspread
, but you need to provide the complete generators, no shorthands:
(sx 'ba #t
(pear (rev 0.1)
(spread ;; will pan the generators to hard left/hard right.
(cyc 'drum "bd ~ sn ~")
(cyc 'bass "saw:'a1 ~ ~ ~"))))
xdup
- Multiply Generators with Modifiers
If you want to juxtapose (obvious reference here) a generator with a modified copy of itself, without re-writing the whole generator.
Example
(sx 'more #t
(xdup
(cmp ;; this is the copy with modifiers ...
(pear (freq-mul 2.0) (rev 0.1))
(every :n 20 (haste 2 0.5)))
;; this is the "original"
(cyc 'one "tri:'f3 tri:'a3 tri:'c4 tri:'e4 ~ ~ tri:'f3 tri:'a3 tri:'c4 tri:'e4 ~")))
xspread
- Multiply Generators with Modifiers and spread over Channels.
If you want to juxtapose (obvious reference here) a generator with a modified copy of itself,
without re-writing the whole generator. As opposed to xdup
, this one spreads the copies over
the available loudspeakers/channels, or spatial spectrum (once binaural stereo or ambisonics are available).
Example
(sx 'more #t
(xspread
(cmp ;; this is the copy with modifiers ...
(pear (freq-mul 2.0) (rev 0.1))
(every :n 20 (haste 2 0.5)))
(cmp ;; this is another copy with modifiers ...
(pear (freq-mul 4.02) (rev 0.1))
(every :n 20 (haste 3 0.5)))
;; this is the "original"
(cyc 'one "tri:'f3 tri:'a3 tri:'c4 tri:'e4 ~ ~ tri:'f3 tri:'a3 tri:'c4 tri:'e4 ~")))