Created
February 2, 2017 21:42
-
-
Save lvm/461b709399821d93c2a2a5926acb12c3 to your computer and use it in GitHub Desktop.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
cps 0.45 | |
import qualified Sound.Tidal.Scales as Scales | |
do | |
let runnow d p = do now <- getNow | |
d $ (nextSam now) ~> p | |
oneshot d p = runnow d $ seqP [(0, 1, p)] | |
sctf = (# cutoff (scale 150 150 (slow 8 sine1))) | |
hctf = (# hcutoff "100") | |
octave = mf "octave" | |
index = mf "index" | |
mute = const $ silence | |
left t = (t <~) | |
right t = (t ~>) | |
runnow d4 $ | |
sometimesBy 0.25 (# cutoff (scale 1000 3000 $ slow 8 sine1)) $ | |
stut 2 0.75 0.75 $ | |
n "[0(4,16,2)]" | |
# n ( | |
iter 16 $ | |
every 4 palindrome $ | |
toScale Scales.hexAeolian "[c d f d] [c d c d] [c d c d] [c d f d]" | |
) | |
# s "[bassy,saw]" | |
# sus "2" | |
# rq (scale 0.5 2 (slow 8 $ sine1)) | |
# lpcutoff "1500" | |
# ctf "200" | |
# octave (fmap(+2) "[2 0 1 0]!!!") | |
# gain "0.85" | |
# ctf (scale 100 1500 saw1) | |
# cutoff (scale 150 1500 (slow 4 $ saw1)) | |
# room "0.25" | |
# orbit "1" | |
runnow d3 $ | |
superimpose ( | |
e 1 8 . | |
(# s "fm") . | |
(# attack "1") . | |
(# sustain "4") . | |
(|-| n "12") . | |
(# gain "1.2") . | |
slowspread left [0.25, 0.25, 0.75, 0.5] | |
) $ | |
sometimes ( | |
superimpose ( | |
(slowspread right [0.75, 0.5, 0.25, 0.25]) . | |
sometimesBy 0.25 (|-| n "-12") | |
) | |
) $ | |
stut 2 0.75 0.75 $ | |
n (sometimesBy 0.25 (fmap(+12)) $ | |
sometimes (fmap(subtract 12)) $ | |
toScale Scales.hexAeolian | |
"{[c e]/2 d [d d4] [e f4] g4}%4" | |
) | |
# sustain "2" | |
# release "4" | |
# s "fm" | |
# cutoff (slow 16 $ scale 500 15000 sine1) | |
runnow d2 $ | |
off 0.25 id $ | |
stut 2 0.75 0.75 $ | |
slow 2 $ | |
slowspread left [0.25, 0.75, 0, 0.25, 0, 0, 0, 0] $ | |
slowcat[ | |
n (toScale Scales.hexAeolian | |
"{[c e]/2 d [d d4] [e f4] g4}%4"), | |
n (toScale Scales.hexAeolian | |
"{[c e]/2 d [d d4] [e f4] g4}%4"), | |
n (toScale Scales.hexAeolian | |
"{[c e]/2 d [d d4] [e f4] g4}%4"), | |
(# sus "8") $ | |
n (toScale Scales.hexAeolian | |
"{[c e]/2 d [f f4] [e a] 7}%4") | |
] | |
# s "[saw]" | |
# sustain "4" | |
# release "4" | |
# detune (sometimes (fmap(+1)) "1.25") | |
# pan (scale 0.25 0.75 (slow 4 $ sine1)) | |
# cutoff (scale 150 1500 (slow 4 $ saw1)) | |
# gain "0.8" | |
# room "0.5" | |
# orbit "2" | |
runnow d1 $ | |
stack[ | |
slow 2 $ | |
sometimes (|*| speed "-1") $ | |
sound "vocad(3,8)" | |
# room "0.5" | |
# orbit "3" | |
# speed (iter 4 "0.5 0.5 0.75 0.5") | |
# cutoff (scale 120 15000 (slow 8 sine1)) | |
, | |
hctf $ | |
foldEvery [10..19] (# cutoff (scale 150 1500 (slow 8 $ sine1))) $ | |
every 3 (superimpose ( | |
(const $ sound "[kick(2,16,2)]") . | |
(# gain "1.2") | |
) | |
) $ | |
every 4 (superimpose ( | |
(const $ sound "[kick(1,16,15)]") . | |
(# gain "1.5") | |
) | |
) $ | |
sound "[kick(4,16)]" | |
# n "[d c d d]/4" | |
# gain "1.1" | |
, | |
every 4 (within (0.5,1)(stut 2 1 0.75)) $ | |
sound "snare(2,16,8)" | |
, | |
every 5 (stut 2 0.75 0.125) $ | |
every 8 ((# room "0.25") . (# orbit "3") . hctf) $ | |
sound "cp(1,16,14)" | |
, | |
every 7 (within (0,0.25)(chop 2)) $ | |
sound "hihat(8,16)" | |
# release (scale 0.05 0.15 (slow 16 sine1)) | |
, | |
sound "hihat(4,16,2)" | |
# release (scale 0.5 1 (slow 32 sine1)) | |
] | |
# cutoff (scale 100 150 (slow 8 sine1)) | |
# cutoff (scale 150 1500 (slow 8 sine1)) | |
# cutoff (scale 1500 15000 (slow 8 sine1)) | |
# cutoff (scale 4500 15000 (slow 8 sine1)) | |
# cutoff (scale 75000 15000 (slow 8 sine1)) | |
# cutoff (scale 10000 15000 (slow 8 sine1)) | |
do | |
let runnow d p = do now <- getNow | |
d $ (nextSam now) ~> p | |
oneshot d p = runnow d $ seqP [(0, 1, p)] | |
hctf = (# hcutoff "100") | |
oneshot d1 $ | |
hctf $ | |
stack[ | |
s "[kick(4,16)]" | |
# n "[d c d d]/4", | |
s "[hihat(4,16,2)]" | |
] | |
# release "1" | |
runnow d4 $ | |
fadeOut 4 $ | |
sometimes (# cutoff (scale 1000 3000 $ slow 8 sine1)) $ | |
stut 2 0.75 0.75 $ | |
n "[0(4,16,2)]" | |
# n ( | |
iter 16 $ | |
every 4 palindrome $ | |
toScale Scales.hexAeolian "[c d f d] [c d c d] [c d c d] [c d f d]" | |
) | |
# s "[bassy,saw]" | |
# sus "2" | |
# rq (scale 0.5 2 (slow 8 $ sine1)) | |
# lpcutoff "1500" | |
# ctf "200" | |
# octave (fmap(+2) "[2 0 1 0]!!!") | |
# gain "0.85" | |
# ctf (scale 100 1500 saw1) | |
# cutoff (scale 150 1500 (slow 4 $ saw1)) | |
# room "0.25" | |
# orbit "1" | |
hush |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment