123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520 |
- let bpm b = cps (b/60)
- let withmod a b c d = (whenmod a b . within (c, d))
- let every' n o f = when ((== (o-1)) . (`mod` n)) f
- let modtempo s e = (# nudge (scale 0 s $ fmap (**e) saw1))
- let mt s d i = slow s . modtempo 0.3 3 $ density d $ i
- -- original bpm = 105
- bpm 105
- -- drum
- d1 $ slow 8 $ n "[1*2, 0*8]" # s "drum"
- d1 $ slow 8 $ n "[1*2, 0 0 0 [0 ~! 0] ! 0 [0 0/4] 0]" # s "drum"
- d1 $ mt 16 2 $ n "[1*2, 0 0 0 [0 ~! 0] ! 0 [0 0/4] 0]" # s "drum"
- d2 $ n "[[~ 0] [[2!! ~]/4 0]]/2" # s "kit"
- d2 $
- withmod 11 5 0.5 1 (density 2) $
- n "[[~ 0] [[2!! ~]/4 0]]/2" # s "kit"
- d2 $
- whenmod 3 2 (density 2) $
- withmod 11 5 0.5 1 (density 2) $
- n "[[~ 0] [[2!! ~]/4 0]]/2" # s "kit"
- d2 $
- every' 16 8 (const $ s "kit:3") $
- whenmod 3 2 (density 2) $
- withmod 11 5 0.5 1 (density 2) $
- n "[[~ 0] [[2!! ~]/4 0]]/2" # s "kit"
- -- icarus
- d3 $ slow 16 . striate 256 $ s "icarus"
- d3 $ superimpose (8 ~>) $
- slow 16 . striate 256 $ s "icarus"
- d3 $
- every' 2 2 (within (0, 0.75) (iter 16)) $
- slow 16 . striate 256 $ s "icarus"
- d3 $
- superimpose (8 ~>) $
- every' 2 2 (within (0, 0.75) (iter 16)) $
- slow 16 . striate 256 $ s "icarus"
- {-
- d3 $
- slow 8 $ smash 64 [0.5,0.75] $
- s "icarus"
- -}
- -- nimble
- d4 $ slow 16 $ striate 16 $ n "[0 1]/2" # s "nimble"
- d4 $ superimpose (iter 4) $
- slow 16 $ striate 256 $ n "[0 1]/2" # s "nimble"
- d4 $
- superimpose (
- iter 4 .
- (# speed ((+0.8).(/1.5) <$> slow 2.5 sine1))
- ) $
- slow 16 $ striate 256 $ n "[0 1]/2" # s "nimble"
- d4 $
- superimpose (
- iter 4 .
- (# speed ((+0.8).(/1.5) <$> slow 2.5 sine1)) .
- (# nudge "0")
- ) $
- mt 16 1 $ striate 256 $ n "[0 1]/2" # s "nimble"
- d3 silence
- d4 $ mt 16 1 $ striate 256 $ n "[0 1]/2" # s "nimble"
- d4 $ whenmod 5 3 rev $
- mt 16 1 $ striate 256 $ n "[0 1]/2" # s "nimble"
- d4 $
- every' 2 2 (within (0, 0.5) (const silence)) $
- superimpose (
- iter 4 .
- (# speed ((+0.8).(/1.5) <$> slow 2.5 sine1)) .
- (# nudge "0")
- ) $
- whenmod 5 3 rev $
- mt 16 1 $ striate 256 $ n "[0 1]/2" # s "nimble"
- d4 $
- every' 2 2 (within (0.25, 0.5) (const silence)) $
- superimpose (
- iter 4 .
- (# speed ((+0.8).(/1.5) <$> slow 2.5 sine1)) .
- (# nudge "0")
- ) $
- whenmod 5 3 rev $
- mt 16 1 $ striate 256 $ n "[0 1]/2" # s "nimble"
- -- something of a structure starting to come together here
- d1 $ slow 8 $ n "[1*2, 0 0 0 [0 ~! 0] ! 0 [0 0/4] 0]" # s "drum"
- d1 $
- (whenmod 5 3 . every' 7 5) (0.5 ~>) $
- slow 8 $ n "[1*2, 0 0 0 [0 ~! 0] ! 0 [0 0/4] 0]" # s "drum"
- d1 $
- (whenmod 5 3 . every' 7 5) (0.5 ~>) $
- mt 16 2 $ n "[1*2, 0 0 0 [0 ~! 0] ! 0 [0 0/4] 0]" # s "drum"
- d3 $
- every' 2 2 (within (0, 0.75) (iter 16)) $
- slow 16 . striate 256 $ s "icarus"
- d4 $
- every' 2 2 (within (0.25, 0.5) (const silence)) $
- whenmod 5 3 rev $
- mt 16 1 $ striate 256 $ n "[0 1]/2" # s "nimble"
- -- hahaha, holy fuck
- d4 $ whenmod 4 2 (const silence) $
- slow 16 $ striate 16 $ n "[0 1]/2" # s "nimble"
- d4 $ whenmod 4 2 (const silence) $
- slow 16 $ striate 16 $ n "[0 1]/2" # s "nimble"
- # vowel "e a"
- d4 $ whenmod 4 2 (const silence) $
- density 2 $ (# cut "4") $
- slow 16 $ striate 16 $ n "[0 1]/2" # s "nimble"
- # vowel "e a"
- d4 $
- superimpose ((4 ~>) . iter 4) $
- whenmod 4 2 (const silence) $
- density 2 $ (# cut "4") $
- slow 16 $ striate 16 $ n "[0 1]/2" # s "nimble"
- # vowel "e a"
- d4 $
- superimpose (density 2 . (4 ~>) . iter 4) $
- whenmod 4 2 (const silence) $
- density 2 $ (# cut "4") $
- slow 16 $ striate 16 $ n "[0 1]/2" # s "nimble"
- # vowel "e a"
- d5 $ slow 16 $ striate 16 $ n "[0 1]/2" # s "nimble"
- d1 $ stack [
- n "[1, 0*2 [~ 0] ! ~]/4" # s "drum",
- n "[~ 0]/2" # s "sn"
- ]
- d1 $ stack [
- n "[1, 0*2 [~ 0] ! ~]/4" # s "drum",
- 4 ~> n "[~ 0 [~ 0/2 ~!] 0]/4" # s "sn"
- ]
- -- heh
- --bpm 80
- d4 $
- (2 ~>) $
- superimpose (density 2 . (4 ~>) . iter 4) $
- whenmod 4 2 (const silence) $
- density 2 $ (# cut "4") $
- slow 16 $ striate 16 $ n "[0 1]/2" # s "nimble"
- # vowel "e a"
- d5 $
- superimpose (
- iter 4 .
- (# speed ((+0.8).(/1.5) <$> slow 2.5 sine1)) .
- (# nudge "0")
- ) $
- whenmod 5 3 rev $
- slow 16 $ striate 256 $ n "[0 1]/2" # s "nimble"
- d4 $
- (2 ~>) $
- superimpose (density 2 . (4 ~>) . iter 4) $
- whenmod 4 2 (const silence) $
- density 2 $ (# cut "4") $
- mt 16 1 $ striate 16 $ n "[0 1]/2" # s "nimble"
- # vowel "e a"
- d5 $
- superimpose (
- iter 4 .
- (# speed ((+0.8).(/1.5) <$> slow 2.5 sine1)) .
- (# nudge "0")
- ) $
- whenmod 5 3 rev $
- mt 16 1 $ striate 256 $ n "[0 1]/2" # s "nimble"
- d1 $ mt 16 16 $ stack [
- n "[1, 0*2 [~ 0] ! ~]/4" # s "drum",
- 4 ~> n "[~ 0 [~ 0/2 ~!] 0]/4" # s "sn"
- ]
- -- some other ideas
- d1 $ stack [
- n "[1, 0*2 [~ 0] ! ~]/4" # s "drum",
- 4 ~> n "[~ 0 [~ 0/2 ~!] 0]/4" # s "sn"
- ]
- d1 $ stack [
- n "[1, 0*2 [~ 0] ! ~]/4" # s "drum",
- whenmod 5 3 (
- superimpose (
- within (0, 0.5) (
- (# gain "0.7") .
- (# n (irand 3)) .
- (# s "tom")
- ) .
- (# gain "0.8") .
- (0.25 ~>) . density 2
- )
- ) $
- 4 ~> n "[~ 0 [~ 0/2 ~!] 0]/4" # s "sn"
- ]
- d1 $ stack [
- n "[1, 0*2 [~ 0] ! ~]/4" # s "drum",
- whenmod 7 6 (slowspread ($) [density 4 . rev . slow 4, id, (0.25 ~>)]) $
- whenmod 5 3 (
- superimpose (
- within (0, 0.5) (
- (# gain "0.7") .
- (# n (irand 3)) .
- (# s "tom")
- ) .
- (# gain "0.8") .
- (0.25 ~>) . density 2
- )
- ) $
- 4 ~> n "[~ 0 [~ 0/2 ~!] 0]/4" # s "sn"
- ]
- d4 $ slow 16 $ striate 16 $ n "[0 1]/2" # s "nimble"
- d4 $ (0.5 ~>) $
- slow 16 $ striate 16 $ n "[0 1]/2" # s "nimble"
- d4 $ superimpose ((1 <~) . (# vowel "e a")) $
- (0.5 ~>) $
- slow 16 $ striate 16 $ n "[0 1]/2" # s "nimble"
- d6 $
- every' 3 2 rev $
- (2 <~) $
- slow 16 $ striate 32 $ n "[0 1]/2" # s "nimble"
- # speed "0.55"
- -- nailed it
- d7 $
- whenmod 16 8 (0.5 ~>) $
- slow 8 $
- slowspread ($) [gap 16, striate 8] $
- n "[0 1]/2" # s "nimble"
- # speed "[-3 -2]"
- d7 $
- whenmod 5 2 (density (5%3)) $
- whenmod 16 8 (0.5 ~>) $
- slow 8 $
- slowspread ($) [gap 16, striate 8] $
- n "[0 1]/2" # s "nimble"
- # speed "[-3 -2]"
- d1 $ stack [
- n "[1, 0*4 [~ 0*2] [~ 0/2 0 ~] ~]/4" # s "drum",
- 4 ~> n "[~ 0 [~ 0/2 ~!] 0]/4" # s "sn"
- ]
- d1 $ stack [
- n "[1, 0*4 [~ 0*2] [~ 0/2 0 ~] ~]/4" # s "drum",
- whenmod 7 6 (slowspread ($) [density 4 . rev . slow 4, id, (0.25 ~>)]) $
- whenmod 5 3 (
- superimpose (
- within (0, 0.5) (
- (# gain "0.7") .
- (# n (irand 3)) .
- (# s "tom")
- ) .
- (# gain "0.8") .
- (0.25 ~>) . density 2
- )
- ) $
- 4 ~> n "[~ 0 [~ 0/2 ~!] 0]/4" # s "sn"
- ]
- d1 $ slow 16 . modtempo 0.6 4 $ density 16 $ stack [
- n "[1, 0*4 [~ 0*2] [~ 0/2 0 ~] ~]/4" # s "drum",
- whenmod 7 6 (slowspread ($) [density 4 . rev . slow 4, id, (0.25 ~>)]) $
- whenmod 5 3 (
- superimpose (
- within (0, 0.5) (
- (# gain "0.7") .
- (# n (irand 3)) .
- (# s "tom")
- ) .
- (# gain "0.8") .
- (0.25 ~>) . density 2
- )
- ) $
- 4 ~> n "[~ 0 [~ 0/2 ~!] 0]/4" # s "sn"
- ]
- -- could be a good outro
- d1 $ slow 16 . modtempo 0.6 4 $ density 16 $
- stack [
- n "[1, 0*4 [~ 0*2] [~ 0/2 0 ~] ~]/4" # s "drum",
- 4 ~> n "[~ 0 [~ 0/2 ~!] 0]/4" # s "sn"
- ]
- hush
- {-
- ok so from here on i'm actually trying to write a song,
- everything above is scratch
- -}
- -- pt 1: intro
- let d'drum = d1
- d'kit = d2
- d'wax = d3
- d'bass = d4
- d'bass2 = d5
- d'hi = d7
- bpm 105
- hush
- d'drum $ slow 4 $ n "1" # s "drum"
- d'wax $ slow 16 . striate 256 $ s "icarus"
- d'kit $ n "[[~ 0] [[2!! ~]/4 0]]/2" # s "kit"
- d'drum $ slow 8 $ n "[1*2, 0*8]" # s "drum"
- d'wax $ superimpose (8 ~>) $
- slow 16 . striate 256 $ s "icarus"
- d'bass $ slow 16 $ striate 16 $ n "[0 1]/2" # s "nimble"
- d'wax $ slow 16 . striate 256 $ s "icarus"
- d'drum $ slow 8 $ n "[1*2, 0 0 0 [0 ~! 0] ! 0 [0 0/4] 0]" # s "drum"
- d'wax $ superimpose (8 ~>) $
- every' 2 2 (within (0, 0.75) (iter 16)) $
- slow 16 . striate 256 $ s "icarus"
- d'kit $ withmod 11 5 0.5 1 (density 2) $
- n "[[~ 0] [[2!! ~]/4 0]]/2" # s "kit"
- d'bass $ superimpose (iter 4) $
- slow 16 $ striate 256 $ n "[0 1]/2" # s "nimble"
- let bass'osc1 = (# speed ((+0.8).(/1.5) <$> slow 2.5 sine1))
- d'bass $ superimpose (iter 4 . bass'osc1) $
- slow 16 $ striate 256 $ n "[0 1]/2" # s "nimble"
- d'wax $ slow 16 . striate 256 $ s "icarus"
- d'kit $ whenmod 3 2 (density 2) $
- withmod 11 5 0.5 1 (density 2) $
- n "[[~ 0] [[2!! ~]/4 0]]/2" # s "kit"
- -- pt 2: mod tempo
- d'drum $ mt 16 2 $ n "[1*2, 0 0 0 [0 ~! 0] ! 0 [0 0/4] 0]" # s "drum"
- d'bass $ superimpose (iter 4 . bass'osc1 . (# nudge "0")) $
- mt 16 1 $ striate 256 $ n "[0 1]/2" # s "nimble"
- d'wax silence
- d'bass $ mt 16 1 $ striate 256 $ n "[0 1]/2" # s "nimble"
- d'bass $ whenmod 5 3 rev $
- mt 16 1 $ striate 256 $ n "[0 1]/2" # s "nimble"
- d'bass $ every' 2 2 (within (0, 0.5) (const silence)) $
- whenmod 5 3 rev $
- mt 16 1 $ striate 256 $ n "[0 1]/2" # s "nimble"
- d'bass $ every' 2 2 (within (0, 0.5) (const silence)) $
- superimpose (iter 4 . bass'osc1 . (# nudge "0")) $
- whenmod 5 3 rev $
- mt 16 1 $ striate 256 $ n "[0 1]/2" # s "nimble"
- -- pt 2.5: straighten up
- d'drum $ slow 8 $ n "[1*2, 0 0 0 [0 ~! 0] ! 0 [0 0/4] 0]" # s "drum"
- d'bass $ whenmod 4 2 (const silence) $
- slow 16 $ striate 16 $ n "[0 1]/2" # s "nimble"
- d'kit $ every' 16 8 (const $ s "kit:3") $
- whenmod 3 2 (density 2) $
- withmod 11 5 0.5 1 (density 2) $
- n "[[~ 0] [[2!! ~]/4 0]]/2" # s "kit"
- d'drum $ (whenmod 5 3 . every' 7 5) (0.5 ~>) $
- slow 8 $ n "[1*2, 0 0 0 [0 ~! 0] ! 0 [0 0/4] 0]" # s "drum"
- d'bass $ whenmod 4 2 (const silence) $
- slow 16 $ striate 16 $ n "[0 1]/2" # s "nimble"
- # vowel "e a"
- d'hi $ whenmod 16 8 (0.5 ~>) $
- slow 8 $ slowspread ($) [gap 16, striate 8] $
- n "[0 1]/2" # s "nimble" # speed "[-3 -2]"
- # gain "0.9"
- d'bass $ whenmod 4 2 (const silence) $
- slow 16 $ striate 16 $ n "[0 1]/2" # s "nimble"
- # vowel "e a"
- # cut "4"
- d'wax $ slow 16 . striate 256 $ s "icarus"
- d'bass $ superimpose ((4 ~>) . iter 4) $
- whenmod 4 2 (const silence) $
- slow 16 $ striate 16 $ n "[0 1]/2" # s "nimble"
- # vowel "e a"
- # cut "4"
- -- pt 3: hip hoppy
- d1 silence
- d'drum $ stack [
- n "[1, 0*2 [~ 0] ! ~]/4" # s "drum",
- 4 ~> n "[~ 0 [~ 0/2 ~!] 0]/4" # s "sn" # gain "0.76"
- ]
- d'bass2 $ (0.5 ~>) $
- slow 16 $ striate 16 $ n "[0 1]/2" # s "nimble"
- let drum'sn1 = (# gain "0.65") . (0.25 ~>) . density 2
- let drum'toms1 = within (0, 0.5) ((# gain "0.6") . (# n (irand 3)) . (# s "tom"))
- d'drum $ stack [
- n "[1, 0*2 [~ 0] ! ~]/4" # s "drum",
- whenmod 5 3 (superimpose drum'sn1) $
- 4 ~> n "[~ 0 [~ 0/2 ~!] 0]/4" # s "sn" # gain "0.76"
- ]
- d'bass $ superimpose ((4 ~>) . iter 4) $
- whenmod 4 2 (const silence) $
- slow 16 $ striate 16 $ n "[0 1]/2" # s "nimble"
- # vowel (slow 2.1 "[u i o]")
- # cut "4"
- d'drum $ stack [
- n "[1, 0*2 [~ 0] ! ~]/4" # s "drum",
- whenmod 5 3 (superimpose (drum'toms1 . drum'sn1)) $
- 4 ~> n "[~ 0 [~ 0/2 ~!] 0]/4" # s "sn" # gain "0.76"
- ]
- d'bass $ superimpose ((4 ~>) . iter 4) $
- whenmod 4 2 (rev) $
- slow 16 $ striate 16 $ n "[0 1]/2" # s "nimble"
- # vowel (slow 2.1 "[u i o]")
- # cut "4"
- d'bass $ superimpose ((4 ~>) . iter 6) $
- whenmod 4 2 (rev) $
- slow 16 $ striate 16 $ n "[0 1]/2" # s "nimble"
- # vowel (slow 2.1 "[u i o]")
- # cut "4"
- d'bass2 $ (0.5 ~>) $
- slow 16 $ striate 16 $ n "[0 1]/2" # s "nimble"
- # vowel "e a"
- d'bass2 $ (0.5 ~>) $
- slow 16 $ gap 64 $ n "[0 1]/2" # s "nimble"
- # vowel "e a"
- -- pt 4: hip houtro
- d'drum $ mt 16 16 $ stack [
- n "[1, 0*2 [~ 0] ! ~]/4" # s "drum",
- whenmod 5 3 (superimpose (drum'toms1 . drum'sn1)) $
- 4 ~> n "[~ 0 [~ 0/2 ~!] 0]/4" # s "sn" # gain "0.76"
- ]
- d'bass2 $ (0.5 ~>) $
- mt 16 1 $ striate 16 $ n "[0 1]/2" # s "nimble"
- # vowel "e a"
- d'bass $ superimpose ((4 ~>) . iter 6) $
- whenmod 4 2 (rev) $
- mt 16 1 $ striate 16 $ n "[0 1]/2" # s "nimble"
- # vowel (slow 2.1 "[u i o]")
- # cut "4"
- d'drum $ mt 16 16 $ stack [
- n "[1, 0*4 [~ 0*2] [~ 0/2 0 ~] ~]/4" # s "drum",
- whenmod 5 3 (superimpose (drum'toms1 . drum'sn1)) $
- 4 ~> n "[~ 0 [~ 0/2 ~!] 0]/4" # s "sn" # gain "0.76"
- ]
- solo $ d'drum $ slow 16 . modtempo 0.6 4 $ density 16 $ stack [
- n "[1, 0*4 [~ 0*2] [~ 0/2 0 ~] ~]/4" # s "drum",
- whenmod 5 3 (superimpose (drum'toms1 . drum'sn1)) $
- 4 ~> n "[~ 0 [~ 0/2 ~!] 0]/4" # s "sn" # gain "0.76"
- ]
- hush
|