2
0

notts.megalet.tidal 13 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397
  1. -- megalet for pigs-nose.tidal
  2. let msil = mapM_ ($ silence)
  3. cf = slow 2
  4. d'drum = d1
  5. d'print = d2
  6. d'wobb = d2
  7. d'qs = d3
  8. d'jbass = d4
  9. d'mons = d5
  10. d'bass = d6
  11. d'casio = d7
  12. d'ql = d8
  13. d'arm = d8
  14. d'baa = d9
  15. pn'hointro = s "[~ [~ ho] ~ ho ~ ~ ho ~]/2"
  16. pn'sn = sound "[~ [~ sn:1] ~ sn:1 ~ ~ sn:1 ~]/2"
  17. pn'bd = s "[bd [~ ~ ~ bd] bd*2 ~]/2"
  18. pn'hh = s "[hh*8 [hh*4 ho]]/2"
  19. pn'qs sl = slow sl . striate 4 $ s "qspace"
  20. pn'bass4 = s "bass*2 bass*2 bass*3 bass*3"
  21. pn'bass5 = s "bass*2 bass*2 bass*3 bass*3 ~"
  22. -- megalet for battery123.tidal
  23. let msil = mapM_ ($ silence)
  24. cf = slow 2
  25. every' n o f = when ((== (o-1)) . (`mod` n)) f
  26. halfosc = (/2).(+0.5)
  27. halfosc1 = (+1).(/2)
  28. thirdosc1 = (+1).(/3)
  29. d'drum = d1
  30. d'perc = d2
  31. d'bass = d3
  32. d'hand = d4
  33. d'warb = d5 -- warbler
  34. d'bass2 = d6 -- more bass right at the end
  35. d'arpy = d7
  36. d'tr = d8 -- trump
  37. d'tac = d9 -- tacscan
  38. b1'bass = s "bass3 [~ bass3] ! ~"
  39. # begin "0.2"
  40. b1'hand = slow 8 $ rev . striate 256 $ s "hand*8"
  41. # speed "0.7"
  42. b1'perc = slow 2 $ s "uxay [~ uxay] [psr uxay] ~"
  43. b1'tac = s "[~ tacscan] ! ~ ~"
  44. # gain "0.8"
  45. # vowel (slow 3 "e u")
  46. b1'warbler = slow 4 $ striate 32 $ s "warbler"
  47. # n (slow 7 $ run 7)
  48. # gain "0.8"
  49. b2'uxp = (# gain "0.8") .
  50. (# speed "[0.7 1 1.2]/2")
  51. b2'ux = cf $ s "uxay*4"
  52. # n "1 0 1 2"
  53. b2'ux2 i = (if i then brak . iter 4 else cf . brak) $
  54. b2'uxp $ s "uxay*4"
  55. # n "1 0 1 2"
  56. # shape "0.4 0.3 0.6"
  57. b2'psr = s "psr*4 psr*2"
  58. # gain "0.6"
  59. b2'psrf = s "[[psr*4 psr*2] ! ! psr*8]/4"
  60. # gain "0.6"
  61. b2'trump p = whenmod 5 4 rev $ s p
  62. # n (slow 3.2 $ run 4)
  63. # gain "0.8"
  64. # speed (halfosc1 <$> slow 4 sinewave1)
  65. # vowel (slow 3.2 "a e o")
  66. # shape "0.6"
  67. b2'bass = slow 8 $ s "[jvbass ~] [jvbass [~ ~ ~ ~ jvbass]] [~ [~ ~ ~ ~ jvbass]] [~ jvbass !]"
  68. # n (slow 2.8 "0 1 2")
  69. # vowel "i"
  70. # speed "0.8"
  71. b2'arpy = s "arpy*8"
  72. # n "2 1 3 1"
  73. # gain "0.7"
  74. b3'perc = sound "[tok*2 [rm tok]] [psr:1 tok*2]"
  75. b3'bass = s "bass*4"
  76. # n "0 1"
  77. # begin "0.4"
  78. # speed "1.2"
  79. # shape "0.2"
  80. b3'bassf = s "{bass*4, wobble*3}"
  81. # n "0 1"
  82. # begin "0.4"
  83. # speed "1.2"
  84. # shape "0.2"
  85. b3'drum = slow 2 $ s "peri [~ ~ ~ peri] [~ peri peri ~] ~"
  86. b3'drumf = slow 2 $ s "peri*2 [~ ~ ~ peri] [~ peri peri ~] ~"
  87. -- megalet for piston.tidal
  88. let d'drum = d1 -- k, sn
  89. d'perc = d2 -- wt, wtsn, hh
  90. d'gnome = d3 -- gnome, cymb
  91. d'bass = d4 -- dubb, k
  92. d'fly = d5 -- fly
  93. d'bz = d6 -- bz, bzl, ff
  94. d'shard = d7 -- ice, plode
  95. d'ant = d9 -- ant
  96. d'misc = d8 -- overflow channel for a few cases
  97. d'cymb = d10 -- cymb
  98. msil = mapM_ ($ silence)
  99. k = s "k"
  100. k1 = sound "k:1"
  101. sn = s "[~ sn]/2"
  102. bass'params = (# gain "0.7").
  103. (# hcutoff "485"). -- 0.022 * (44100/2)
  104. (# hresonance "0.001")
  105. bass' c = rev . chop c $ bass'params $ n "[0 1]/2" # s "dubb"
  106. fly'1 = slow 16 $ jux (0.5 <~) $ rev . striate 256 $ s "fly"
  107. # hcutoff "1985" -- 0.09 * (44100/2)
  108. # hresonance "0.06"
  109. fly'1f = whenmod 5 2 (# vowel "i o") $ whenmod 3 1 (slow 2) $ brak $ fly'1
  110. snare43'1 = density (4%3) $ s "[wtsn ~ wt]"
  111. shnare'1 = s "[~ ~ sn [~ sn*3]/2]/2"
  112. kick38'1 = s "[k(3,8)]/2"
  113. gnome'1 = within (0, 0.5) rev $ chop 8 $ s "[gnome(3,8)]/2"
  114. # gain "0.8"
  115. # speed ((+0.8).(/5) <$> slow 1.1 sinewave1)
  116. bass'1'm = every 2 $ within (0.25, 0.75) (0.5 ~>)
  117. wt'2 = s "wt*2"
  118. # vowel "[u e u a]/2"
  119. # end "0.15"
  120. bass'2 = slow 8 $ ((1%8) <~) $ chop 32 $
  121. bass'params $ n "[0 1]/2" # s "dubb"
  122. # speed "1.2"
  123. # shape ((/2) <$> density 4 sinewave1)
  124. # cut "1"
  125. ant'2 = slow 2 $ smash 16 [1,2] $ sound "ant:1"
  126. # cutoff "1764" -- 0.08 * (44100/2)
  127. # resonance "0.01"
  128. shard'2 = chop 16 $ s "[ice [~ ice] ~ ~]/4"
  129. # gain "0.7"
  130. shard'2f = every 2 (density 1.5) $ whenmod 5 3 (density 2) $ rev $ shard'2
  131. # shape ((+0.25).(/2) <$> density 8 saw1)
  132. fly'2 = chop 64 $ s "[fly ~ [fly ~ ~ fly] ~]/4"
  133. # cut "1"
  134. # begin "0.3"
  135. # end "0.35"
  136. # shape ((+0.25).(/2) <$> density 8 sinewave1)
  137. # speed ((+0.92) <$> density (5%4) saw1)
  138. cymb'2 g = within (0.5,1) (# vowel "e") $
  139. (0.5 ~>) $ chop 2 $ s "[cymb*4 cymb*3]/8"
  140. # shape ((/3) <$> density 3.6 saw1)
  141. # gain g
  142. bass'3 v c b = (4 <~) $ every 2 (0.5 <~) $
  143. slow 4 .
  144. (if b then brak else id) $
  145. rev . chop 16 $
  146. bass'params $ n "[0 1]/2" # s "dubb"
  147. # cut c
  148. # vowel v
  149. bz'3 = s "[ff(3,8) [~ [ff bz]]]/4"
  150. # end "0.3"
  151. # shape "0 0.25"
  152. # gain "0.7"
  153. drum'3 = overlay (s "[~ sn]/2") $ s "[k*2 [~ k*2] k ~ k*2 ~ k*2 ~]/8"
  154. bass2'3 = slow 8 $ chop 16 $ bass'params $ n "[0 1]/2" # s "dubb"
  155. # cut "1"
  156. # speed "0.2"
  157. # vowel "e"
  158. perc'3 = sound "[[k:1 [~ k:1] k:1 [~ k:1]] sn]/8"
  159. perc'3'delay = (# orbit "1").
  160. (# delay "0.3").
  161. (# delayfeedback "0.5").
  162. (# delaytime "0.766") --(138/60)/3
  163. shard'3f = iter 4 . density 2 $ (0.5 <~) $ ((1%16) <~) $ shard'2
  164. # vowel "e o"
  165. # gain "0.6"
  166. drum5'4 = s "[[~ [wt wtsn]] ~ wt ~]/5"
  167. plox'4 so = within (0.5, 0.75) (iter 4) $
  168. whenmod 3 2 (slow 2) $
  169. slow 8 $ every 2 rev $ striate 128 $ s so
  170. # cutoff "441" -- 0.02 * (44100/2)
  171. # resonance "0.001"
  172. # speed "0.7"
  173. # gain "0.7"
  174. bass'4 = whenmod 5 3 (density (3%2) . brak) $
  175. bass'params $
  176. rev $ (0.5 ~>) $ slow 2 . chop 8 $ n "[0 1]/2" # s "dubb"
  177. # speed "0.5"
  178. # cut "1"
  179. # end "0.5"
  180. bz'4 = (0.5 <~) $ slow 16 . chop 32 $ s "bzl"
  181. # n (density 1.5 "0 1")
  182. # speed ((+1) <$> density 1.7 sinewave1)
  183. # gain "0.9"
  184. bzox'4 so = whenmod 7 4 (within (0.5, 1) (density 2)) $
  185. (0.5 <~) $
  186. slow 16 . chop 32 $ s so
  187. # n (density 1.5 "0 1")
  188. # speed ((+1.6) <$> density 2.2 sinewave1)
  189. # pan ((+0.25).(/2) <$> density 4.1 sinewave1)
  190. perc'5 = s "~ wt wt wtsn/8"
  191. # shape ((/2) <$> density 1.2 saw1)
  192. drum'5 = sound "{[~ ~ ~ k:1], [~ sn]/2}"
  193. drum'5f = overlay k $ drum'5
  194. bass'5 = chop 16 $ bass'params $ s "[~ dubb]"
  195. # n (slow 4 "0 1")
  196. # cut "1"
  197. bass'5f = every 2 (density 2) $ whenmod 3 2 (density 1.6) $ bass'5
  198. # speed ((+0.75).(/2) <$> slow 1.3 sinewave1)
  199. fly'5 b = whenmod 5 3 rev $
  200. (if b then brak else id) $
  201. slow 16 $ jux ((1.5 ~>).rev) $
  202. chop 64 $ bass'params $ sound "fly:1"
  203. # speed "0.7"
  204. # shape ((/2) <$> density 2.1 saw1)
  205. bass2'5 = chop 12 $ sound "[~ ~ [~ k:1] !]/4"
  206. # speed "0.9"
  207. bass2'5b = whenmod 4 3 (density 1.8) $ bass2'5
  208. # shape ((/3) <$> density 3 sinewave1)
  209. # orbit "1"
  210. # delay "0.3"
  211. # delayfeedback "0.2"
  212. # delaytime "0.2875" --(138/60)/8
  213. gnome'5 sm f = smash 64 sm $
  214. (# speed "1.2").
  215. (# shape ((/2) <$> ((0.25 ~>) . density 3) sinewave1)).
  216. (# gain "0.6") $
  217. s "~ gnome"
  218. # pan (f $ slow 4 sinewave1)
  219. sn'6 = s "[~ sn ~ sn*2]/8"
  220. bass'6 = (# gain ((*0.7) <$> saw1)) $ bass'5f
  221. bass2'6 = within (0, 0.5) (slow (7%6)) $
  222. every 2 (0.5 <~) $ slow 8 $
  223. bass' 32
  224. plode'6 = superimpose (slow (5%3) . iter 2) $
  225. (# speed ((+0.7) <$> slow 1.1 sinewave1)) $
  226. chop 32 $ s "[plode(5,8)]/8"
  227. # cut "1"
  228. cymb'6 = s "[cymb*8 ~]/8"
  229. # gain ((+0.6).(/5) <$> density 3.6 saw1)
  230. # cut "1"
  231. cymb'6f = density (5%4) $ whenmod 9 4 (density 1.5) $ cymb'6
  232. drum'6 = sound "{k, [~ ~ ~ k:1] [~ k:1]}"
  233. wtsn'6 = (3 ~>) $ within (0.25, 0.75) rev $
  234. slowspread ($) [chop 16, chop 32] $ s "[wtsn(3,8)]/2"
  235. # speed ((+0.8).(/2) <$> density 1.8 sinewave1)
  236. gnome'6 d = iter 4 $ density (9%8) $
  237. within (0, 0.5) rev $
  238. smash 8 [1,2] $ s "[gnome(3,8)]/2"
  239. # gain "0.8"
  240. # speed ((+0.76).(/d) <$> slow 1.1 sinewave1)
  241. shard'7 dt = slow 5 . chop 15 $ s "ice"
  242. # gain "0.7"
  243. # resonance "0.4"
  244. # cutoff "4410" -- 0.2 * (44100/2)
  245. # orbit "1"
  246. # delay "0.7"
  247. # delayfeedback "0.3"
  248. # delaytime dt
  249. bass'7 f = slow 8 $ f $
  250. slowspread ($) [rev.chop 12, rev.chop 24] $
  251. bass'params $ n "[0 1]/2" # s "dubb"
  252. bass'7'm f = (f . (/2) <$> density (5%4) sinewave1)
  253. fly'7 = slow (4%3) .
  254. slowspread ($) [slow 1, density (5%4)] $
  255. slow 12 $
  256. slowspread striate [24,36] $ sound "fly:1"
  257. # gain "0.7"
  258. bz'8 = s "[[ff bz]*2 [~ bz*2]]/2"
  259. # n (slow 2 $ run 5)
  260. # begin "0.7"
  261. # end "0.85"
  262. # hcutoff "882" -- 0.04 * (44100/2)
  263. # hresonance "0.1"
  264. # shape ((/5) <$> slow (5%3) sinewave1)
  265. -- megalet for juliese.tidal
  266. let every' n o f = when ((== (o-1)) . (`mod` n)) f
  267. d'drum = d1
  268. d'perc = d2
  269. d'bass = d3
  270. d'eg = d4
  271. d'gt = d5
  272. d'udu = d6
  273. d'pc = d7
  274. d'pcl = d8
  275. d'wbass = d9
  276. bassbass = sound "[[vb vb:1] ~]/2"
  277. # end (slow 1.4 "0.2 0.4")
  278. # vowel "e o"
  279. bassbass' = bassbass # speed (slow 2.5 "1 -1")
  280. morek = every' 8 8 (overlay $ (0.32 ~>) $ s "k*2")
  281. drum1'f = overlay ((0.5 ~>) $ s "sn/2") $ every' 12 2 (density 3) $ morek $ s "k"
  282. hhb m = smash 16 [0.25, 0.5] $
  283. (if m then (every 3 (append $ sound "hh:1 hh")) else id) $
  284. sound "hh hh:2"
  285. # gain "0.6"
  286. ududu = slow 4 . chop 128 $
  287. sound (samples "udu" (slow 4 $ irand 4))
  288. # gain "0.8"
  289. # cut "6"
  290. eg = gap 128 $ s "eg*2"
  291. # cut "4"
  292. gt = every 2 (within (0, 0.5) (0.07 <~)) $ (0.07 ~>) $
  293. chop 128 $
  294. s "[gt [~ gt] ! ~]/2"
  295. # cut "5"
  296. pcbeep = slow 16 $ gap 48 $ sound "pc:1"
  297. # gain "0.7"
  298. # cut "7"
  299. # speed "[1 0.7]"
  300. ju'drum2 = stack [
  301. every' 8 7 (overlay $ (0.32 ~>) $ s "k") $ s "[k ~ k*2 ~]/4",
  302. every' 16 16 (overlay $ (0.82 ~>) $ s "sn") $ (1 ~>) $ s "sn/2"
  303. ]
  304. -- megalet for haddeo.tidal
  305. let bpm b = cps (b/60)
  306. withmod a b c d = (whenmod a b . within (c, d))
  307. every' n o f = when ((== (o-1)) . (`mod` n)) f
  308. msil = mapM_ ($ silence)
  309. tmod s e = (# nudge (scale 0 s $ fmap (**e) saw1))
  310. swing a = within (0.1, 0.4) (a ~>) . within (0.6, 0.9) (a ~>)
  311. swing' = swing 0.14 --0.05
  312. d'drum = d1
  313. d'bass = d3
  314. d'bass2 = d2
  315. d'wax = d4
  316. d'nim = d5
  317. d'hi = d6
  318. d'fx1 = d8
  319. d'fx2 = d9
  320. d'fx3 = d10
  321. nim'osc = (# speed ((+0.8).(/1.5) <$> slow 2.5 sine1))
  322. nim'del = (# orbit "1") .
  323. (# delay "0.5") .
  324. (# delayfeedback "0.6") .
  325. (# delaytime "0.25")
  326. tmod' s e = tmod (s*(1/(105/60))) e
  327. mt s d i = slow s $ tmod' 0.5 3 $ density d $ i
  328. -- resolved channel mapping (reducing conflicts as much as possible)
  329. let d'drum = d1
  330. d'perc = d2
  331. d'eg = d3
  332. d'gnome = d3
  333. d'hand = d3
  334. d'tr = d3
  335. d'wax = d3 -- ex d4
  336. d'bass = d4
  337. d'fly = d5
  338. d'gt = d5
  339. d'mons = d5
  340. d'nim = d5
  341. d'warb = d6 -- ex d5
  342. d'bz = d6
  343. d'hi = d6
  344. d'kurt = d6
  345. d'udu = d6
  346. d'arpy = d7
  347. d'fx3 = d7 -- ex d10
  348. d'pc = d7
  349. d'qs = d7
  350. d'arm = d8
  351. d'fx1 = d8
  352. d'misc = d8
  353. d'pcl = d8
  354. d'ql = d8
  355. d'tac = d8 -- ex d3
  356. d'ant = d9
  357. d'baa = d9
  358. d'casio = d9
  359. d'cymb = d9 -- ex d10
  360. d'fx2 = d9
  361. d'print = d9
  362. d'voc = d9
  363. d'wbass = d9
  364. d'wobb = d9
  365. d'bass2 = d10
  366. d'jbass = d10
  367. d'moog = d10
  368. d'shard = d10
  369. -- custom lets for this performance to fix sample refs. see samples.csv
  370. let pn'hh = s "[phh*8 [phh*4 ho]]/2"
  371. pn'sn = sound "[~ [~ psn:1] ~ psn:1 ~ ~ psn:1 ~]/2"
  372. let hhb m = smash 16 [0.25, 0.5] $
  373. (if m then (every 3 (append $ sound "rhh:1 rhh")) else id) $
  374. sound "rhh rhh:2"
  375. # gain "0.65"
  376. let ju'drum2 = stack [
  377. every' 8 7 (overlay $ (0.32 ~>) $ s "k") $ s "[k ~ k*2 ~]/4",
  378. every' 16 16 (overlay $ (0.82 ~>) $ s "rsn") $ (1 ~>) $ s "rsn/2"
  379. ]
  380. let ss'perc = s "{[sbd ~ ~ sbd] msg, rhh*2}"
  381. ss'perc' = s "{[rm ~ ~ rm] msg, rhh*2}"
  382. let b3'perc = sound "[tok*2 [rm tok]] [psn:1 tok*2]"
  383. b3'drum = slow 2 $ s "k [~ ~ ~ k] [~ k k ~] ~"
  384. b3'drumf = slow 2 $ s "k*2 [~ ~ ~ k] [~ k k ~] ~"
  385. -- @todo keep an eye (ear... eye ear) on any other redefs