Created
April 23, 2019 14:39
-
-
Save jarmitage/930442ae4d341d6fa4ffa48914317f55 to your computer and use it in GitHub Desktop.
An idea for arranging a track in tidal
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
| mutePatterns g = mapM (streamMute tidal) g | |
| muteIntPatterns g = mutePatterns (map show g) | |
| mutePatterns' s g = mutePatterns (fromJust $ lookup g s) | |
| unmutePatterns g = mapM (streamUnmute tidal) g | |
| unmuteIntPatterns g = unmutePatterns (map show g) | |
| unmutePatterns' s g = unmutePatterns (fromJust $ lookup g s) | |
| soloPatterns g = mapM (streamSolo tidal) g | |
| soloPatterns' s g = soloPatterns (fromJust $ lookup g s) | |
| unsoloPatterns g = mapM (streamUnsolo tidal) g | |
| unsoloPatterns' s g = unsoloPatterns (fromJust $ lookup g s) | |
| muteTrackPatterns t g = mapM (streamMute tidal) (map ((t ++ "-") ++) g) | |
| muteTrackIntPatterns t g = muteTrackPatterns t (map show g) | |
| muteTrackPatterns' t s g = muteTrackPatterns (fromJust $ lookup (map ((t ++ "-") ++) g) s) | |
| unmuteTrackPatterns t g = mapM (streamUnmute tidal) (map ((t ++ "-") ++) g) | |
| unmuteTrackIntPatterns t g = unmuteTrackPatterns t (map show g) | |
| unmuteTrackPatterns' t s g = unmuteTrackPatterns (fromJust $ lookup (map ((t ++ "-") ++) g) s) | |
| soloTrackPatterns t g = mapM (streamSolo tidal) (map ((t ++ "-") ++) g) | |
| soloTrackPatterns' t s g = soloTrackPatterns (fromJust $ lookup (map ((t ++ "-") ++) g) s) | |
| unsoloTrackPatterns t g = mapM (streamUnsolo tidal) (map ((t ++ "-") ++) g) | |
| unsoloTrackPatterns' t s g = unsoloTrackPatterns (fromJust $ lookup (map ((t ++ "-") ++) g) s) | |
| mp = mutePatterns | |
| md = muteIntPatterns | |
| mp' = mutePatterns' | |
| ump = unmutePatterns | |
| umd = unmuteIntPatterns | |
| ump' = unmutePatterns' | |
| -- sp = soloPatterns | |
| -- sp' = soloPatterns' | |
| usp = unsoloPatterns | |
| usp' = unsoloPatterns' | |
| mtp = muteTrackPatterns | |
| mtd = muteTrackIntPatterns | |
| mtp' = muteTrackPatterns' | |
| umtp = unmuteTrackPatterns | |
| umtd = unmuteTrackIntPatterns | |
| umtp' = unmuteTrackPatterns' | |
| stp = soloTrackPatterns | |
| stp' = soloTrackPatterns' | |
| ustp = unsoloTrackPatterns | |
| ustp' = unsoloTrackPatterns' | |
| -- naming patterns based on tracks | |
| trackPatternName track patternName = p (track ++ "-" ++ patternName) | |
| trackIntPattern track patternName = p (track ++ "-" ++ (show patternName)) | |
| tp = trackPatternName | |
| td = trackIntPattern | |
| -- named patterns or numbered patterns | |
| track t mx dn ps p f = td t dn $ f $ (fromJust $ lookup p ps) # g (mx!!(dn-1)) # o (fromList [dn] -1) | |
| track' t mx ps dn f = td t dn $ f $ (fromJust $ lookup dn ps) # g (mx!!(dn-1)) # o (fromList [dn] -1) | |
| track'' t mx ps dn f = td t dn $ f $ (ps!!(dn-1)) # g (mx!!(dn-1)) # o (fromList [dn] -1) | |
| tr = track | |
| tr' = track' | |
| tr'' = track'' | |
| -- apply function from map | |
| f fs n = fromJust $ lookup n fs |
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
| do | |
| let t = "suf2" | |
| let ps = [("vx", note ("[[2 ~ ~ [~ -2]] [0 [2? [2? 5?]]]]") # s "vxsuf" # cut 1), | |
| ("syn", swingBy (1/9) 32 $ | |
| note ("[-4 0 3]*2 [-5 -2 3]*2 [-7 -4 0]*2 [[-7 -4 0] [-7 1 -4]]" + 36) | |
| # n "[1, 9]" # s "retld" # adsr "0:2:2:2" # legato 1 # hpf' 1e3 0.1), | |
| ("bs", struct "t(3,8)!4" $ note ("-4 <-9> <-7> [-7 -11]" + "<12 12 12 24>") | |
| # s "bssub" # shape 0.3 # legato 3), | |
| ("pc1", s "bdk2:21(3,8) bdk2:21(3,8)"), | |
| ("pc2", ev 4 ((# sp "-1"). jux rev) . fa "1 2" . loopAt 2 . | |
| struct "t(3,8)" $ s "jbreaks:100" # shape 0.3 # rvb "0.2:0.2"), | |
| ("fx", sl 8 . (# hpf "2e3:0.1").(# rvb "0.9:0.8").(# del "0.2:0.3:0.6"). | |
| (# pan rand) $ n (r 4) # s "fxrise")] | |
| let fs = [ ("id", id), | |
| ("pc1a", ev 8 (fa 2) . ev 4 (# hpf' "1e3 4e3 7e3" "0.1")), | |
| ("vxa", fa 8), | |
| ("vxb", rarely (chop "<4 8>" . (# ac "<-0.1 0.1>"))), | |
| ("vxc", whenmod 8 4 (struct "t(<11 13 9>,16)".(# io "0 0.5 0.75:0.5 1"). | |
| (# pan (fast 4 $ rand)))), | |
| ("vxd", (# hpf' 1e3 0.1).(# del "0.3:0.5:0.5").(# rvb "0.2:0.2"))] | |
| bpm 130 | |
| mtd t [1, 2, 3, 4, 5, 6 ] | |
| let mx = [1.1, 0.9, 0.9, 0.9, 0.9, 0.9] | |
| umtd t [1,2] | |
| tr t mx 1 ps "vx" $ sl 4 | |
| . f fs "vxa" | |
| . f fs "vxb" | |
| . f fs "vxc" | |
| . f fs "vxd" | |
| tr t mx 2 ps "syn" $ sl 4 . (# rvb "0.5:0.5") | |
| tr t mx 3 ps "pc1" $ sl 2 | |
| -- . f fs "pc1a" | |
| tr t mx 4 ps "pc2" $ id | |
| tr t mx 5 ps "bs" $ sl 4 | |
| tr t mx 6 ps "fx" $ id |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment