From 01f310d43e594125f71fef602c003d5ec55b5e14 Mon Sep 17 00:00:00 2001 From: Paul-Louis NECH Date: Mon, 15 Feb 2021 18:43:18 +0100 Subject: [PATCH] chore: Organize & document --- live/midi/nova/harder_crime.tidal | 115 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ live/midi/nova/tidal_crime.tidal | 8 +++++++- releases/premiere_lame.md | 36 ++++++++++++++++++++++++++++++++++-- samples.txt | 2 +- study/README.md | 10 ++++++++++ study/tidal-worksheets | 1 + study/tutorial/base.tidal | 52 ++++++++++++++++++++++++++++++++++++++++++++++++++++ study/tutorial/pihkal.tidal | 28 ++++++++++++++++++++++++++++ study/tutorial/technotuto.tidal | 62 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ study/val/retour.tidal | 38 ++++++++++++++++++++++++++++++++++++++ tidal-worksheets | 1 - tools/README.md | 5 +++++ tools/mute.tidal | 23 ++++++++++++----------- tools/tools.png | Bin 0 -> 387798 bytes tools/unmute.tidal | 23 ++++++++++++----------- tutorial/base.tidal | 52 ---------------------------------------------------- tutorial/pihkal.tidal | 28 ---------------------------- tutorial/technotuto.tidal | 62 -------------------------------------------------------------- 18 files changed, 377 insertions(+), 169 deletions(-) create mode 100644 live/midi/nova/harder_crime.tidal create mode 100644 study/README.md create mode 160000 study/tidal-worksheets create mode 100644 study/tutorial/base.tidal create mode 100644 study/tutorial/pihkal.tidal create mode 100644 study/tutorial/technotuto.tidal create mode 100644 study/val/retour.tidal delete mode 160000 tidal-worksheets create mode 100644 tools/README.md create mode 100644 tools/tools.png delete mode 100644 tutorial/base.tidal delete mode 100644 tutorial/pihkal.tidal delete mode 100644 tutorial/technotuto.tidal diff --git a/live/midi/nova/harder_crime.tidal b/live/midi/nova/harder_crime.tidal new file mode 100644 index 0000000..97d7ac8 --- /dev/null +++ b/live/midi/nova/harder_crime.tidal @@ -0,0 +1,115 @@ +-- Harder crime: Tidal crime variations with Raph (WIP) + +resetCycles + +once $ "dr" # gain 2 + +d8 + $ struct "t(5,8)" + $ arp "up" + $ note "" + # "bassWarsaw" + # gain 0.8 # crush 4 # room 0.34 + # octave 3 + +do +-- region Nova Utils +let gFactor = 1.2 +let gG a = (gain (gFactor * "^77" * a)) -- gain Global +let gM' l h a = (gG (range l h a)) -- gain Modéré +let gM a = (gM' 0.2 0.8 a) -- gain Modéré doux +let gLPF = (# lpf (min 10000 ((range 200 20000 ("^49"))))) +let gHPF = (# hpf (max 0 (min 7500 ((range "-7500" 7500 ("^49")))))) +let gDJF = (gLPF . gHPF) +let novaOn ch pat = (someCyclesBy ch pat) +let novaOff ch pat = someCyclesBy (1 - ch) pat +-- endregion Nova Utils +let sawHarmonic = pF "sawHarmonic" +let mix = pF "mix" +let modIndex = pF "modIndex" -- 0.2 +let g = gDJF +let gMix = ((# mix (range 0 20 "^53")) . (|* gain (range 1 0.7 "^53"))) +let gMod = ((# modIndex (range 0.2 100 "^33")) . (|* gain (range 1 0.6 "^33"))) +let gP = (gMix . gMod) +let keyboard = "FMRhodes1" +let pkey = "" +let prog = "" +setcps (110/60/4) +d1 $ g + -- $ mask "< t!12 f!4 t f!3 t!8>" + $ novaOff "^42" (<|"k . ~ k ~ ~") + $ novaOn "^42" (<| "k k k ") + $ "[jazz,cpu2]" + # lpf 4000 + # gM' 0 0.9 "^78" +d2 $ g + $ whenmod 16 8 (-- clap + superimpose ((# "clap") . (# lpf 200) . (# note "-0") + . (|* gain "<0.85 0.9 1!6>")) + ) + $ novaOn "^42" (<| "~ s ~ s*2") + $ novaOff "^42" (<| "~ s ~ s") + $ "sn:20" + # lpf 2000 + # gM' 0.2 0.9 "^79" +d3 $ g + $ novaOn ("^76") --BOUTON NASSIM + (slice 8 ("<[0 .. 7]!3 [0 1 2 ~ . 0 1 2 ~]>") . (loopAt 1) + . (>| "breaks125") . (|* gain 1.35) + ) + $ novaOff "^76" (|* gain (slow 16 $ range 0.7 1 saw)) + $ "d d d d d d d*2 d" + # "[drum:2,amencutup:5]" + # gM' 0 0.75 "^80" + # pan (slow 16 $ range 0.1 0.9 sine) + # room 0.2 # dry 0.99 +d4 $ g $ gP -- Gauche + $ mask "" -- TODO NOVA + $ struct "t . ~ t" + $ note (arp "updown" prog) + # keyboard + # gM' 0 1.2 ("^81" * range 0.8 1 sine) + # pan 0.45 +d5 $ g $ gP -- Droite 2/3 + $ whenmod 16 10 (-- TODO NOVA + superimpose (const + $ struct "[t t t ~] [t ~ . t] . ~" + $ note (slow 4 $ prog) + # keyboard + # pan 0.65 + # gM' 0 1 "^81" + )) + $ mask "" -- TODO NOVA + $ struct " . ~ <[t t][t t t]>" + $ note (slow 2 $ iter 4 $ prog) + # keyboard + # pan 0.55 + # gM' 0 0.9 "^81" +d6 $ g -- Horloge + $ fast 8 + $ note "<0 -2>" + # "drum:2" + # hpf 5000 + # hpq 0.3 + # room 0.1 # dry 0.98 + # gain ("^80" * 0.45) +d7 $ g + -- $ mask "" + $ (|> note (prog)) + $ note "[gs5 g5 gs5 ~] [g5 ~ . ] . <~ ~ [ ~ . ] [~ as5]> ~" + # "strings" + # sawHarmonic 1.9 + # pan 0.1 + # mix 0.8 + # gM' 0 0.8 "^83" + # room 0.2 +d8 $ g + $ novaOn "^90" (chop 16) + $ novaOn "^58" (+ note (slow 4 "<0 12>")) + $ note (pkey) + # "bassWarsaw" + # octave 3 + # voice (range 0.1 2 "^34") + # room 0.6 # sz 0.2 + # gM' 0.4 1 "^82" + # crush (range 10 3.6 "^54") diff --git a/live/midi/nova/tidal_crime.tidal b/live/midi/nova/tidal_crime.tidal index bec371c..28443c6 100644 --- a/live/midi/nova/tidal_crime.tidal +++ b/live/midi/nova/tidal_crime.tidal @@ -1,5 +1,10 @@ +-- Tidal crime Investigation +-- Published as https://m.soundcloud.com/parvagues/tidal-crime +-- Image original: [Stormy blue see in sunlight by Ben Mack](https://www.pexels.com/photo/stormy-blue-sea-in-sunlight-5326990/) + resetCycles +once $ "dr" # gain 1.2 do -- region Nova Utils @@ -91,13 +96,14 @@ d7 $ g # room 0.2 d8 $ g $ novaOn "^90" (chop 16) - $ novaOn "^58" (+ note (slow 4 s"<0 12>")) + $ novaOn "^58" (+ note (slow 4 "<0 12>")) $ note ("") # "bassWarsaw" # voice (range 0.1 2 "^34") # room 0.6 # sz 0.2 # gM' 0.4 1 "^82" # crush (range 10 3.6 "^54") + d9 $ note ("gs5(3,8)") # "supergong" # gM' 0 0.8 "^83" 11 │ //Standard Definitions diff --git a/releases/premiere_lame.md b/releases/premiere_lame.md index 9064b63..a752166 100644 --- a/releases/premiere_lame.md +++ b/releases/premiere_lame.md @@ -1,4 +1,36 @@ -# Content +# Released + **Courant alternatif** +> Tes tambours m'électrisent. + +- ISRC code GBSMU8430476 +- UPC/EAN code 5059594646243 + +## Jamendo +ParVagues, 2020. Disponible sous License CC-BY-SA. Contact email ParVagues at plnech.fr + + +Genre/subgenres (max 3) + dnb (drumnbass) + × + electrofunk + × + electronic + × +Relevant tags: instruments, mood, themes (max 7) + Drums + × + Computer + × + electricbass + × + Keyboard (synthesizer) + × + Energetic + × + positive (upbeat) + × + Percussion + × + -- Courant alternatif (instru Hip/dnb) - Pensif (instru pensif low-key) diff --git a/samples.txt b/samples.txt index e47e328..5375f0a 100644 --- a/samples.txt +++ b/samples.txt @@ -36,7 +36,7 @@ apad_mh -- Vibration bol bassWarsaw -- Bass guitar synth beating -- frequency oscillations combined blip1 -- Electric, kinda guitar-like blip -blueNoise -- Blue nooise: cymbal-like +blueNoise -- Blue noise: cymbal-like chaoscillator -- Blip-like cheapPiano1 -- synthetic piano clapElectro -- clap like hands diff --git a/study/README.md b/study/README.md new file mode 100644 index 0000000..5fc1d0e --- /dev/null +++ b/study/README.md @@ -0,0 +1,10 @@ +# Study +> Various studying material + +- `club` Lessons and copied bits from the [Tidal Club](club.tidalcycles.org/) +- `eric` Lessons from [Eric Fairbank's website](http://ericfairbanks.org/music/tidal/supercollider/code/2012/08/26/tidal-electro.html) +- `nova` Videos from [PV Nova](https://www.youtube.com/user/pvnova), exercices in various styles +- `tidal-worksheets` "A collection of tidalcycles worksheets designed for workshops, by Lucy Cheesman and Alex McLean +" +- `tutorial` sheets written while reading the [Tutorial](https://tidalcycles.org/index.php/Tutorial) +- `val` snippets from my friend Val diff --git a/study/tidal-worksheets b/study/tidal-worksheets new file mode 160000 index 0000000..63c3857 --- /dev/null +++ b/study/tidal-worksheets @@ -0,0 +1 @@ +Subproject commit 63c38572648d6d8c37163c1054aebb3316462fc9 diff --git a/study/tutorial/base.tidal b/study/tutorial/base.tidal new file mode 100644 index 0000000..d2906ab --- /dev/null +++ b/study/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/study/tutorial/pihkal.tidal b/study/tutorial/pihkal.tidal new file mode 100644 index 0000000..3ee0fca --- /dev/null +++ b/study/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" diff --git a/study/tutorial/technotuto.tidal b/study/tutorial/technotuto.tidal new file mode 100644 index 0000000..5e76801 --- /dev/null +++ b/study/tutorial/technotuto.tidal @@ -0,0 +1,62 @@ +-- From https://tidalcycles.org/index.php/Tutorial#Shifting_Time + +setcps 1 + +d1 +$ sometimes (hurry 2) +$ sometimes (off 0.5 (+ 0)) +$ every 4 (0.25 ~>) +$ whenmod 16 14 (# gain 0) +$ fast 2 +$ s "reverbkick" +# pan 0.2 +# gain 0.8 + +d2 +$ whenmod 16 13 (# gain 0.7) +$ every' 16 15 (fast 2) +$ every 16 (# gain 0.7) +$ every 16 (hurry 2) +$ fast 2 +$ s "hardkick:3" +# gain 0.5 +# pan 0.8 + +d3 +$ sometimesBy 0.2 (jux rev) +$ up "1(<2 <6 0>>,8)" +# s "glitch2" +# n 6 + +d4 +$ degradeBy 0.3 +$ sometimesBy 0.2 (jux rev) +$ sometimes (off 0 (# up 2)) +$ sometimes (off 0 (# up 5)) +$ rev +$ chop 8 $ s "moan" +# crush 5 +# pan (rand) +# gain 0.6 + +d5 +$ slow 2 +$ n "<0 3>/8" +# s "toys" + +-- Tuto area + +d1 $ every 8 (rev) $ every 4 (density 2) $ sound "bd hh sn cp" + +d1 $ whenmod 16 14 (# speed "2") $ sound "bd arpy*2 cp bass2" + +d1 $ whenmod 8 6 (const $ sound "arpy(3,8) bd*4") $ sound "bd sn bass2 sn" +d1 $ every 12 (const $ sound "bd*4 sn*2") $ sound "bd sn bass2 sn" + +-- Composing Multi-Part Patterns + +d1 $ every 4 (slow 2) $ whenmod 5 3 (# speed "0.75 1.5") $ stack [ + sound "bd bd*2", + sound "hh*2 [sn cp] cp future*4", + sound (samples "arpy*8" (run 16)) +] # speed "[[1 0.8], [1.5 2]*2]/3" diff --git a/study/val/retour.tidal b/study/val/retour.tidal new file mode 100644 index 0000000..929c796 --- /dev/null +++ b/study/val/retour.tidal @@ -0,0 +1,38 @@ +-- idm rythm + +once "dr" + +d4 $ degradeBy 0 $ n "~ 0 [~ 2] [<~ 0> 0]" # s "jazz" + -- # gain (range 0.9 1 rand) + -- # silence + +d5 $ sometimesBy 0.3 (ply (choose [2])) + -- $ (degradeBy 0) + $ inside 6 (someCycles (fast 2)) + $ s "peri*6" + # n (irand 6) + # gain (range 0.7 1 rand) + # cut 1 + -- # silence + +d7 + $ sometimesBy 0.4 (ply (choose [2,3,4])) + $ degradeBy 0 + $ n ("3 ~ 2 [4 ~]" + "<0 2 0 3>") # s "industrial" + # cut 1 + # gain 1 +-- # silence + +-- idm jazz part + +prog2 = "<0 3 9 7 5 4>" + +prog2 = "<5 6 4 2 8 0>" + +prog2 = "<0 4>" + +d8 $ s "made(<3 4 5 6 7 8 9 10>,12,<0 3 1 2>)" +# n "<11>" +# note (scale "aeolian" (prog2 - 7 + "[-7,0,<4 5 4>,7,<9 10>]")) +# gain 0.6 +# legato "2" -- "<1 1.25 1.5 2>" diff --git a/tidal-worksheets b/tidal-worksheets deleted file mode 160000 index 63c3857..0000000 --- a/tidal-worksheets +++ /dev/null @@ -1 +0,0 @@ -Subproject commit 63c38572648d6d8c37163c1054aebb3316462fc9 diff --git a/tools/README.md b/tools/README.md new file mode 100644 index 0000000..be61446 --- /dev/null +++ b/tools/README.md @@ -0,0 +1,5 @@ +# Tools +> utils blocks to [un]mute or [un]solo one or all tracks + +Used as a side panel which you can execute as one-liners or whole block: +![Screenshot](./tools.png) diff --git a/tools/mute.tidal b/tools/mute.tidal index 26681aa..defb3b1 100644 --- a/tools/mute.tidal +++ b/tools/mute.tidal @@ -1,11 +1,12 @@ -mute 1 -mute 2 -mute 3 -mute 4 -mute 5 -mute 6 -mute 7 -mute 8 -mute 9 -mute 10 -mute 11 +do + mute 1 + mute 2 + mute 3 + mute 4 + mute 5 + mute 6 + mute 7 + mute 8 + mute 9 + mute 10 + mute 11 diff --git a/tools/tools.png b/tools/tools.png new file mode 100644 index 0000000..c368a33 Binary files /dev/null and b/tools/tools.png differ diff --git a/tools/unmute.tidal b/tools/unmute.tidal index ea71c07..915c4ac 100644 --- a/tools/unmute.tidal +++ b/tools/unmute.tidal @@ -1,11 +1,12 @@ -unmute 1 -unmute 2 -unmute 3 -unmute 4 -unmute 5 -unmute 6 -unmute 7 -unmute 8 -unmute 9 -unmute 10 -unmute 11 +do + unmute 1 + unmute 2 + unmute 3 + unmute 4 + unmute 5 + unmute 6 + unmute 7 + unmute 8 + unmute 9 + unmute 10 + unmute 11 diff --git a/tutorial/base.tidal b/tutorial/base.tidal deleted file mode 100644 index d2906ab..0000000 --- a/tutorial/base.tidal +++ /dev/null @@ -1,52 +0,0 @@ -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 deleted file mode 100644 index 3ee0fca..0000000 --- a/tutorial/pihkal.tidal +++ /dev/null @@ -1,28 +0,0 @@ -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" diff --git a/tutorial/technotuto.tidal b/tutorial/technotuto.tidal deleted file mode 100644 index 5e76801..0000000 --- a/tutorial/technotuto.tidal +++ /dev/null @@ -1,62 +0,0 @@ --- From https://tidalcycles.org/index.php/Tutorial#Shifting_Time - -setcps 1 - -d1 -$ sometimes (hurry 2) -$ sometimes (off 0.5 (+ 0)) -$ every 4 (0.25 ~>) -$ whenmod 16 14 (# gain 0) -$ fast 2 -$ s "reverbkick" -# pan 0.2 -# gain 0.8 - -d2 -$ whenmod 16 13 (# gain 0.7) -$ every' 16 15 (fast 2) -$ every 16 (# gain 0.7) -$ every 16 (hurry 2) -$ fast 2 -$ s "hardkick:3" -# gain 0.5 -# pan 0.8 - -d3 -$ sometimesBy 0.2 (jux rev) -$ up "1(<2 <6 0>>,8)" -# s "glitch2" -# n 6 - -d4 -$ degradeBy 0.3 -$ sometimesBy 0.2 (jux rev) -$ sometimes (off 0 (# up 2)) -$ sometimes (off 0 (# up 5)) -$ rev -$ chop 8 $ s "moan" -# crush 5 -# pan (rand) -# gain 0.6 - -d5 -$ slow 2 -$ n "<0 3>/8" -# s "toys" - --- Tuto area - -d1 $ every 8 (rev) $ every 4 (density 2) $ sound "bd hh sn cp" - -d1 $ whenmod 16 14 (# speed "2") $ sound "bd arpy*2 cp bass2" - -d1 $ whenmod 8 6 (const $ sound "arpy(3,8) bd*4") $ sound "bd sn bass2 sn" -d1 $ every 12 (const $ sound "bd*4 sn*2") $ sound "bd sn bass2 sn" - --- Composing Multi-Part Patterns - -d1 $ every 4 (slow 2) $ whenmod 5 3 (# speed "0.75 1.5") $ stack [ - sound "bd bd*2", - sound "hh*2 [sn cp] cp future*4", - sound (samples "arpy*8" (run 16)) -] # speed "[[1 0.8], [1.5 2]*2]/3" -- libgit2 0.27.0