From aeef582aa570e2729eeddfb8d0ad8210e8aac3de Mon Sep 17 00:00:00 2001 From: Paul-Louis NECH Date: Fri, 20 Dec 2019 10:46:43 +0100 Subject: [PATCH] feat: Live/tutorial WIPs --- live/dub.tidal | 20 ++++++++++++++++++++ live/scratch.tidal | 19 +++++++++++++++++++ live/snake.tidal | 52 ++++++++++++++++++++++++++++++++++++++++++++++++++++ live/tutobeat.tidal | 35 +++++++++++++++++++++++++++++++++++ tutorial/base.tidal | 52 ++++++++++++++++++++++++++++++++++++++++++++++++++++ tutorial/pihkal.tidal | 28 ++++++++++++++++++++++++++++ 6 files changed, 206 insertions(+) create mode 100644 live/dub.tidal create mode 100644 live/scratch.tidal create mode 100644 live/snake.tidal create mode 100644 live/tutobeat.tidal create mode 100644 tutorial/base.tidal create mode 100644 tutorial/pihkal.tidal diff --git a/live/dub.tidal b/live/dub.tidal new file mode 100644 index 0000000..62566c5 --- /dev/null +++ b/live/dub.tidal @@ -0,0 +1,20 @@ +hush + +setcps 0.5 + +solo 3 + +d1 +$ degradeBy 0.5 +$ s "hh*8 ~" + +d4 + + +d2 $ s "birds*2" # n 5 +# gain 0.8 + +d3 +$ s "birds" +# n (irand 10) +# gain 0.9 diff --git a/live/scratch.tidal b/live/scratch.tidal new file mode 100644 index 0000000..e6a8a2a --- /dev/null +++ b/live/scratch.tidal @@ -0,0 +1,19 @@ +hush + +setcps 1 + +d2 +$ every 2 rev +$ every 4 (fast 2) +$ every' 4 2 (hurry 2) +$ s "superhammond*4" +# cut 1 +# n (choose [0,1,2]) +-- + (run 4) +# gain 0.8 + +d1 +$ every 16 rev +$ every 2 (off "0.125" (|* 2)) +$ every 8 (off "~ 0.125" (|+ 0)) +$ s "mouth:4 hh:3" diff --git a/live/snake.tidal b/live/snake.tidal new file mode 100644 index 0000000..5794b70 --- /dev/null +++ b/live/snake.tidal @@ -0,0 +1,52 @@ +hush + +setcps 1 + +-- hh high hat? +-- 0: tsii +-- 1: tsiing! (final) +-- 2: tawiit (zip scratché) +-- 3: ziip +-- 4: orchestra hit +-- 5: bass drum +-- 6: tok (bois) +-- 7: tsiing! (sourdiné) +-- 8: tsii (discret) +-- 9: maracas discrète +-- 10: petit ding +-- 11: tok métallique +-- 12: tok métal etouffé +d1 $ s "hh:0*4" + +d1 +$ every 8 (# n "0 [7|1]>") +$ every 4 (off 0.125 (|> 8)) +$ every 4 degrade +$ every' 4 2 (# n 8) +$ s "[hh [hh hh] ~]" + +d2 +$ degradeBy 0.4 +$ every 4 (jux rev) +$ every 3 (off 0 (|- 7)) +$ every 2 (off 0.25 (|> (choose [0,12]))) +$ euclid "<3 5 3 5>" 8 +$ s "superpiano" +# n "[0 | 3 | 5 | 7 | 12]" +-- # n 7 +# velocity (0.4 + (rand / 8)) +# sustain (0.2 + (rand / 2)) + +d3 +$ degradeBy 0.2 +$ s "bass3(5,8)" +# note "[0 | 5] [5 | 7] [5 | 7 | 12]" +# gain 0.8 + +d4 $ s "mouth:4" + +d1 $ s "sax/4" # n "[12]" + +-- Bass: hh5 +-- Finish cymbal: hh7 / hh1 +-- Scratchs: hh2 / hh3 diff --git a/live/tutobeat.tidal b/live/tutobeat.tidal new file mode 100644 index 0000000..3112fb3 --- /dev/null +++ b/live/tutobeat.tidal @@ -0,0 +1,35 @@ +setcps 1 + +d1 +$ sometimes rev +$ every 2 (off 0.125 (|+0)) +$ every 4 (off 0.5 (|+0)) +$ s "bd" + +d2 +$ sometimes (0.25 <~) +$ every 2 (off 0.125 (|>0)) +$ every 4 (off 0.25 (|>0)) +$ every 8 (off 0.375 (|>0)) +$ every 16 rev +$ every' 16 8 (fast 2) +$ s "hh" + +d3 +$ degradeBy "0 0.5" +$ every 2 (fast 2) +$ s "sn cp" + +d4 +-- $ chunk 1 (reverb 1) +$ sometimesBy 0.5 (off 0.125 (|> 0)) +$ every 4 (hurry 2) +$ every 8 rev +$ s "supervibe*8" # up (run 12) +# gain 0.5 + +d3 +$ every 4 (jux rev) +$ every 2 (degradeBy (0.4)) +$ s "hh*32" +# cutoff (range 300 1000 $ slow 2 $ sine) # resonance "0.4" diff --git a/tutorial/base.tidal b/tutorial/base.tidal new file mode 100644 index 0000000..d2906ab --- /dev/null +++ b/tutorial/base.tidal @@ -0,0 +1,52 @@ +setcps 1 + +hush + +-- Just like discrete patterns, you can control the speed +d1 $ sound "bd*16" # pan (slow 8 $ saw) +d1 $ sound "bd*8 sn*8" # pan (density 1.75 $ tri) +d1 $ sound "bd*8 sn*8" # speed (density 2 $ tri) + +-- combine continuous patterns +d1 $ sound "bd*16" # pan (slowcat [sine, saw, square, tri]) + +-- scale them with range +d1 $ sound "bd*8 sn*8" # speed (range 2 4 $ tri) +d1 $ sound "bd*8 sn*8" # speed (slow 4 $ range 1 3 $ tri) + +-- scale to negative values +d1 $ sound "bd*8 sn*8" # speed (range (-1.5) (-0.5) $ tri) + +-- slow low pass filter cutoff +d1 $ s "hh*32" # cutoff (range 300 1000 $ slow 2 $ sine) # resonance "0.4" + +-- polymeters +d1 $ sound "{bd hh sn cp, arpy bass2 drum notes can}" +d1 $ sound "{arpy bass2 drum notes can, bd hh sn cp}" + +-- polymeter rhythm without base \o/ +d1 $ sound "{~ ~ ~ ~, arpy bass2 drum notes can,bd cp hh}" +-- but simplier, use %number of notes: +d1 $ sound "{arpy bass2 drum notes can}%4" + +-- shifting time +d1 $ every 3 (0.25 <~) $ sound "bd*2 cp*2 hh sn" +d1 $ every 3 (0.25 ~>) $ sound "bd*2 cp*2 hh sn" +d1 $ every 3 (0.0625 <~) $ sound "bd*2 cp*2 hh sn" +d1 $ every 3 (1000 ~>) $ sound "bd*2 cp*2 hh sn" +d1 $ every 3 (1000.125 ~>) $ sound "bd*2 cp*2 hh sn" +d1 $ "[0 0.25]/4" <~ (sound "bd*2 cp*2 hh sn") + +-- RANDOMNESS +d1 $ sound "arpy*4" # pan (rand) +d1 $ sound "arpy*4" # pan (range 0.25 0.75 $ rand) +d1 $ s "arpy*8" # n (irand 30) + +d1 $ sound "bd? sd? sd? sd?" +d1 $ sound "bd*16?" +d1 $ sound "bd sn? cp hh?" +d1 $ sound "[bd sn cp hh]?" + +-- append two patterns in alternating cycle + d1 $ append (sound "bd*2 sn") (sound "arpy jvbass*2") + d1 $ fastAppend (sound "bd*2 sn") (sound "arpy jvbass*2") diff --git a/tutorial/pihkal.tidal b/tutorial/pihkal.tidal new file mode 100644 index 0000000..3ee0fca --- /dev/null +++ b/tutorial/pihkal.tidal @@ -0,0 +1,28 @@ +setcps 0.8 + +hush + +d1 (chunk 2 (hurry 2) (sound "bd sn*2 cp")) + +d1 $ every 4 (chunk 2 (hurry 2)) $ s "kicklinn sn rs cp bd*2" + +-- polyrythms +d1 $ s "{lt ht mt, [rs*2] [rs*3]}%2" + +-- polymetre +d1 $ s "{lt ht mt, [rs*2] [rs*3]}%2" + +-- rythmic feet +d1 $ s "bd* sn . . cp" +-- note: parsing fails if number before . +-- Error in pattern: Syntax error in sequence: +-- "bd sn . lt*2 . cp" + -- ^ +-- unexpected " " +-- expecting digit + +-- Repeating steps with ! +-- Elongating steps with @ +d1 $ "[bd sn]@3 cp!3" + +d1 $ s "bd [sd bd cp]?0.2" -- libgit2 0.27.0