diff --git a/live/ambient/eroll_roll.tidal b/live/ambient/eroll_roll.tidal new file mode 100644 index 0000000..b2b8804 --- /dev/null +++ b/live/ambient/eroll_roll.tidal @@ -0,0 +1,83 @@ +-- TODO: Chords might not be best when matched with samples +do +-- resetCycles +let slideTime = pF "slideTime" +let width = pF "width" +let cutoff = pF "cutoff" +let preamp = pF "preamp" +let detune = pF "detune" +setcps (80/60/4) +d1 + $ mask "" + $ whenmod 32 24 (fast "<2!6 4 1>") + $ whenmod 32 16 (|* gain (slow 16 $ range 1 1.1 saw)) + $ "<[k . k(<3!3 5>,8,<0!8 3!8>)]!16 [k k k ]!15 [k k(5,8)]>" + # "[jazz,reverbkick]" + # gain 0.65 +d2 + $ fix (mask "" . (|* gain (range 0.8 0.95 saw)) + ) (n 1) + $ fix (mask "" -- Snare rolling + . (|* gain 0.9) + . (# cut 22) + ) (n 2) + $ fix (mask "" -- Hats + . (|* gain (slow 16 $ range 0.5 1.05 saw)) + . (|+ pan (sine/2))) + (n 3) + $ fix (mask "" -- Snare contretemps + . (|* gain 1.35)) + (n 6) + $ n (stack [ + "~ 0 ~ <0 [~ 0*2]>", + "1(<10 10 5 10>,16,<0!4 4!4>)", + "~ 2*<1 2 4 [8 4]>", + "3*[16 <4 8>]", + "[~ 6(<1 2 1 3>,<1 8>,<0 2 0 0>)]*2", + "" + ]) + # "amencutup" + # cut 2 + # gain 0.65 + # room 0.5 # dry 0.95 # sz 0.8 +d3 + $ mask "" + $ whenmod 4 3 (ply 2) + $ loopAt 2 + $ slice 4 (run 4) $ "fpiano:10" + # n "<10!6 11!2>" + # gain (slow 32 $ range 0.75 0.45 sine) + # pan 0.8 + # cut 3 +d4 + $ mask "" + $ loopAt 2 + $ slice 4 (run 4) $ "fbass:10" + # gain (slow 32 $ range 0.45 0.75 sine) + # pan 0.1 + # cut 4 +d5 + $ superimpose ( + slow 2 + . mask "" + . arpeggiate + . (|+ note (">" + 12)) + . (# pan 0.6) + ) + $ note "" + # "bassWarsaw" + # octave 3 + # slideTime 0.99 + # width 0.12 + # detune (1 + ("<0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8>" / 20)) + # cutoff 300 + # preamp 10 + # pan 0.8 + # gain 0.8 + +solo 5 + +once $ arpeggiate $ note ("d3" + "c'major'4") # "moogBass" # gain 0.85 +once $ arpeggiate $ note ("e3" + "c'major'4") # "moogBass" # gain 0.85 +once $ arpeggiate $ note ("f3" + "c'major'4") # "moogBass" # gain 0.85 +once $ arpeggiate $ note ("g3" + "c'dim7'4") # "moogBass" # gain 0.85 diff --git a/live/midi/nova/120_techoirs.tidal b/live/midi/nova/120_techoirs.tidal index b4a7492..901919b 100644 --- a/live/midi/nova/120_techoirs.tidal +++ b/live/midi/nova/120_techoirs.tidal @@ -21,64 +21,62 @@ import Controls do setcps (120/60/4) let gGain = "^77" -let gFilter = (# djf "^49") let gRoom = (|* room (range 0 0.5 "^29")) let gSize = (|* size (range 0 0.8 "^13")) -let gF = (gFilter . gSize . gRoom . (# dry 0.98)) let gG a = (gain (gGain * a)) -- gain Global let gM a = (gG (range 0.3 0.8 a)) let gM' l h a = (gG (range l h a)) +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 g = (gDJF . gSize . gRoom . (# dry 0.98)) +let novaOn ch pat = (sometimesBy ch pat) +let novaOff ch pat = sometimesBy (1 - ch) (pat) let prog = (" f'maj7!3 g'sus4>") -d1 $ gF +d1 $ g $ "jazz*4" # room 0.3 # dry 0.97 # gM' 0 1 "^78" -d2 $ gF - -- $ sometimesBy ("^51") (jux rev) - -- $ sometimesBy ("^31") (ply 2) +d2 $ g + $ sometimesBy ("^51") (jux rev) + $ sometimesBy ("^31") (ply 2) $ whenmod 4 3 (mask "t . t t f t") $ "[gretsch:4,drum:2]*[4 8]" - # pan (range 0.02 0.98 "^15") - # gM "^79" + # gM' 0.5 1.4 "^79" + # pan 0.6 # lpf 4000 -d3 $ gF - $ someCyclesBy ("^16") (juxBy 0.7 (rev . chop 8 .(# cut 31))) - $ someCyclesBy ("^32") (striate 16) +d3 $ g + $ novaOn ("^76") (rev . slice 4 (run 4)) + $ novaOn ("^44") (striate 16) $ someCyclesBy ("^52") ( slice 8 "[0 2 0 <6 4>]*2") $ "fbreak120:9" - # gM "^80" + # gM' 0.5 1.3 "^80" # lpf 5000 # cut 3 -d4 $ gF +d4 $ g $ superimpose ( - (|- note 24) - . arp "up" - . swing 2 - . (# gM "^82") - . (# crush 16) - ) - $ superimpose ( - (|+ note 12) + (|+ note 24) . chop (slow 4 "<1 2 4 8>") . arp "updown" - . (|* gain 0.8) + . (|* gain 0.9) ) - $ note (prog) + $ note prog # "bassWarsaw" - # gM "^81" - # lpf (range 100 10000 (segment 16 $ "^53")) + # gM' 0 1.1 "^81" # lpq "^33" # room 0.5 + # octave 3 # crush (range 10 4.5 "^17") # sz 0.8 -d7 $ gF +d7 $ g $ whenmod 16 8 (fast 2) $ "~ cp*<1!3 2>" - # gM "^83" + # note (-2) + # gM' 0.2 1.2 "^83" # room 0.2 # dry 0.99 # lpf 4000 -d8 $ gF -- CHOIRS +d8 $ g -- CHOIRS $ off "h" ( (|+ note 12) . (# legato "<0.75!3 0.5>") @@ -88,9 +86,9 @@ d8 $ gF -- CHOIRS $ superimpose (|+ note 12) $ note (prog) # "moogBass" - # octave 4 + # octave 3 -- # amp 0.5 - # room ("^20") # sz 0.75 + # crush (range 10 5.5 "^20") # hpf (range 0 10000 "^36") # cutoff (range 120 10000 "^56") - # gM' 0.45 0.9 "^84" + # gM' 0.45 1.2 "^84" diff --git a/live/midi/nova/FFF/grace.tidal b/live/midi/nova/FFF/grace.tidal index 6da2c32..a073c72 100644 --- a/live/midi/nova/FFF/grace.tidal +++ b/live/midi/nova/FFF/grace.tidal @@ -8,11 +8,14 @@ let gG a = (gain ("^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 10000 ((range "-9000" 9000 ("^49")))))) +let gHPF = (# hpf (max 0 (min 5000 ((range "-5000" 5000 ("^49")))))) let gDJF = (gLPF . gHPF) +let novaOn ch pat = (sometimesBy ch pat) +let novaOff ch pat = sometimesBy (1 - ch) (pat) let g = (gDJF) setcps (120/60/4) d1 -- Kick regulier degradé + $ g $ whenmod 16 12 (mask "t(1,4)") -- Respire -- $ whenmod 16 8 ( -- Double degradé -- sometimesBy "<0!2 0.25 [0.25 0.5]>" (fast 2 . degradeBy 0.2)) @@ -20,52 +23,62 @@ d1 -- Kick regulier degradé $ "k k k " # "[kick:5,house]" # note 2 - # gM' 0 0.9 "^78" + # gM' 0 1.4 "^78" d2 -- Cymbales gravitantes + $ g + $ novaOn "^43" (<| "h*16") $ whenmod 16 8 (jux (rev . (hurry "<2!3 0.5>"))) $ degradeBy "0 <0.5!6 0.25!2>!7" $ "ho:1*4 hc:3*4" # note ("<0!<3 2> -4 -8 <[-8 -4] -12>>") # room 0.2 # sz 0.4 # pan (slow 16 $ range 0.8 0.4 sine) - # gM' 0 0.85 "^79" + # gM' 0 1.5 "^79" d3 -- Drumroll ma foi bien classique + $ g $ fast "<4 8 [8 . 4 8] 8 <16 [16 4]>>" $ "dr" # pan (slow 16 $ range 0.9 0.4 cosine) - # gM' 0 0.85 "^80" + # gM' 0 1.5 "^80" d4 -- Bassline "maybe mad smirk smirk" + $ g $ loopAt 2 $ slice 8 ( stack [ - "0 1 2 3 4 5 6 7*<1 2 4 1>", -- TODO ','' then stack - (degradeBy ("^57") $ "0(3,8)"), -- Megamask! - (degradeBy ("^58") $ "0 0 0 0") -- MULTIMASK! + (sometimesBy "^89" (>| "0") + "0 1 2 3 4 5 6 7*<1 2 4 1>"), + (degradeBy (1 - "^57") $ "0(3,8)"), -- Megamask! + (degradeBy (1 - "^58") $ "0 0 0 0") -- MULTIMASK! ] ) $ s "fbass:8" - # gM' 0 0.95 "^81" + # gM' 0 2 "^81" # cut 6 # crush (range 16 5 "^53") d5 -- Chopped choir - $ sometimesBy "^59" (slow 2) -- TODO end: Rarefy + $ g + $ sometimesBy "^90" (slow 2) -- TODO end: Rarefy $ slice 8 ( whenmod 16 12 (|> "<0!2 2!2>*8") $ whenmod 16 8 (|> "0*4") $ - -- "0 1 2 3" -- Welcome! + ("0 1 2 3") -- Welcome! -- "0 <1!2 0!2> <2 7 6 3> <3 5>" -- WELCOME - "0 1 <0 2> [3 4]" -- Choeurs fous! + -- "0 1 <0 2> [3 4]" -- Choeurs fous! ) $ every' 4 3 (superimpose (# n 1) . (# legato "<1!3 2>")) $ "pray" + # cut 5 # legato 1 # pan "0.4 0.6" - # gM' 0 0.85 "^82" + # gM' 0 1.3 "^82" d7 -- Claps répartis + $ g + $ novaOn "^59" (fast 2) $ jux (# lpf 2000) - $ note "<-4!3 -8>" # "clap" + $ note "~ <-4!3 -8>" # "clap" # hpf 2000 - # gM' 0 0.85 "^83" + # gM' 0.4 1.5 "^83" # pan (range 0.3 0.7 perlin) + once $ s "fbass:10" # gain 0.8 diff --git a/live/midi/nova/FFF/mad_fonk.tidal b/live/midi/nova/FFF/mad_fonk.tidal index a8c30c9..ac471ec 100644 --- a/live/midi/nova/FFF/mad_fonk.tidal +++ b/live/midi/nova/FFF/mad_fonk.tidal @@ -7,77 +7,80 @@ resetCycles -- endregion do - solo 1 -- Kick - solo 2 -- Snare roll/rush - solo 3 -- Drumroll - solo 4 -- Bassline - solo 5 -- Guitare intro/pompe - unsolo 6 -- Epiano groovy - solo 7 -- Claps from grace + -- region Nova Utils + let gG a = (gain ("^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 = (sometimesBy ch pat) + let novaOff ch pat = sometimesBy (1 - ch) (pat) + -- endregion Nova Utils + let gDelayD = (# delay (range 0 5 "^13")) + let gDelayFB = (# delayfb (range 0 0.9 "^14")) + let gRoom = ((|+ room (range 0 0.5 "^29")) . (# dry 0.99)) + let gSize = (|+ size (min 0 (range "-0.5" 0.5 "^29"))) + let gDelay = (gDelayD . gDelayFB . (# delayt 0.25) . (# orbit 2)) + let g = (gDJF . gRoom) let bpm = 80 -- Que tu crois! setcps (bpm/60/4) - solo 10 -- NOISES - d10 $ funk_noise + -- d10 $ funk_noise d1 + $ g -- $ every' 8 7 (# lpf 200) -- region Pauses Hip-hop - -- $ whenmod 8 6 (juxBy 0.5 rev) + $ whenmod 8 6 (juxBy 0.5 rev) -- $ "k . k(<3 <5 4>>,8)" -- Le simple - -- $ "k*<1!4 2!4> . k(<3!3 <5 8>>,8)" -- L'agité -- region hardkick - -- $ whenmod 32 0 ( - -- superimpose ( - -- (# "hardkick:4") - -- . (sometimesBy "<0!3 0.5>" (stut 2 0.8 "s")) - -- . (# legato 0.9) - -- -- . (# note (-4)) - -- . (|* gain 0.65) - -- ) - -- ) + $ novaOn "^42" ( + superimpose ( + (# "hardkick:4") + . (sometimesBy "<0!3 0.5>" (stut 2 0.8 "s")) + . (# legato 0.9) + -- . (# note (-4)) + . (|* gain 0.65) + ) + ) -- region INTRO/Run -- $ slow 2 -- intro -- $ whenmod 8 6 (# silence) - $ "k k k k k k k " - # "[jazz,tech:6]" - # gain 1.1 + $ novaOn "^41" (<|"k k k k k k k ") + $ novaOff "^41" (<|"k . k(<3 5>,8)") -- L'agité + $ "[cpu,jazz]" + # gM' 0 2 "^78" # pan 0.45 - d2 + d2 $ g $ slow 2 - $ someCycles (hurry 2) + $ someCyclesBy "^31" (hurry 2) $ juxBy 0.75 (rev . sometimes (mask "t(16,16)" . ply 2)) - -- region Manual snare rush - $ "~ s*<1 <2 <4 <8 [8 16]>>>>" - # "snare:3" - # note ("<0 -1 -2 -3>") - # gain 0.9 + $ novaOn "^43" (<| "~ s*<1 <2 <4 <8 [8 16]>>>>") + $ novaOff "^43" (<| "~ s*[4 8]") + $ "snare:3" + # gM' 0 1.5 "^79" # pan (slow 8 $ range 0.4 0.8 sine) - d3 -- Drumroll + d3 $ g -- Drumroll -- $ slow 8 -- TODO IN/OUTRO - $ fast (slow 8 "<1 [2 [2|4]] 4 [4 8]>" ) - $ ply "2 <4 8>" $ "drum:8" - # gain (slow 4 $ range 1.2 1.3 saw) + -- $ fast (slow 8 "<1 [2 [2|4]] 4 [4 8]>" ) + $ novaOn ("^76") (slice 8 (run "<8!3 16> 16") . (loopAt 0.5) . (>| "breaks165")) + $ ply "2 <4 8>" $ "drum:2" + # gM' 0.3 1.5 "^80" # pan (slow 8 $ range 0.2 0.6 cosine) - d4 -- Bassline + d4 $ g -- Bassline $ juxBy 0.5 id $ slow 2 -- $ whenmod 16 8 ( -- region reverse cowgirl - -- sometimesBy "0 1" rev) - $ slice 8 - ( - -- iter (slow 2 "<2 4>") $ - -- run 8 -- Classique: jumpy groovy - "0*4 <1 2 3> <2 3 1> <1 2 3> 4 5 6 7*2"-- HAVE FUN - -- "<0!3 1>*2 3*2 <0 1> 4*<2 4 8>" -- Jumpy rappel - -- "<0 4 0 0*2> 4 <0 1 2 3> <0 4!2>" -- Attente - -- "<0!3 <1 2>>*8" -- COME ON CRUSH - ) + $ sometimesBy "^89" rev + $ novaOn "^58" (slice 8 $ "<0!3 1>*2 3*2 <0 1> 4*<2 4 8>") -- Jumpy rappel + $ novaOn "^57" (slice 8 $ "<0!3 <1 2>>*8") -- COME ON CRUSH + $ novaOff "^57" (slice 8 $ run 8) -- Classique: jumpy groovy $ "fbass:8" # legato 1 - -- # crush (3.5 + "6 <5 4>") -- CRUSH THIS - # gain 1 + # crush (range 10 3.5 "^53") -- CRUSH THIS + # gM' 0 1.5 "^81" # pan 0.6 - d5 -- Guitare pompe + d5 $ g $ gDelay -- Guitare pompe -- region Guitare pompe $ slice 8 (cat [ "0*4", @@ -96,34 +99,33 @@ do -- "0(<1 4>,<1 4 8>) . [1*<1 2 4>, 3(<1 3 5>,8)]" -- ) $ n 11 # "fguitar" + # crush (range 10 5.5 "^54") -- CRUSH THIS -- # crush 5.5 -- TODO CRUSH THIS! 12 - 4 - 5 # cut 8 - # gain (slow 64 $ range - -- 0.7 0.9 - 1.2 1.4 - cosine) + # gM' 0.3 1.5 "^82" # pan 0.3 - d6 -- Epiano groovy + d6 $ g -- Epiano groovy + $ sometimesBy "^35" (scramble 8) + $ sometimesBy "^55" (off "e" ((# cut 61) . (|* gain 0.9))) -- $ whenmod 32 16 (whenmod 4 2 (jux rev)) -- TODO variations once introduced - $ slow 2 + $ novaOff "^91" (slow 2) -- $ mask "f(<1!16 2!16>,2,<1!4 0!4>)" -- TODO INTRO MASK THIS - $ slice 8 ( - "0 3 2 1 4 5 6 7*<1 2>" -- regulier - -- "0 3 2 1 0 3 <2 6> 7" -- variant - -- "3*4 <0 5> 0 <3 4>*2 0*2 5 0 4" -- TODO FREESTYLE + $ novaOn "^59" (slice 8 "0 3 2 1 0 3 <2 6> 7") -- variant + $ novaOff "^59" (slice 8 "0 3 2 1 4 5 6 7*<1 2>") -- regulier -- "3*4 <0 5> 0 <3 4>*2 0*2 5 0 4" -- TODO FREESTYLE + -- $ slice 8 "3*4 <0 5> 0 <3 4>*2 0*2 5 0 4" -- TODO FREESTYLE -- "0 1 2 [3*<4 2>]!4 [5 <4 5>]" -- "2*4 3*4 5(3,8)" -- "0 3 2 1!5" -- repeat aigu -- "5!7 7" -- END OF FILE -- "4!5 5 6 7*<1 2>" -- repeat end - ) + -- ) $ s "fepiano" # n (slow 8 "<24 25>") - # gain 0.9 -- 0.99 -- TODO OUTRO 0.7 0.67 0.57 0.47 0.37 + # gM' 0.3 1.5 "^83" # cut 6 # pan 0.7 - d7 $ fast 2 $ s "clap" + d7 $ g $ fast 2 $ s "clap" # lpf 2000 - # gain (slow 16 $ range 0.8 1.1 saw) + # gM' 0.3 1.5 "^84" # room 0.4 diff --git a/live/midi/nova/FFF/pray.tidal b/live/midi/nova/FFF/pray.tidal index 49ba46e..515cbd7 100644 --- a/live/midi/nova/FFF/pray.tidal +++ b/live/midi/nova/FFF/pray.tidal @@ -6,6 +6,8 @@ resetCycles (* 2 (/ 4 8)) +once $ "fbass" + once $ fast 4 $ "dr*4" do @@ -13,21 +15,23 @@ let gG a = (gain ("^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 10000 ((range "-9000" 9000 ("^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) let g = (gDJF) setcps (60/60/4) d1 $ g -- KICK $ whenmod 8 6 (# silence) - -- $ mask "t(11,12)" . fast "<2!6 4 2>" -- Folie - $ "k([1|2|5],8) . k(<3 5>,8)" -- Le classique - -- $ "k*<1!8 2!8> . k(<0 1 0 1 3 5 5 8>,8,<0!3 2>)" -- L'annonce - # "[reverbkick,jazz]" + -- $ novaOn "^74" (mask "t(11,12)" . fast "<2!6 4 2>") -- Folie + $ novaOn "^42" (<| "k*<1!8 2!8> . k(<0 1 0 1 3 5 5 8>,8,<0!3 2>)") -- L'annonce + $ "k(<1 [1|2|5]>,8) . k(<3 5>,8)" -- Le classique + # "reverbkick" # room 0.2 # pan 0.4 # lpf ("<5!3 <2 0.5>>" * 1000) - # gM' 0 0.9 "^78" + # gM' 0.2 1.5 "^78" d4 $ g -- BREAKBEAT $ someCyclesBy "^74" -- Intro (slice 8 "0 4") @@ -35,148 +39,50 @@ d4 $ g -- BREAKBEAT (slice 8 "0 <1 1(<3 5>,8,<0 4>)> 2 3(<3 5>,8)") $ someCyclesBy "^76" -- Fulltime! (slice 8 "0 1 2 <3!2 ~ 3> 4 5 6 7*<1 <2 4>>") - $ loopAt 1 + $ loopAt 1 $ slice 8 (run 8) $ "break:1" - # gM' 0 0.85 "^79" + # gM' 0 1.8 "^79" # cut 4 d2 $ g -- Snares gretscha $ someCyclesBy "^44" ( (whenmod 16 8 (# lpf (slow 8 $ range 15000 1000 saw)) . hurry 2 - . (|* gain 1.2) + . (|* gain 1.1) ) ) $ fast 2 $ n ("6(<4 <3 5>>,8)") # "gretsch" - # gM' 0 0.8 "^80" + # pan 0.3 + # gM' 0.2 1.4 "^80" d3 $ g -- Metal drumroll $ someCyclesBy "^60" (fast "1 . 2 4") $ "gretsch*<8!3 [16 . [16 | 32]]>" # n "[4|5]" # note ("<-2 -4 -2 0>") # gM' 0 0.9 "^84" -d5 $ g -- Fragments of Wiley - $ someCyclesBy "^58" (slow 4) +d5 -- Fragments of Wiley + $ (# lpf (range 5000 200 "^54")) + $ g + $ novaOn "^90" (chop 16) + $ novaOn "^58" (slow 4) $ "pray" -- TODO INTRO then /4 - # lpf (range 10000 200 "^54") - # waveloss (range 65 5 "^34") - -- TODO INTRO WAVELOSS/gain 65 45 25 12.5 + # crush (range 10 2.5 "^54") # n "<0!4 1!8>" # cut 5 - # gM' 0 0.9 "^82" + # pan 0.8 + # gM' 0 1.5 "^82" +d6 + $ superimpose (arp "" . fast 2 . (|- note 12)) + $ note ("[e3,<~ gs4!2 b4>,e4] [fs3,fs4]") + # "FMRhodes1" + # rel (range 0.2 1 "^53") + # amp (range 0.4 0.8 "^81") + # gM' 0.8 1.6 "^81" d7 $ g $ fast 2 $ whenmod 32 16 (whenmod 4 3 (ply "<2 3 [2 4] [3 2]>")) $ whenmod 16 8 (every' 4 0 (off "-0.125" id)) - $ s "clap" + $ s "~ clap" # gain 0.75 # room 0.5 # size 0.4 # dry 0.95 # gM' 0 0.9 "^83" - - resetCycles - - - --- Good Morning Minneapolis --- TODO Note default knob values --- >1A 2A 3A 4A 5A 6A 7A 8A UP DOWN --- >1B 2B 3B 4B 5B 6B 7B 8B L R --- `29 30 31 32 33 34 35 36 106 107` --- >1C 2C 3C 4C 5C 6C 7C 8C --- `49 50 51 52 53 54 55 56` - --- Dlay XXX XXX XXX XXX XXX XXX freqGuns --- HPF XXX XXX XXX crBass XXX spdFire spdGuns --- LPF XXX Stut Pan gSiren XXX stutCP gGuns --- G Kick Sn DrRoll Bass Piano CP Fire --- X XXX Stut Wait/Run XXX XXX XXX XXX -once $ "dr" # gain 0.8 - --- let g = id -let melody = " d4'min>" -let melodyFirst = " d3>" -setcps 0.5 -d1 $ g - $ s "k . k(<1 <3 5>>,8,<0 4>)" -- Hip beat - -- $ whenmod 16 10 (slow "<4!4 2>") $ s "k k " -- TECHNO - # "reverbkick" -d2 $ g - $ mask " . t" - $ sometimesBy ("^43") -- Stut - (mask "t(<8!2 12!2>,16)" . stut 4 0.9 "s") - $ every' 8 7 (mask "f t!3" . jux rev) - $ s "~ s ~ <~!4 s!4> ~ s*2 ~ s*2" - # s "snare:20" - # gM' 0 0.8 "^79" - # pan 0.3 -d3 $ g -- Drumroll opposé hit roll - $ sometimesBy (1 - "^44") (fast "<4!3 <2 [2 <8 [8 16]>]>>") -- Waiting roll - $ sometimesBy ("^44") (fast "<16!3 [16 8]> [8 <8!3 16>]") -- Running roll - $ s "drum:8" - # pan (slow 8 $ range 0.1 0.9 (sine + "^52")) - # gM' 0 1 "^80" -d6 $ g -- Hit roll opposé drumroll - $ every' 4 3 ( -- acceleration + cymbale - fast "2 1" . (# n "0!3 1") - . (|* gain "1!3 <0.65 0.8>") - ) - $ s "hh(<3!4 5!4>,8)" - # gM' 0 0 "^80" - # pan 0.7 -d4 $ g - -- $ degradeBy "0 0.9!7" -- OUTRO - $ mask "t(<1 2!2 4>,4)" - $ superimpose ( - often (off 0.125 (|+ note "<0!3 12>")) - . arp (slow 8 $ "") - . (|+ note 36) - . (# sustain 0.5) - . (|* velocity 1.1) - . (# room 0.2) - . (# sz 0.8) - . (|+ pan 0.15) - ) - $ note (melody) - # s "superpiano" - # gM' 0 0.9 "^82" - # velocity 0.55 - # sustain 1 - # room 0.4 # size 0.2 - # pan 0.5 -d5 $ g -- Basse + Sirene - $ sometimesBy ("^57") ( -- TECHNOPHILE - chop 4 - . often (ply 4) - . (# crush (range 16 3 "^33")) - ) - $ superimpose ( - slow 4 - . (# s "supersiren") - . (-| note 12) -- 24 when crushed - . (# gM' 0 0.8 (( - "^81" -- gain bass - * (range 0.6 0.9 "^53") -- Modulated 5C - ) - - (0.125 * "^57") -- When TECHNOPHILE - )) - . (# room 0.5) - . (# size 0.8) - ) - $ note ( - "0*2 0 . 0 <7 5 5 7> ~ 0" - + melodyFirst - ) - # s "supersaw" - # voice 0.02 - # crush (range 16 3.5 "^33") - # gM' 0 0.8 "^81" - # pan (slow 10 $ range 0.6 0.8 sine) -d7 $ g -- Claps fantome - $ sometimesBy (range 0 0.25 "^55") (stut 4 0.9 "s") - $ s "~ . cp*<1 1 2 1 1!3 2> ~" - # room 0.2 - # sz (range 0.5 0.9 perlin) - # dry 1.05 - # gM' 0 0.7 "^83" - # lpf 2000 - # pan (slow 8 $ range 0.45 0.65 saw) diff --git a/live/midi/nova/breaks.tidal b/live/midi/nova/breaks.tidal new file mode 100644 index 0000000..137338e --- /dev/null +++ b/live/midi/nova/breaks.tidal @@ -0,0 +1,35 @@ + +d1 $ "dr*8" # gain "^80" + +do +-- region Nova Utils +let gG a = (gain ("^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 = (sometimesBy ch pat) +let novaOff ch pat = sometimesBy (1 - ch) (pat) +-- endregion Nova Utils +let gDelayD = (# delay (range 0 5 "^13")) +let gDelayFB = (# delayfb (range 0 0.9 "^14")) +let gRoom = ((|+ room (range 0 0.5 "^29")) . (# dry 0.99)) +let gSize = (|+ size (min 0 (range "-0.5" 0.5 "^29"))) +let gDelay = (gDelayD . gDelayFB . (# delayt 0.25) . (# orbit 2)) +let g = (gDJF . gRoom) +let chords = "<[a5,c5,e5] [e4,g4,b4]>" +setcps (80/60/4) +d1 + $ g + $ sometimesBy (range 0 1 "^50 ^51 ^52 ^53") (# silence) + $ slice 16 (run 16) + $ "fbreak80:4" + -- $ note (scale "aeolian" $ run 4) + -- # "superpiano" # velocity 0.8 + # gM' 0 1.3 "^79" + # room 0.6 # size 0.5 # dry 1 + # cut 1 +d3 + $ novaOn "^44" (fast "2 <2 [4 2]>") + $ "dr*8"# gM' 0 1 "^80" diff --git a/live/midi/nova/computer_riddim.tidal b/live/midi/nova/computer_riddim.tidal index 067b6e2..4bab8f4 100644 --- a/live/midi/nova/computer_riddim.tidal +++ b/live/midi/nova/computer_riddim.tidal @@ -17,9 +17,9 @@ let novaOff ch pat = sometimesBy (1 - ch) (pat) -- endregion Nova Utils let gDelayD = (# delay (range 0 5 "^13")) let gDelayFB = (# delayfb (range 0 0.9 "^14")) -let gRoom = (|+ room (range 0 0.5 "^29")) +let gRoom = ((|+ room (range 0 0.5 "^29")) . (# dry 0.99)) let gSize = (|+ size (min 0 (range "-0.5" 0.5 "^29"))) -let gDelay = (gDelayD . gDelayFB . (# delayt 0.25) . (# orbit 2) . novaOn "^90" (# silence)) +let gDelay = (gDelayD . gDelayFB . (# delayt 0.25) . (# orbit 2)) let g = (gDJF . gRoom) let chords = "<[a5,c5,e5] [e4,g4,b4]>" setcps (140/60/4) -- keep it between 110-190 BPM. You won't be sorry you did. @@ -28,7 +28,6 @@ d1 $ g -- Kick $ superimpose ((# "kick:5") . (# crush (range 6 2.5 "^50")) - -- . (# note (-2)) . (|* gain (range 0 1 "^50"))) $ novaOn "^73" (<| "~ ~ k ~") -- 1D $ novaOn "^74" (<| "k*2") -- 2D @@ -106,7 +105,8 @@ d8 -- Trompette lancinante $ g $ gDelay $ novaOn "^59" (mask "") $ note (" bf d ~]> " + "0 <12 0>") - # "brass" # n "2" # gM' 0.2 0.85 ("^55") + # "brass" # n "2" + # gM' 0.2 0.85 ("^55") # attack 0.5 # cut 8 d9 -- CP $ sometimesBy "^59" (fast 2) @@ -122,12 +122,6 @@ d9 -- CP once $ "brass:4" # gain 0.6 # cut 1 -d8 -- Trompette lancinante - $ slow 2 $ note ("~ ~") - # "superhammond" # voice "8" # octave 5 - # gain 0.6 - # cut 8 # room 0.1 - -- TODO: BELOW COPIED FROM MINNEAPOLIS d6 $ g -- $ every' 4 3 ( -- acceleration + cymbale diff --git a/live/midi/nova/computer_riddub.tidal b/live/midi/nova/computer_riddub.tidal new file mode 100644 index 0000000..b72adae --- /dev/null +++ b/live/midi/nova/computer_riddub.tidal @@ -0,0 +1,209 @@ +-- Computer Riddim!# +-- Following instructions in http://studio.dubroom.org/tutorials-computerdub15.htm +-- Skipped: Chap 18 (Why?) +-- Skipped: Chap 21 (Too complex, rather live synth) +-- TODO: Chap 22 - From reggae to dub + +do +-- region Nova Utils +let gG a = (gain ("^77" * a * 1.5)) -- 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 = (sometimesBy ch pat) +let novaOff ch pat = sometimesBy (1 - ch) (pat) +-- endregion Nova Utils +let gDelayD = (# delay (range 0 5 "^13")) +let gDelayFB = (# delayfb (range 0 0.9 "^14")) +let gRoom = ((|+ room (range 0 0.5 "^29")) . (# dry 0.99)) +let gSize = (|+ size (min 0 (range "-0.5" 0.5 "^29"))) +let gDelay = (gDelayD . gDelayFB . (# delayt 0.25) . (# orbit 2)) +let g = (gDJF . gRoom) +let chords = "<[a5,c5,e5] [e4,g4,b4]>" +setcps (140/60/4) -- keep it between 110-190 BPM. You won't be sorry you did. +-- resetCycles +d1 + $ g -- Kick + $ superimpose ((# "kick:5") + . (# crush (range 6 2.5 "^50")) + . (|* gain (range 0 1 "^50"))) + $ novaOn "^73" (<| "~ ~ k ~") -- 1D + $ novaOn "^74" (<| "k*2") -- 2D + $ novaOn "^75" (<| "k ~ ~ <~!3 k>. k ~ <~ k> ")-- RubADub+adjustements + $ novaOn "^41" (<| "k*4") -- 4F + $ novaOff "^41" (<| "k . k <~ [<~ k> ]>")-- RubADub + $ "[jazz,tech:5]" + # room 0.05 + # gM' 0 1.05 "^78" +d2 + $ g -- Snare + $ (|- lpf 1000) + $ (|/ lpf 2) + $ novaOn "^43" (|<| "s*4") + $ "~ <~!7 s> ~ ~ . s" + # "[snare:50,snare:4]" + # orbit 1 + # gM' 0.2 0.9 "^79" +d3 $ g -- Hats + $ every' 4 3 ( + sometimesBy "0 . 1 0!3" ((# "ho:2") . (|* gain 0.9)) + . sometimesBy "0 . 0 1 0 0" (|* gain 0) + ) + $ novaOn ("^76") (slice 8 (run 8) . (loopAt 1) . (>| "breaks165")) + $ novaOn ("^44") (<|"h*8") -- TODO Eclaircir + $ novaOff ("^44") (<| "h*[8 . 8 <8 16 32 4>]") + $ (|* gain "[1 0.9]*4") -- make sure that you reduce the velocity of the second Hi Hat hit + $ s "gretsch:4" + # cut 3 + # orbit 1 + # gM' 0.2 1.5 "^80" +d4 $ g -- Bassline + $ novaOn "^57" (>| note "[~ a4] [~ ] ") -- Naif + $ novaOff "^57" (>| note "<[~ a4@1.5 . a4 a4 e c] [e e . b4*<1 <2 4>>]>") -- simple+adjustements + $ note "0" # "bass1:3" + # cut 4 + # pan 0.2 + # attack (range 0 1 "^53") + # crush (range 16 4 "^53") + # release 0.95 + # orbit 1 + # gM' 0.25 1.2 "^81" +d5 $ g $ gDelay -- Skank Piano + $ whenmod 4 3 (sometimesBy "0 1 . 0" ( + (# note "[d5,g4,b4]") . (|* gain 0.8) + )) + $ "<[~ p*<1 1 1 <1 2>> ~ p*<1 1 2 1>]>" + -- TODO FIX ALIGNMENT CONTRETEMPS DE LA REPETITION + -- $ "<[~ p p] [~ [p <~ p*<1 2>>] . ~ p]>" + # "superpiano" + # note chords + # velocity 0.6 + # sustain 0.34 + # release 0.8 + # room 0.13 # sz 0.4 + # pan 0.4 + # gM' 0 1 ("^82" * (range 0.25 1.5 "^54")) +d6 $ g $ gDelay-- Skank Hammond + $ ("0.125" ~>) + $ fast 2 + $ note (("[0 12 0 <~!6 12!2>]" |+ (slow 2 chords))) + # "superhammond" + # gM' 0 0.8 ("[0 0.25 0 0]" |+ "^82" * (range 0 0.9 "^34")) + # voice 6 + # octave 6 + # sustain 0.25 +d7 + $ g $ gDelay -- Skank Guitar + $ note "[~ ]*2" + # "pluck:5" + # octave 5 + # gM' 0 1 ("^82" * ((range 0.25 1.5 "^18"))) +d8 -- Trompette lancinante + $ g $ gDelay + $ novaOn "^59" (mask "") + $ note (" bf d ~]> " + "0 <12 0>") + # "brass" # n "2" + # gM' 0.2 0.85 ("^55") + # attack 0.5 # cut 8 +d9 -- CP + $ sometimesBy "^59" (fast 2) + $ (# lpf 2000) + $ g + $ whenmod 4 2 (superimpose ((# "clap") . (# lpf 4500) . (|* gain 0.8))) + $ fast 2 + $ "~ cp" + # gM' 0 1.1 "^83" + # room 0.2 + # dry 0.9 + # lpf 2000 + +once $ "brass:4" # gain 0.6 # cut 1 + +-- TODO: BELOW COPIED FROM MINNEAPOLIS +d6 $ g -- + $ every' 4 3 ( -- acceleration + cymbale + fast "2 1" . (# n "0!3 1") + . (|* gain "1!3 <0.65 0.8>") + ) + $ s "hh(<3!4 5!4>,8)" + # gM' 0 0 "^80" + # pan 0.7 +d4 $ g + -- $ degradeBy "0 0.9!7" -- OUTRO + $ mask "t(<1 2!2 4>,4)" + $ superimpose ( + often (off 0.125 (|+ note "<0!3 12>")) + . arp (slow 8 $ "") + . (|+ note 36) + . (# sustain 0.5) + . (|* velocity 1.1) + . (# sz 0.8) + . (|+ pan 0.15) + ) + $ note (melody) + # s "superpiano" + # gM' 0 1 "^82" + # velocity 0.55 + # sustain 1 + # room 0.4 # size 0.2 + # pan 0.5 +d5 $ g -- Basse + Sirene + $ sometimesBy ("^57") ( -- TECHNOPHILE + chop 4 + . often (ply 4) + -- . (# crush (range 16 3.5 "^33")) + ) + $ superimpose ( + slow 4 + . (# s "supersiren") + . (-| note 12) -- 24 when crushed + . (# gM' 0 0.8 (( + "^81" -- gain bass + * (range 0.6 0.9 "^53") -- Modulated 5C + ) + - (0.125 * "^57") -- When TECHNOPHILE + )) + . (# room 0.5) + . (# size 0.8) + ) + $ note ( + "0*2 0 . 0 <7 5 5 7> ~ 0" + + melodyFirst + ) + # s "supersaw" + # voice 0.02 + # crush (range 16 3.5 "^33") + # gM' 0 0.8 "^81" + # pan (slow 10 $ range 0.6 0.8 sine) +d7 $ g -- Claps fantomes + $ s "~ . cp*<1 1 2 1 1!3 2> ~" + # room (range 0.2 0.95 "^55") + # sz (range 0.5 0.9 perlin) + # dry 1.05 + # gM' 0 1 "^83" + # pan (slow 8 $ range 0.45 0.65 saw) +d8 $ g -- Gunfire + $ sometimesBy "^20" ( + superimpose (const -- pistolets + $ sometimes ( -- réplique + off 0.5 (|+ gain 0.1) + . (# room 0.25) + ) + $ often (stut 2 0.85 (1/16)) -- écho + $ s "~ ~ ~ snare:57" + # speed (range 0.4 1 ("^36" + perlin/4)) + # gM' 0 1 ("^56") + # cut 80 + # dry 1.02 + # pan (range 0.2 0.8 perlin) + ) + ) + $ s "fire" + # begin (slow 4 "<0 0.2 0.5>") + # cut 8 + # room 0.6 # size 0.4 + # speed (range 0.5 1 ("^35" + perlin/4)) + # gM "^84" + # delay 0.3 # delaytime (1/3) # delayfb 0.8 diff --git a/live/midi/nova/dnb/anniv.tidal b/live/midi/nova/dnb/anniv.tidal new file mode 100644 index 0000000..0f8bf40 --- /dev/null +++ b/live/midi/nova/dnb/anniv.tidal @@ -0,0 +1,121 @@ +-- TODO: DNB Anniv etienne with nass + +do +-- region Nova Utils +let gFactor = 1.3 +let gG a = (gain ("^77" * a * gFactor)) -- 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 = (sometimesBy ch pat) +let novaOff ch pat = sometimesBy (1 - ch) (pat) +let novaIf ch patIf patElse = (sometimesBy ch (>| patIf) patElse) +-- endregion Nova Utils +let gDelayD = (# delay (range 0 5 "^13")) +let gDelayFB = (# delayfb (range 0 0.9 "^14")) +let gRoom = ((|+ room (range 0 0.5 "^29")) . (# dry 0.99)) +let gSize = (|+ size (min 0 (range "-0.5" 0.5 "^29"))) +let gDelay = (gDelayD . gDelayFB . (# delayt 0.25) . (# orbit 2)) +let g = (gDJF . gRoom) +let chords = "" +setcps (165/60/4) -- keep it between 110-190 BPM. You won't be sorry you did. +-- resetCycles +d1 $ g -- Kick + $ superimpose ((# "kick:5") + . (# crush (range 6 2.5 "^50")) + -- . (# note (-2)) + . (|* gain (range 0 1 "^50"))) + $ novaOn "^73" (<| "~ ~ k ~") -- 1D + $ novaOn "^74" (<| "k*2") -- 2D + $ novaOn "^41" (<| "k*4") -- 4F + $ novaOff "^41" (<| "k . ~ k ~ ~")-- DNB + $ novaOn "^75" (fast 2)-- FASTER + $ "[jazz,cpu2]" + # room 0.05 + # gM' 0 1.5 "^78" +d2 + $ g -- Snare + $ novaOn "^43" (|<| "s*4") + $ "~ s ~ s*<1!3 2 2 2 [2 1] 1>" + # "[sn:20,snare:8]" + # note (range "-12" 4 "^51") + # orbit 1 + # gM' 0.2 0.9 "^79" + +d3 $ g -- Hats + $ novaOn ("^76") (slice 8 (run 8) . (loopAt 1) . (>| "breaks165")) + $ novaOn ("^44") (<|"h*8") -- TODO Eclaircir + $ novaOff ("^44") (<| "h*[8 . 8 <8 16 32 4>]") + $ (|* gain "[1 0.9]*4") -- make sure that you reduce the velocity of the second Hi Hat hit + $ s "gretsch:4" + # cut 3 + # orbit 1 + # gM' 0.2 1.5 "^80" +d9 -- CP + $ sometimesBy "^59" (fast 2) + $ (# lpf 2000) + $ g + $ whenmod 4 2 (superimpose ((# "clap") . (# lpf 4500) . (|* gain 0.8))) + $ fast 2 + $ "~ cp" + # gM' 0 1.1 "^83" + # room 0.2 + # dry 0.9 + # lpf 2000 +d4 + $ g + $ novaOn "^57" (fast "<2!3 4>") + $ splice 4 "<2!3 3>" + $ "fbass:57" + # dry (range 0.5 1.5 "^17") + # attack (range 0.5 1.5 "^33") + # crush (range 10 3.5 "^53") + # orbit 1 + # gM' 0.25 1.25 "^81" + # cut 4 +d5 + $ g + $ slice 8 ("<0!4 4!4 0 0 4 4 0 4 0 4>" + "0 1 2 3") + $ "fguitar:58" + # gM' 0 1 ("^82" * (range 0.25 1.5 "^54")) + # cut 5 + +-- TODO RECYCLE + +d5 $ g $ gDelay -- Skank Piano + $ whenmod 4 3 (sometimesBy "0 1 . 0" ( + (# note "[d5,g4,b4]") . (|* gain 0.8) + )) + $ "<[~ p*<1 1 1 <1 2>> ~ p*<1 1 2 1>]>" + # "superpiano" + # note chords + # velocity 0.6 + # sustain 0.34 + # release 0.8 + # room 0.13 # sz 0.4 + # pan 0.4 + # gM' 0 1 ("^82" * (range 0.25 1.5 "^54")) +d6 $ g $ gDelay-- Skank Hammond + $ ("0.125" ~>) + $ fast 2 + $ note (("[0 12 0 <~!6 12!2>]" |+ (slow 2 chords))) + # "superhammond" + # gM' 0 0.8 ("[0 0.25 0 0]" |+ "^82" * (range 0 0.9 "^34")) + # voice 6 + # octave 6 + # sustain 0.25 +d7 + $ g $ gDelay -- Skank Guitar + $ note "[~ ]*2" + # "pluck:5" + # octave 5 + # gM' 0 1 ("^82" * ((range 0.25 1.5 "^18"))) +d8 -- Trompette lancinante + $ g $ gDelay + $ novaOn "^59" (mask "") + $ note (" bf d ~]> " + "0 <12 0>") + # "brass" # n "2" + # gM' 0.2 0.85 ("^55") + # attack 0.5 # cut 8 diff --git a/live/midi/nova/dnb/prepabass.tidal b/live/midi/nova/dnb/prepabass.tidal new file mode 100644 index 0000000..9e4f2ff --- /dev/null +++ b/live/midi/nova/dnb/prepabass.tidal @@ -0,0 +1,95 @@ + + + + +once $ "methbass:2" # cut 1 # gain 1 -- JUMP + +once $ "methbass:3" # cut 1 # gain 0 -- Comete + +once $ "methbass:4" # cut 1 # gain 0 -- ALERTE + +do +-- region Nova Utils +let gFactor = 1.2 +let gG a = (gain ("^77" * a * gFactor)) -- 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 = (sometimesBy ch pat) +let novaOff ch pat = sometimesBy (1 - ch) (pat) +let novaIf ch patIf patElse = (sometimesBy ch (>| patIf) patElse) +-- endregion Nova Utils +let gDelayD = (# delay (range 0 5 "^13")) +let gDelayFB = (# delayfb (range 0 0.9 "^14")) +let gRoom = ((|+ room (range 0 0.5 "^29")) . (# dry 0.99)) +let gSize = (|+ size (min 0 (range "-0.5" 0.5 "^29"))) +let gDelay = (gDelayD . gDelayFB . (# delayt 0.25) . (# orbit 2)) +let g = (gDJF . gRoom) +let chords = "" +setcps (165/60/4) -- keep it between 110-190 BPM. You won't be sorry you did. +-- resetCycles +let modIndex = pF "modIndex" -- 0.2 +let mel = "4(<1 2>,2) 5*[1|2|4] 6 7" +resetCycles +d1 $ g + $ mask "" + -- $ mask "f" + $ "k . ~ k ~ ~" + # "[jazz,tech:5]" + # gM' 0 2 "^78" +d2 $ g -- Snare + $ mask "" + -- $ mask "f" + -- $ fast 2 + $ novaOn ("^43") --BOUTON NASSIM + (slice 8 (run 8) . (loopAt 1) + . novaOn "^75" ((|* gain 0.9) . (>| "fbreak120:1")) + . novaOff "^75" (>| "breaks165:1") + ) + $ novaOff ("^43") (<| "~ s ~ s") + $ "[sn,snare:1,snare:27]" + # note (range "-4" 6 "^51") + # gM' 0 1.8 "^79" + # pan 0.6 +d5 $ g -- Hats + $ mask "" + $ novaOn "^44" (fast 2) + $ novaOn "^76" (slow 2) + $ slow 2 + $ "hh*<8!3 [16 8]>" + # pan 0.6 + # gM' 0 2.5 "^80" +d3 $ g -- BASSLINE + $ mask "" + $ loopAt 2 + $ note (scale "aeolian" $ mel) + # crush (range 16 5 "^53") + # "bassWarsaw" + # pan 0.2 + # octave 2 + # cut 3 + # gM' 0.8 1.8 "^81" +d4 $ g + $ whenmod 16 8 (fast 2 . rev) + $ note (scale "aeolian" $ mel + (slow 4 "")) + # "FMRhodes1" + # pan 0.8 + # modIndex (range 0 100 "^54") + # gM' 0 1.8 ("^82" * (range 1 0.9 "^54")) +d6 $ g -- ABS BASS! + -- $ mask "" + $ mask "t*4 . <[t f t f] >" + $ "abstract:1" # cut 6 + # gain (range 0.2 0.95 "^84") +d7 + $ chop 8 + $ novaOn "^59" (loopAt 2 . mask "t(3,8)") + $ novaOff "^59" (loopAt 4) + $ "fguitar:25" + # gM' 0.35 1.6 "^83" + # cut 8 + + +once $ "methbass:6" # cut 1 # gain 0.8 diff --git a/live/midi/nova/feu.tidal b/live/midi/nova/feu.tidal index d80c591..9221ea7 100644 --- a/live/midi/nova/feu.tidal +++ b/live/midi/nova/feu.tidal @@ -86,15 +86,16 @@ d5 # gM' 0 1.2 "^82" d6 -- continuous laser $ novaOn "^60" (off 1 (|* gain 0.8) . mask "") - $ novaOn "^59" (# silence) + $ novaOn "^59" rev $ s "bd" >| speed ( segment (range 16 128 "^35") $ range - (range 0 127 "^55") - (range 0 127 "^56") - (sine) + (range 0 256 "^55") + (range 0 256 "^56") + (slow (range 0.1 2 "^36") saw) ) + # note (-48) # gM' 0.5 0.85 "^83" diff --git a/live/midi/nova/instruments/8box.tidal b/live/midi/nova/instruments/8box.tidal new file mode 100644 index 0000000..a77d902 --- /dev/null +++ b/live/midi/nova/instruments/8box.tidal @@ -0,0 +1,218 @@ + +do +-- region Nova Utils +let gG a = (gain (1.2 * 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 gDelayD = (# delay (range 0 5 "^13")) +let gDelayFB = (# delayfb (range 0 0.9 "^14")) +let gRoom = ((|+ room (range 0 0.5 "^29")) . (# dry 0.99)) +let gSize = (|+ size (min 0 (range "-0.5" 0.5 "^29"))) +let gDelay = (gDelayD . gDelayFB . (# delayt 0.25) . (# orbit 2)) +-- let g = (gDJF . gRoom) +let g = (id) +let chords = "<[a5,c5,e5] [e4,g4,b4]>" +setcps (140/60/4) -- keep it between 110-190 BPM. You won't be sorry you did. +-- resetCycles +d1 + $ g -- Kick + $ "jazz" + -- $ euclid (cF_ "49") 8 -- TODO: Fails too! :( + # gM' 0 1.2 "^77" + # cut 1 + +d1 + -- $ mask (8 - ("49")) + -- $ euclid (quantise 8 (range 1 8 $ cI 1 ("49")) ) 8 + $ fast (quantise 1 $ range 1 8 (cT 1 "49")) -- FIXME doesn't quantise! + $ "jazz" + # gain (1.2 * "^77") + +once $ "jazz" # gain 1.2 + +once $ "drum:2" # gain 1.2 + +once $ "hh" # gain 1.5 + +once $ "ho" # gain 1 + +once $ "hc" # gain 1.1 + + +d2 + $ g -- Snare + $ (|- lpf 1000) + $ (|/ lpf 2) + $ novaOn "^43" (|<| "s*4") + $ "~ <~!7 s> ~ ~ . s" + # "[snare:50,snare:4]" + # orbit 1 + # gM' 0.2 0.9 "^79" +d3 $ g -- Hats + $ every' 4 3 ( + sometimesBy "0 . 1 0!3" ((# "ho:2") . (|* gain 0.9)) + . sometimesBy "0 . 0 1 0 0" (|* gain 0) + ) + $ novaOn ("^76") (slice 8 (run 8) . (loopAt 1) . (>| "breaks165")) + $ novaOn ("^44") (<|"h*8") -- TODO Eclaircir + $ novaOff ("^44") (<| "h*[8 . 8 <8 16 32 4>]") + $ (|* gain "[1 0.9]*4") -- make sure that you reduce the velocity of the second Hi Hat hit + $ s "gretsch:4" + -- # pan "^52" + # cut 3 + # orbit 1 + # gM' 0.2 1.5 "^80" +d4 $ g -- Bassline + $ novaOn "^57" (>| note "[~ a4] [~ ] ") -- Naif + $ novaOff "^57" (>| note "<[~ a4@1.5 . a4 a4 e c] [e e . b4*<1 <2 4>>]>") -- simple+adjustements + $ note "0" # "bass1:3" + # cut 4 + # pan 0.6 + # attack (range 0 1 "^53") + # crush (range 16 4 "^53") + # release 0.95 + # orbit 1 + # gM' 0.25 1.2 "^81" +d5 $ g $ gDelay -- Skank Piano + $ whenmod 4 3 (sometimesBy "0 1 . 0" ( + (# note "[d5,g4,b4]") . (|* gain 0.8) + )) + $ "<[~ p*<1 1 1 <1 2>> ~ p*<1 1 2 1>]>" + -- TODO FIX ALIGNMENT CONTRETEMPS DE LA REPETITION + -- $ "<[~ p p] [~ [p <~ p*<1 2>>] . ~ p]>" + # "superpiano" + # note chords + # velocity 0.6 + # sustain 0.34 + # release 0.8 + # room 0.13 # sz 0.4 + # pan 0.4 + # gM' 0 1 ("^82" * (range 0.25 1.5 "^54")) +d6 $ g $ gDelay-- Skank Hammond + $ ("0.125" ~>) + $ fast 2 + $ note (("[0 12 0 <~!6 12!2>]" |+ (slow 2 chords))) + # "superhammond" + # gM' 0 0.8 ("[0 0.25 0 0]" |+ "^82" * (range 0 0.9 "^34")) + # voice 6 + # octave 6 + # sustain 0.25 +d7 + $ g $ gDelay -- Skank Guitar + $ note "[~ ]*2" + # "pluck:5" + # octave 5 + # gM' 0 1 ("^82" * ((range 0.25 1.5 "^18"))) +d8 -- Trompette lancinante + $ g $ gDelay + $ novaOn "^59" (mask "") + $ note (" bf d ~]> " + "0 <12 0>") + # "brass" # n "2" + # gM' 0.2 0.85 ("^55") + # attack 0.5 # cut 8 +d9 -- CP + $ sometimesBy "^59" (fast 2) + $ (# lpf 2000) + $ g + $ whenmod 4 2 (superimpose ((# "clap") . (# lpf 4500) . (|* gain 0.8))) + $ fast 2 + $ "~ cp" + # gM' 0 1.1 "^83" + # room 0.2 + # dry 0.9 + # lpf 2000 + +once $ "brass:4" # gain 0.6 # cut 1 + +-- TODO: BELOW COPIED FROM MINNEAPOLIS +d6 $ g -- + $ every' 4 3 ( -- acceleration + cymbale + fast "2 1" . (# n "0!3 1") + . (|* gain "1!3 <0.65 0.8>") + ) + $ s "hh(<3!4 5!4>,8)" + # gM' 0 0 "^80" + # pan 0.7 +d4 $ g + -- $ degradeBy "0 0.9!7" -- OUTRO + $ mask "t(<1 2!2 4>,4)" + $ superimpose ( + often (off 0.125 (|+ note "<0!3 12>")) + . arp (slow 8 $ "") + . (|+ note 36) + . (# sustain 0.5) + . (|* velocity 1.1) + . (# sz 0.8) + . (|+ pan 0.15) + ) + $ note (melody) + # s "superpiano" + # gM' 0 1 "^82" + # velocity 0.55 + # sustain 1 + # room 0.4 # size 0.2 + # pan 0.5 +d5 $ g -- Basse + Sirene + $ sometimesBy ("^57") ( -- TECHNOPHILE + chop 4 + . often (ply 4) + -- . (# crush (range 16 3.5 "^33")) + ) + $ superimpose ( + slow 4 + . (# s "supersiren") + . (-| note 12) -- 24 when crushed + . (# gM' 0 0.8 (( + "^81" -- gain bass + * (range 0.6 0.9 "^53") -- Modulated 5C + ) + - (0.125 * "^57") -- When TECHNOPHILE + )) + . (# room 0.5) + . (# size 0.8) + ) + $ note ( + "0*2 0 . 0 <7 5 5 7> ~ 0" + + melodyFirst + ) + # s "supersaw" + # voice 0.02 + # crush (range 16 3.5 "^33") + # gM' 0 0.8 "^81" + # pan (slow 10 $ range 0.6 0.8 sine) +d7 $ g -- Claps fantomes + $ s "~ . cp*<1 1 2 1 1!3 2> ~" + # room (range 0.2 0.95 "^55") + # sz (range 0.5 0.9 perlin) + # dry 1.05 + # gM' 0 1 "^83" + # pan (slow 8 $ range 0.45 0.65 saw) +d8 $ g -- Gunfire + $ sometimesBy "^20" ( + superimpose (const -- pistolets + $ sometimes ( -- réplique + off 0.5 (|+ gain 0.1) + . (# room 0.25) + ) + $ often (stut 2 0.85 (1/16)) -- écho + $ s "~ ~ ~ snare:57" + # speed (range 0.4 1 ("^36" + perlin/4)) + # gM' 0 1 ("^56") + # cut 80 + # dry 1.02 + # pan (range 0.2 0.8 perlin) + ) + ) + $ s "fire" + # begin (slow 4 "<0 0.2 0.5>") + # cut 8 + # room 0.6 # size 0.4 + # speed (range 0.5 1 ("^35" + perlin/4)) + # gM "^84" + # delay 0.3 # delaytime (1/3) # delayfb 0.8 diff --git a/live/midi/nova/instruments/AtomicRhodes.tidal b/live/midi/nova/instruments/AtomicRhodes.tidal new file mode 100644 index 0000000..f51b9fa --- /dev/null +++ b/live/midi/nova/instruments/AtomicRhodes.tidal @@ -0,0 +1,65 @@ +resetCycles + +do +let gG a = (gain ("^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 novaOn ch pat = someCyclesBy ch pat +let novaOff ch pat = someCyclesBy (1 - ch) pat +let gLPF = (# lpf (min 10000 ((range 200 20400 ("^13"))))) +let gHPF = (# hpf (max 0 (min 7500 ((range "-7500" 7500 ("^13")))))) +let gDJF = (gLPF . gHPF) +-- region Args FMRhodes +let rel = pF "rel" -- 1 +let lfoSpeed = pF "lfoSpeed" -- 4.8 +let lfoDepth = pF "lfoDepth" -- 0.1 +let inputLevel = pF "inputLevel" -- 0.2 +let modIndex = pF "modIndex" -- 0.2 +let mix = pF "mix" -- 0.2 +-- endregion Args FMRhodes +let gMix = ((# mix (range 0 20 "^78")) . (|* gain (range 1 0.88 "^78"))) +let gMod = ((# modIndex (range 0.2 100 "^79")) . (|* gain (range 0.8 0.58 "^79"))) +let gArp = (stutWith 4 "e" (sometimesBy (range 0.125 0.875 "^50") ((|+ freq 110) . (|* gain 0.95)))) +let gRemix = ((novaOn "^41" (|- note 12)) . (novaOn "^42" $ ply 4) . (novaOn "^43" $ striate 2)) +let n1 = novaOn "^73" (|+ note 5) +let n2 = novaOn "^74" (|+ note 7) +let n3 = novaOn "^75" (|+ note 12) +let n4 = (novaOn "^76" ((|- note "7") . novaOn "^44" (|- note "<0 1>"))) +let n5 = novaOn "^89" (|- note 5) +let gNotes = n1 . n2 . n3 . n4 . n5 +let gRoom = ((# room 0.2) . (# dry 0.8)) +let g = id +let g = gArp . gMix . gNotes . gMod . gDJF . gRoom . gRemix +let gAcc = (|* gain (range 0.1 2 "^56")) +let gA = gDJF . gAcc . gRoom +setcps (110/60/4) +d1 $ g + $ degradeBy (1 - "1 ^49!15") + $ off "h" id + $ "FMRhodes1" + # gain (range 0.5 1.5 "^77") + # inputLevel 0.1 +d2 $ gA $ whenmod 32 24 (slow 2) "[jazz,techno]*4" # gain 0.57 +d3 $ gA + $ whenmod 16 8 (fast 2) "hh(<4 3 5>,8)" + # release 0.8 + # pan 0.35 + # gain (range 0.45 0.85 "^83") +d4 $ gA + $ novaOff "^60" (# silence) + $ novaOn "<^92!3 1>" (off "e" id) + $ "~ clap" + # lpf 2000 + # gain (range 0 0.75 "^84") + # pan 0.8 + # note (-4) + + +do +let novaOn ch pat = (sometimesBy (ch) pat) +let novaOff ch pat = sometimesBy (1 - ch) (pat) +d4 + -- $ novaOn "^73" (fast 2) + $ iter 4 $ n (run 8) + # "cpu2" + # gain 0.75 diff --git a/live/midi/nova/instruments/StolenChoir.tidal b/live/midi/nova/instruments/StolenChoir.tidal new file mode 100644 index 0000000..2558127 --- /dev/null +++ b/live/midi/nova/instruments/StolenChoir.tidal @@ -0,0 +1,120 @@ +-- Stolen choir variations + + +do -- Break the Choir +-- region moogBass parameters +let cutoff = pF "cutoff" +let lagamount = pF "lagamount" +let rel = pF "rel" +let chorus = pF "chorus" +-- endregion +-- region Nova Utils +let gF = 1.5 -- gain factor +let gG a = (gain (gF * "^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 novaOn ch pat = someCyclesBy ch pat +let novaOff ch pat = someCyclesBy (1 - ch) pat +let gReverb = ((# room "^29") . (# sz (range 0 0.9 "^30")) . (# dry (range 0 2 "^13"))) +let gLPF = (# lpf (min 10000 ((range 200 20400 ("^49"))))) +let gHPF = (# hpf (max 0 (min 7500 ((range "-7500" 7500 ("^49")))))) +let gDJF = (gLPF . gHPF) +-- endregion Nova Utils +let g = (gDJF . gReverb) +let chords = "" +setcps (80/60/4) +d1 $ g + $ "k ~ . k*2 ~" + # "jazz" + # gM' 0 1.1 "^78" +d2 $ g + $ (# gM' 0.35 0.9 "^79") + $ novaOn "^43" (slow 2) + $ novaOn "^75" (const $ loopAt 1 + $ slice 4 ("<0 0 2 0> <1 1 3 1> 2 3") + $ "breaks165") + $ novaOff "^75" (slice 8 "[~ <0 1>]*4" ) + $ loopAt 2 + $ "fbreak80:1" +d3 $ g + $ sometimesBy "" (# cut 3) + $ sometimesBy "" (# legato "<1!8 2!8>") + $ slice 4 ("<0!4 1!4>*4") $ "choir:4/4" + # pan 0.4 + # legato "<1!8 2!8>" + # gM' 0 1 "^80" +d4 $ g $ slice 8 ("<0!3 1 1 0 1 0>(<3 <1 5>>,8)") $ "choir:4" + # pan 0.8 + # cut 4 + # gM' 0 0.8 "^81" +d5 $ g + $ novaOn "^58" (chop (4 + ("12" * "^90"))) + $ whenmod 4 2 (stutWith 4 "e" (# legato 0.25)) + $ note (chords) + # "moogBass" + # gM' 0.2 0.8 ("^82" / (1 + (0.4) * "^54")) + # crush (range 16 4 "^34") + # chorus (range 0 4 "^54") -- 0.7 + + + + + +-- TODO REWORK ARABIC LOOP +do +-- resetCycles +setcps (85/60/4) +d1 + $ mask "" + $ "k . k(<3!3 5 5 5 3 [3 <1 5>]>,8)" + # "[h2ogmbd:0,bd]" +d2 + $ superimpose (const $ + fast "<8!4 [16 <8 8 16 [16 <8 4>]>]!4>" + $ "drum:2") + $ mask "" + $ fast "<2!2 4!4 [4 8 4]!4 [8 4 8 4]!4>" $ "~ snare:21" # gain 0.8 +d3 + $ whenmod 16 8 (scramble "<4 2 4 1> <1 4 8 16>") + $ whenmod 4 3 (rev) + $ note (scale "harmonic" ("0 1 2 3 3 2 1 <0!4 1 1 2 1>")) + # "choir" + # cut 3 + # room 0.5 # dry 0.8 + # pan 0.7 +d4 + -- $ mask "" + $ off 2 (slice 4 ("0 <1 2> <2 1> 3")) + $ "choir:2/4" + # gain 0.6 + # pan 0.9 + # cut 4 +d5 + $ mask "" + $ "c*<1 <<2 4> [8 4]>>" # "choir:3" + # gain 1 + # cut 5 + +d5 + $ mask "" + $ "c*<1 <<2 4> [8 4]>>" # "choir:3" + # gain 1 + # cut 5 + + +do +d1 $ "tech:5*4" # gain 1.4 +d2 + $ whenmod 16 14 (# note "<-1 -2>") + $ fix (|* gain 0.95) (n 4) + $ n "5!7 <4!3 5>" + # "h2ogmcy" + # gain 0.9 + # cut 2 +d4 + -- $ superimpose ((|- note 12) . (# cut 41) . (|* gain 0.8)) + $ note (scale "harmonicMinor" ("0 2 . ~!<1!3 0 0!2 1!2> 3*[0|1] <4 <5 7>>")) + # "choir:1" # gain 1.25 + # octave 4 + # pan 0.2 + # cut 4 diff --git a/live/midi/nova/minneapolis.tidal b/live/midi/nova/minneapolis.tidal index 2406d43..c0a636b 100644 --- a/live/midi/nova/minneapolis.tidal +++ b/live/midi/nova/minneapolis.tidal @@ -7,32 +7,34 @@ -- `49 50 51 52 53 54 55 56` -- XXX XXX XXX XXX XXX pSust fSpd gunFreq --- XXX XXX XXX XXX crBass pLVel cpStut gunSpd +-- Dlay DFB XXX XXzX crBass pLVel cpStut gunSpd -- DJF XXX XXX panDr gSiren pRVel cpSpd gGuns -- G Kick Sn DrRoll Bass Piano CP Fire -- X TCHN Stut Wait/Run TCHN XXX XXX XXX + once $ "dr" # gain 0.8 do -- region Nova Utils -let gG a = (gain ("^77" * a)) -- gain Global +let gF = 1 -- gain factor +let gG a = (gain (gF * "^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 gDelay = ((# delay 0.125) . (# delayfb (range 0 0.4 "^13"))) -let gLPF = (# lpf (min 10000 ((range 200 20000 ("^49"))))) -let gHPF = (# hpf (max 0 (min 9000 ((range "-9000" 9000 ("^49")))))) +let novaOn ch pat = someCyclesBy ch pat +let novaOff ch pat = someCyclesBy (1 - ch) pat +let gReverb = ((# room "^29") . (# sz (range 0 0.9 "^30")) . (# dry (range 0 2 "^13"))) +let gLPF = (# lpf (min 10000 ((range 200 20400 ("^49"))))) +let gHPF = (# hpf (max 0 (min 7500 ((range "-7500" 7500 ("^49")))))) let gDJF = (gLPF . gHPF) -let novaOn ch pat = (sometimesBy ch pat) -let novaOff ch pat = sometimesBy (1 - ch) (pat) -- endregion Nova Utils -let g = (gDJF) +let g = (gDJF . gReverb) -- let g = id let melody = " d4'min>" let melodyFirst = " d3>" setcps 0.5 d1 $ g - $ novaOn "^41" (superimpose ((# "kick:5") . (|* gain 1.1))) -- TECHNO - $ novaOn "^41" (<| "k k ") -- TECHNO + $ novaOn "^41" (superimpose ((# "kick:5"))) -- TECHNO + $ novaOn "^41" (<| "k k >") -- TECHNO $ novaOff "^41" (<| "k . k(<1 <3 5>>,8,<0 4>)") -- Hip beat $ "reverbkick" # gM' 0 1 "^78" @@ -51,6 +53,7 @@ d3 $ g -- Drumroll opposé hit roll / hh when TECHNO sometimesBy "0!15 <0!4 1!4>" (# silence) . sometimesBy "0!14 <1!3 1> 0" ((# "hh:1") . (|* gain 1.4)) . fast 2) . + (|* gain 0.8) . (>| "ho*8") ) $ novaOff "^44" (fast "<4!3 <2 [2 <8 [8 16]>]>>") -- Waiting roll @@ -122,7 +125,7 @@ d7 $ g -- Claps fantome # room 0.2 # sz (range 0.5 0.9 perlin) # dry 1.05 - # speed (range 0.01 1.25 "^35") + # speed (range 0.125 1.25 "^35") # gM' 0 1 "^83" # lpf 2000 # pan (slow 8 $ range 0.45 0.65 saw)