This one is fairly intense! I tried some new things here, including writing less Tidalcycles code to keep things simple. You wouldn’t know that listening to this, but the code isn’t too complex. It’s basically homophony, where everything more or less plays the same rhythm. I recorded the Tidalcycles output into Reaper, added some processing (mostly spectral using Plug Data, Pure Data embedded in a VST plugin), and some editing and time stretching. And voila! Another weird piece of music that I’m very proud of.
Everything plays the same pattern, this:
t*4 t*4 t*12 t*8 t*4 t*2 t*1 t*6 t*5 t*4 t*7
You could think of the “t” as 1 bar or cycle, and the numbers represent how many times per bar an event should happen. In this case, it means in the first and second bars there are 4, third bar 12, fourth 8, and so on. This repeats throughout the track. There is some alteration (“scramble”, “bite”, “ply”, “stut”, etc) but the track is entirely based on that pattern.
Here’s the code:
do let pat = sb 0.1 (ply 2) . sb 0.2 (fast 2) . st "<t*4 t*4 t*12 t*8 t*4 t*2 t*1 t*6 t*5 t*4 t*7>" let randpan = (fast 0.8 $ pan (perlin)) p "s" $ every 7 (scramble 16) $ whenmod 15 14 (within (0.25,0.75) (bite 4 "{0 1 2 2 2 0 0 0 1 2 1 0 0 3 1 3 3 2 0 1 2}%4")) $ every 9 (rev . stut 2 0.6 (1/16)) $ whenmod 15 14 (ply 2) $ whenmod 20 17 (ply 2) $ stack [ pat $ stack [ s (wrandcat [("kicks:22",0.9),("kicks:11",0.2),("kicks:99",0.3),("kicks:10",0.6)]) # gain 1 # shape 0.2 # o 1, cat [ ( (13~>) $ sb 0.2 (# speed 2) $ s "gspec1" # n (wrandcat [(0,0.7),(1,0.5),(2,0.3),(99,0.3),(103,0.5),(110,0.5),(132,0.9),(160,0.3),(67,0.2),(420,0.5),(116,0.1)]) # cut 89 # legato 4), (13~>) $ sb 0.2 (# speed 2) $ s "gspec1" # n (wrandcat [(0,0.7),(1,0.5),(2,0.3),(99,0.3),(103,0.5),(110,0.5),(132,0.3),(160,0.3),(67,0.9),(420,0.5),(116,0.6)]) # cut 89 # legato 4, (13~>) $ sb 0.2 (# speed 2) $ s "gspec1" # n (wrandcat [(0,0.7),(1,0.5),(2,0.3),(99,0.3),(103,0.5),(110,0.5),(132,0.2),(160,0.3),(67,0.9),(420,0.5),(116,0.1)]) # cut 89 # legato 4, ( (13~>) $ sb 0.2 (# speed 2) $ s "gspec1" # n (wrandcat [(90,0.5),(189,0.2),(200,0.9)]) # cut 89 # legato 4)] # randpan, db "<1 1 0 1 1 0 0 1>/3" $ (11~>) $ s "g3:8" # legato 1 # sus 0.1 # gain 0 ] (9~>) $ db "<1 1 0 1 1 0 0 >/5" $ pat $ s "g3" # n (wrandcat [(0,0.7),(1,0.5),(2,0.3),(99,0.3),(103,0.5),(110,0.5),(132,0.9),(160,0.3),(67,0.2)]) # legato 1 # gain 0.6, (98~>) $ db "<1 1 1 0 1 1 1>/7" $ pat $ s "db" # n (wrandcat [(0,0.7),(1,0.5),(2,0.3),(997,0.3),(103,0.5),(110,0.5),(132,0.3),(160,0.3),(67,0.2)]) # legato 1 # gain 0.5 # begin 0.1 # sus 0.3 sb 0 (rev . stut 9 0.05 (1/32)) $ db 0.78 $ pat $ s "g3:32" # gain 0.7 # legato 1 # sus 0.1 ] hush