diff --git a/PatchBay_Perf.xml b/PatchBay_Perf.xml new file mode 100644 index 0000000..9b9fa4b --- /dev/null +++ b/PatchBay_Perf.xml @@ -0,0 +1,173 @@ + + + + + capture_FL + capture_FR + + + out_1 + out_2 + + + auditioner\/audio_out\ 2 + auditioner\/audio_out\ 1 + Tidal\/audio_out\ 1 + Tidal\/audio_out\ 2 + Master\/audio_out\ 1 + Click\/audio_out\ 2 + Click\/audio_out\ 1 + LTC\-Out + Master\/audio_out\ 2 + + + monitor_FL + monitor_FR + + + auditioner\/audio_out\ 2 + auditioner\/audio_out\ 1 + Master\/audio_out\ 1 + Master\/audio_out\ 2 + + + Tidal\/audio_out\ 1 + Tidal\/audio_out\ 2 + + + Midi\ Through\:\(capture_0\)\ Midi\ Through\ Port\-0 + Launch\ Control\ XL\:\(capture_0\)\ Launch\ Control\ XL\ Launch\ Contro + Launch\ Control\ XL\:\(capture_1\)\ Launch\ Control\ XL\ Launch\ Contro + SuperCollider\:\(capture_5\)\ out0 + SuperCollider\:\(capture_6\)\ out1 + SuperCollider\:\(capture_7\)\ out2 + + + MIDI\ Clock\ out + MTC\ out + x\-virtual\-keyboard + Scene\ out + MMC\ out + + + Launch\ Control\ XL\:\(capture_0\)\ Launch\ Control\ XL\ Launch\ Contro + Launch\ Control\ XL\:\(capture_1\)\ Launch\ Control\ XL\ Launch\ Contro + + + Midi\ Through\ Port\-0 + + + Launch\ Control\ XL\ Launch\ Contro + Launch\ Control\ XL\ Launch\ Contro + + + out0 + out1 + out2 + + + + + playback_FL + playback_FR + + + in_1 + in_2 + + + physical_audio_input_monitor_enable + LTC\ in + SC\ Tidal\/ACE\ Compressor\ \(stereo\)\ 1\/audio_in\ 1 + Tidal\/audio_in\ 2 + Tidal\/audio_in\ 1 + Master\/audio_in\ 2 + Master\/audio_in\ 1 + + + playback_FR + playback_FL + playback_FL + playback_FR + + + Tidal\/audio_in\ 1 + Tidal\/audio_in\ 2 + + + Master\/audio_in\ 1 + Master\/audio_in\ 2 + + + physical_audio_input_monitor_enable + physical_audio_input_monitor_enable + + + Midi\ Through\:\(playback_0\)\ Midi\ Through\ Port\-0 + Launch\ Control\ XL\:\(playback_0\)\ Launch\ Control\ XL\ Launch\ Contro + Launch\ Control\ XL\:\(playback_1\)\ Launch\ Control\ XL\ Launch\ Contro + SuperCollider\:\(playback_0\)\ in0 + SuperCollider\:\(playback_1\)\ in1 + SuperCollider\:\(playback_2\)\ in2 + SuperCollider\:\(playback_3\)\ in3 + SuperCollider\:\(playback_4\)\ in4 + aseqdump\:\(playback_0\)\ aseqdump + + + physical_midi_input_monitor_enable + MIDI\ Clock\ in + MTC\ in + Scene\ in + MMC\ in + + + physical_midi_input_monitor_enable + physical_midi_input_monitor_enable + + + Midi\ Through\ Port\-0 + + + Launch\ Control\ XL\ Launch\ Contro + Launch\ Control\ XL\ Launch\ Contro + + + in0 + in1 + in2 + in3 + in4 + + + aseqdump + + + in3 + in4 + + + input + input + + + in2 + + + + + + + + + + + + + + + + + + + + diff --git a/backlog.md b/backlog.md index cf8bed0..3b09fd1 100644 --- a/backlog.md +++ b/backlog.md @@ -298,6 +298,24 @@ La voix de l'Ordre: Monotonal drone <> breakbeat ## Live CHIC +<<<<<<< HEAD +======= +### TODO +- [ ] Tracklist +- [ ] Peaufine + - Rework par instrument: + - Invoque été + - Hoover sepia +- [ ] Repeat once transitions +- [ ] WING IT!!1! + + +### EXPLORE PARTY +- DARK ANGEL FRAPPE +- 80s neon? +- Top Hats! + +>>>>>>> 5c170b6 (backlog: FDLM2022) ## Tracklist - *Empreinte du numérique* > Bonsoir le chic @@ -370,3 +388,32 @@ La voix de l'Ordre: Monotonal drone <> breakbeat - **Invoque l'Été** \o/ > Il ne viendra pas tout seul ;) + + + +## Live Algolia FDLM2022 :metal: + +### TODO: +- [x] Confirme la tracklist +- [x] Verifie chaque instrument +- [ ] Pratique ;) +- Improve setup: + - [x] Fix compressor + +### AlgoRythms +- Lady +- Toxic +- ??? +- ??? + + +### Tracklist +- Intro: We call it AlgoRave 👨‍💻 +- Solar... +- ...Lunar <3 +- Contre visite? +- Empreinte du numerique! +- CBOW ✨~#*✨ +- Nightly Repair 💪 +- Alerte verte 🚨 +- **Invoque l'Été** \o/ diff --git a/link_samples.sh b/link_samples.sh old mode 100644 new mode 100755 index 95e5049..639f45b --- a/link_samples.sh +++ b/link_samples.sh @@ -34,3 +34,4 @@ ln -s ~/Work/Sound/Samples/90sArchive/output/blues/elmore/ blues_elmore ln -s ~/Work/Sound/Samples/raph/jardindhiver/ raph_jardin ln -s ~/Work/Sound/Samples/Tristram tristram ln -s ~/Work/Sound/Samples/faith/ . +# TODO: Add links made on ArchPLN diff --git a/live/ambient/new_machine.tidal b/live/ambient/new_machine.tidal new file mode 100644 index 0000000..e3b42c4 --- /dev/null +++ b/live/ambient/new_machine.tidal @@ -0,0 +1,82 @@ +once $ "808bd" # gain 2 + +do +let modIndex = pF "modIndex" +once $ "FMRhodes1" # modIndex 10 + +do +setcps (85/60/4) +d1 $ loopAt 2 $ "break:7" + # cut 1 # gain 0.5 # lpf 4000 + +once $ fast "8 16" $ "dr" # gain 2 # cut 4 + +do +setcps (93/60/4) +let modIndex = pF "modIndex" +d1 $ "jazz*4" +d2 $ "[~ ho]*4" # gain 0.6 +d3 + $ arp "up converge" + $ note (scale "aeolian" + ( + "" + + "c'maj'4 c'maj'3@4" + - 12 + ) + ) + # "FMRhodes1" + # voice (slow 4 $ "<0 1 2 4 6 8 10 12 16 32 48 64 64 64 96 128>") + # gain 1.1 + # modIndex 0.4 + + +d1 $ "jazz*4" + +once $ "90s_synatm" # cut 5 # gain 0.8 +d2 + $ superimpose ((# cut 22) . (# crushbus 21 (range 10 3 saw))) + $ "90s_synatm:3/4" + # room 0.8 + # sz 0.5 + # cut 2 # gain 0.8 + +do -- Who knows what 808 techno could be +setcps (93/60/4) +d1 + $ "k k k >" + # "808bd:2" +d2 + $ n "1 ~ 1*<1 1 <2 4> 1> 2*<1 1 2 1>" # "hc" # gain 0.5 # cut 2 +d4 + $ fast "4!3 <4!2 8 <1 2 4 16>>" + $ "~ drum:2" + # gain 0.8 + +do -- SOME ACID tech +setcps (97/60/4) +let g1 = (whenmod 32 24 (# djfbus 1 (slow 8 $ range 0.5 0.1 saw))) +let g2 = (whenmod 64 32 (# djfbus 2 (slow 16 $ range 0.5 0.95 saw))) +let g3 = (whenmod 64 48 (# djfbus 2 (slow 16 $ range 0.95 0.5 saw))) +let g = g1 . g2 . g3 +d1 $ g $ "[909,jazz]*4" # lpf 4000 # cut 1 # gain 1.4 # room 0.4 # dry 1 +d2 $ g $ mask "" $ whenmod 16 8 (fast 2) $ "~ cp" # lpf 2000 # note "-4" +d3 $ g $ fast "1 <1!3 2>" $ "cpu2:3*8" + # pan (fast 4 $ rand) + # gain (slow 64 $ range 0.8 1.1 (saw - perlin*0.2)) + + +do -- Get that beat broken +let g1 = (# djfbus 1 (range 0.05 0.95 "^49")) +let g = g1 +setcps (80/60/4) +d1 $ g + $ fix ((# att 0.1) . (# rel 10)) "wobble" + $ "[jazz,808bd:4,wobble]" + # midiG +d2 $ g $ "~ snare:40" + # gain (slow 32 $ range 0.5 1 saw) +d4 $ g + $ slice 4 "0 1 2 <3 [~ 3] 3 3*4>" + $ loopAt 2 + $ "break:13" # cut 4 # gain 0.95 diff --git a/live/boeuf/algorythm/intro_parvagues.tidal b/live/boeuf/algorythm/intro_parvagues.tidal new file mode 100644 index 0000000..3f21d69 --- /dev/null +++ b/live/boeuf/algorythm/intro_parvagues.tidal @@ -0,0 +1,42 @@ + + + ____ __ __ + | _ \ __ _ _ _\ \ / /_ _ __ _ _ _ ___ ___ + | |_) / _` | '__\ \ / / _` |/ _` | | | |/ _ \/ __| + | __/ (_| | | \ V / (_| | (_| | |_| | __/\__ \ + |_| \__,_|_| \_/ \__,_|\__, |\__,_|\___||___/ + ____/ + +Music LiveCoding with TidalCycles + +-- L'interprete c'est l'Ordinateur +-- Le medium, c'est du code + +once $ "ircam:1" # cut 1 + +do +let g = (whenmod 32 24 (# djfbus 1 (slow 8 $ range 0.5 0.05 saw))) -- Les effets aussi :) +setcps (80/60/4) -- Le BPM ausso +d1 $ g $ "kick:5" -- Le kick aussi +d2 $ g + $ loopAt 2 + $ whenmod 4 3 (ply "<2 4>") -- Les variations aussi! + $ "break:3" + # cut 2 # gain 0.8 -- Les loops de breaks aussi +d4 $ g + $ slice 2 "< 0 1>" -- L'orchestration aussi + $ "fpiano:8" -- Les samples aussi + # cut 4 # gain 0.8 +d5 $ "drum:2*[8 <16 [8 16] [16 8] <16 32>>" # gain 1.2 -- Le drumroll aussi + +do +setcps (80/60/4) +let g = whenmod 32 24 (# djfbus 1 (slow 8 $ range 0.5 1 saw)) +d1 $ g $ "k k(2,8)" # "kick:5" # gain 0.95 +d2 $ g $ loopAt 2 + $ whenmod 4 3 (mask "t t f") + $ slice 4 ("[<0 1 2 3> <3 2 1 0>]*2") + $ "break:3" # cut 2 # gain 0.8 +d3 $ g $ slice 2 "<0 1>" $ "fpiano:8" # cut 3 # gain 0.8 +d4 -- Drumroll cubique + $ g $ "d*<8 [8 16] [16 8] [16 <16 32>]>" # "drum:2" # gain 0.8 diff --git a/live/boeuf/algorythm/lady.tidal b/live/boeuf/algorythm/lady.tidal new file mode 100644 index 0000000..444ac52 --- /dev/null +++ b/live/boeuf/algorythm/lady.tidal @@ -0,0 +1,42 @@ +resetCycles + +do +setcps (120/60/4) +let manualDJF = (# djfbus 1 (range 0.05 0.95 "^49")) +let g = manualDJF +let whenVerse = someCyclesBy "<1!32 0!16 1!32 0!16>" +let whenIntro = someCyclesBy "<1!8 0!24 0!16 1!8 0!24 0!16>" +let whenChorus = someCyclesBy "<0!32 1!16 0!32 1!16>" +let justAfterChorus = someCyclesBy "<<0 1> 0!31 0!16 1 0!31 0!16>" +d1 $ g + $ mask "" -- Cut last 4 measures before chorus + $ fix (|* gain 0.85) "808bd" + $ "[jazz,808bd:3]*4" + # midiG' "^78" 0 1 +d2 $ g $ stut "[1|2|4]" 0.5 "e" + $ "~ electro1" # n "<2!3 3>" + # room 0.2 # sz 0.5 + # pan 0.4 + # midiG' "^79" 0 0.9 +d3 $ g + -- $ mask "" + $ midiOn "^44" (ply "<1 2> <2 2 [2 4] 1>") + -- $ whenVerse (mask "t ") + -- $ whenVerse (mask "t ") + $ "[~ h]*4" # "electro1" + # midiG' "^80" 0 1 +d4 $ g + $ justAfterChorus (mask "f") -- Hear chorus D longer sample + $ whenVerse (# n "<0 0 1 1 2 2 0 0>") -- VERSE: AA BB CC AA + $ whenChorus (# n "<3 4 5 3 3 4 5 6>") -- CHORUS: ABCA ABCD + -- $ whenIntro (# relbus 42 (range 1 10 "^34")) + $ "algorythm" + # cut 4 # gain 0.8 + # pan 0.7 + # ringbus 44 (range 0 1 "^18") # ringf 0.5 + # roombus 43 (range 0.4 0 "^34") # sz 0.6 -- Room on low release + # midiG' "^82" 0 0.8 +d10 $ g $ mask "" -- DEBUG CUE BEFORE Chorus<>VERSE + $ "~ h2ogmcy ~ ~" # n (slow 8 $ "<1 2 3 4>") + # gain 0.8 + # pan 0.3 diff --git a/live/chip/cours_toujours.tidal b/live/chip/cours_toujours.tidal new file mode 100644 index 0000000..b77ead2 --- /dev/null +++ b/live/chip/cours_toujours.tidal @@ -0,0 +1,74 @@ +do +let g = whenmod 32 24 (# djfbus 3 (slow 8 $ range 0.5 0.15 saw)) +let g2 = whenmod 32 24 (# djfbus 4 (slow 8 $ range 0.5 0.35 saw)) +setcps (80/60/4) +-- resetCycles +d1 $ g -- Poum poum + $ mask "" + $ "[jazz,kick:5,909]*<2 2 4 [8 16] 2 2 4 [8 16] [8!6 <16 8> 16]!16>" +d2 $ g -- Clac + $ mask "" + $ whenmod 64 16 (fast "<2!3 [2!3 8]>") + $ "~ cp" + # note "<-3!3 -2>" + -- # lpf 2500 + # room 0.3 + # gain 1.2 + # sz 0.9 # dry 1 +d3 $ g -- Let the proto-drums run... + $ mask "<[[t f]*4]!8 t!8>" + $ slice 16 ("0..7" + "<0 8>") + $ loopAt 4 + $ "drums_gameboy" # n "<11!3 12>" + # gain 0.9 + # cut 3 +d4 $ g2 -- Bass, you make me run <3 + $ whenmod 64 32 (# hpfbus 44 (slow 32 $ range 500 5000 cosine)) + $ whenmod 64 32 (# crushbus 41 (slow 32 $ range 16 3.5 saw)) + $ loopAt 4 + $ "bass_gameboy:11" + # cut 4 + # panbus 45 (slow 8 $ range 0.8 0.65 sine) + # roombus 42 (slow 16 $ range 0.1 0.8 saw) + # sz 0.7 + # dry (0.9 + 0.2 * perlin) + # gain 1 +d5 -- Telephone + $ mask "" + $ someCyclesBy 0.2 (off 0.75 id) + $ (|+ note "0.5") + $ whenmod 16 12 (off "e" ((# cut 52) . (ply "<1!3 2>") . (|+ note 12))) + $ slice 8 "0 <0 0 1 <0 1>>" + $ "synth_nes:9" + # cut 5 + # gain 0.5 + # pan 0.9 +d7 + $ degradeBy (slow 32 $ range 1 0.5 saw) + $ fix ((# gain 0.55) . (# pan 0.6) . (# cut 72)) (n 8) -- CRASH + $ fix ((# gain 0.6) -- Siren + . (# pan 0.32) . (# cut 71) . (# legato (0.5 + perlin))) (n 4) + $ n (stack [ + "~ 4*<1 <2 4>>", + "~!3 <~!3 1>", + "8(<1 3 5 8>,8)", + "" + ]) + # "fx_gameboy" + # cut 7 + # gain 0.65 + # room 0.2 + # sz 0.5 + # dry 1.2 +d8 $ g2 -- Choirs! + $ mask "" -- Orchestration + $ mask "<[t f]!4 t!4> > t" -- Aeration + $ arp "" + $ note ("b4 b4 b4 " + "c'min'4") + # "moogBass" + # room 0.54 + # legato "<1!7 0.25>" + # sz 0.9 + # gain 0.8 + +once $ slice 8 0 $ "synth_gameboy:1" diff --git a/live/chip/game_on.tidal b/live/chip/game_on.tidal new file mode 100644 index 0000000..a4feaa3 --- /dev/null +++ b/live/chip/game_on.tidal @@ -0,0 +1,23 @@ +do +setcps (110/60/4) +let gFilter = (whenmod 32 24 (# lpf (slow 8 $ range 200 5500 saw))) + g = gFilter +d1 $ g + $ slice 4 "0 1 2 <3 3 ~ 3>" + $ loopAt 4 + $ "drums_gameboy:1" + # gain 0.85 + # cut 1 +d2 $ g $ "~ [snare:20]" # gain 0.8 +d4 $ g $ loopAt 2 + $ "drums_gameboy:4/2" + # cut 4 # gain 0.8 + # pan 0.3 +d3 $ g + $ loopAt 4 + $ "bass_gameboy:10" + # gain 0.7 + # cut 3 +d5 $ "bass + +d5 $ diff --git a/live/chip/nano_rain.tidal b/live/chip/nano_rain.tidal new file mode 100644 index 0000000..349ade9 --- /dev/null +++ b/live/chip/nano_rain.tidal @@ -0,0 +1,67 @@ +do +-- resetCycles +setcps (135/60/4) +-- once $ "fx_commodore:8" # room 0.45 # crushbus 1 (range 16 3.5 saw) # gain 0.8 +let g = id +let g = (whenmod 64 32 (# lpf (slow 32 $ range 500 5500 saw))) +d1 $ g + $ mask "" + -- $ struct "]!16>" + $ struct "t t t " + $ "[jazz,kick:5]" # lpf 4000 + # gain 0.9 +d2 $ g + $ mask "" + $ mask "< t t [t ]>" + $ "drums_gameboy" # n "<0!4 0 2 2 0 2!4 0!4>" + # cut 2 + # gain 0.9 + # lpf 2000 +d3 $ g + $ mask "" + $ struct "<[~ t]!8 [~ t ~ t*<1!3 2>]!8>" + $ "[cp,glitch:6]" + # lpf 8000 + # gain 1.2 + # room 0.4 # sz 0.8 # dry 1 + # cut 3 +d4 $ g -- Gameboy glitter + $ mask "" + $ slice 4 ("<0!4 1!4 2!4 3!4>") + $ "synth_gameboy:4" + # cut 4 + # room 0.4 # sz (slow 32 $ range 0.4 0.9 saw) + # gain (segment 16 $ 0.7 + 0.2 * perlin) +d5 $ g -- BASSLINE BASELINE + $ whenmod 16 12 (# silence) + $ "bass_gameboy:3" + # n "<2 2 1 0>" + # cut 5 + # room 0.3 + # pan 0.2 + # gain (0.89 + 0.1 * perlin) + # crushbus 51 (slow 64 $ range 16 3 saw) +d6 + $ mask "" + $ "fx_gameboy" + # pan (range 0.1 0.5 perlin) + # n (irand 10) + # gain 0.5 +d7 $ g -- Bonus break! + $ mask "" + $ mask "" -- Aere + $ slice 4 ("0 1 <2 2 5 5> <6 7*<1 2>>") + $ loopAt 2 + $ "break:1" + # cut 7 + # gain (slow 32 $ range 0.7 1.15 saw) +d10 + $ sometimes (0.25 ~>) + $ degradeBy 0.2 -- Fix trop frequent + $ rarely (stut 4 0.75 0.5) + $ mask ">" + $ "fx_commodore:8" + # crush (range 5 10 rand) + # gain (0.5 + 0.23 * rand) + # pan 0.9 + # room 0.4 diff --git a/live/jam/cbow.tidal b/live/jam/cbow.tidal index 9112893..4d0c330 100644 --- a/live/jam/cbow.tidal +++ b/live/jam/cbow.tidal @@ -1,11 +1,13 @@ d1 $ slow 17 $ n (run 17) # "cbow" # gain 0.8 # cut 1 - once $ "dr" resetCycles + ______ ____ ______ + .~ ~. | ~. .~ ~. `. .' +| |____.'_ | | `. .' +| | ~. | | `. . .' + `.______.' |_______.' `.______.' `.' `.' --- P P T . P T --- P T . PP P T do let chord = "d4'min7'4" let gF = midiDJF "^49" 200 9800 0 2000 @@ -25,12 +27,13 @@ d2 $ gDJF $ g -- Snare prog # midiG' "^79" 0 1.1 d5 $ g -- Breakbeat $ midiOn "^76" (ply "<2!3 [4 <4 1>]>") - $ midiOff "^44" (slow "<4 2>") - $ sometimesBy "^32" rev + -- $ midiOn "^44" (slow "<4 2>") + $ sometimesBy "^32" (ply "<4 [4|2] 2 <1!3 4>>") $ someCyclesBy (0.9 * "^52") (scramble "1 4") - $ slice 4 "0 1 <0 2 6 2> <1 3 7 3>" - $ loopAt 2 - $ "fbreak100" + $ chop 8 + -- $ slice 4 "0 1 <0 2 6 2> <1 3 7 3>" + $ loopAt 1 + $ "break:11" # cut 5 # midiG' "^80" 0 1.5 d3 $ g -- Bass bows @@ -42,7 +45,7 @@ d3 $ g -- Bass bows $ note ( (arp "up " chord)) # "cbow:0" - # pan 0.3 + # pan 0.24 # cut 3 # room 0.6 # sz 0.5 @@ -61,15 +64,19 @@ d4 $ g -- Higher bows # "cbow:2" # cut 4 # room 0.2 + # pan 0.6 # crushbus 41 (range 10 2 "^54") # midiG' "^82" 0 1.05 d8 $ g -- Angels - $ midiOff "^59" (mask "") + $ midiOn "^59" ( -- Crowd of thoughts + off "" + (|+ note "7 12") . (# cut 81) . (|* gain 0.86)) $ note "<[ . ~!3 <~ >] a4>" # "cbow:3" # cut 8 + # pan 0.86 # crushbus 81 (range 10 2 "^55") - # midiG' "^83" 0 0.86 + # midiG' "^83" 0 1.4 d9 $ midiOn "^92" (ply "2 <1 <4 [4 8]>>") $ midiOff "^60" (slow 2) diff --git a/live/midi/nova/ambient/contre_visite.tidal b/live/midi/nova/ambient/contre_visite.tidal index 57a481b..08e3ff1 100644 --- a/live/midi/nova/ambient/contre_visite.tidal +++ b/live/midi/nova/ambient/contre_visite.tidal @@ -1,12 +1,9 @@ --- TODO: Add some spaceship fx --- TODO: Reconsider if enough rythmic variations - what about a DROP? -once $ "kick:5" # crush 4 - - +-- Contre Visite +-- Un deuxième regard n'est jamais de trop. do --- DONE TRIGGER INTRO :) +-- TRIGGER INTRO :) -- resetCycles --- once $ "90s_synatm:8" # gain 0.94 # panbus 41 (range 0.2 0.5 saw) # room 0.4 # sz 0.94 +once $ "90s_synatm:8" # gain 0.94 # panbus 41 (range 0.2 0.5 saw) # room 0.4 # sz 0.94 let g = (whenmod 64 32 (# djfbus 2 (slow 32 $ range 0.5 0.18 cosine))) let gF = 1.01 let f1 = (# djfbus 1 (range 0.05 0.95 "^49")) @@ -21,7 +18,8 @@ d1 $ f1 -- FIXME: CRUSHED? $ midiOff "^42" (maskLoops) $ midiOn "^41" ((<| "k k k k]>") . (# legato 0.6)) $ midiOff "^41" (<| " . ~ ~ ~ <~!3 k>") - $ "[reverbkick,808bd:6,kick:8]" + -- $ "[reverbkick,808bd:6,kick:8]" + $ "[jazz]" # lpf 1000 # crush 16 # midiG' "^78" 0 1.3 @@ -78,17 +76,17 @@ d6 -- High lead: Winds of truth $ whenmod 32 8 (superimpose ( -- Echos of doubts (arp "") . (sometimesBy (range 0 "<0.25!3 <0.5 0.75>>" saw) (ply 2)) - . (# pan 0.4) + . (# pan 0.1) . (+| note "[12,19,<21 21 17 18>]") . (# cut 61) - . (|* gain 0.8) + . (|* gain 0.6) )) $ note (scale "aeolian" "<0!3 [0@6 <4 -1>@2]> 2") # "90s_synatm:18" # pan 0.9 # room 0.4 # sz 0.8 # crushbus 62 (range 16 2.25 "^55") - # midiG' "^83" 0 0.8 + # midiG' "^83" 0 1 # dry 0.1 # pan "^19" # cut 6 @@ -101,7 +99,8 @@ d10 $ f1 -- RANDOM FOREST NOISES ) ("n1") $ fix ( struct "[~ t]*2" - . (# "snare:34") + . (# "[snare:34,cp]") + . (# lpf 2000) . (# midiG' "^14" 0 1.8) ) "n2" -- tchak reverb phantome $ fix ( @@ -125,7 +124,7 @@ d10 $ f1 -- RANDOM FOREST NOISES . (struct "t*[16!3 <16!3 [32 16 32 16]>]") -- . (# cut 105) . (# pan (range 0.02 0.25 perlin)) - . (# midiG' "^17" 0 0.9) + . (# midiG' "^17" 0 1.4) ) "n5" -- Drumroll $ "[n1,n2,n3,n4,n5]" -- n4 - # gain 0.8 + # gain 1 diff --git a/live/midi/nova/ambient/empreinte_du_numerique.tidal b/live/midi/nova/ambient/empreinte_du_numerique.tidal index 483a8a0..4fbedd1 100644 --- a/live/midi/nova/ambient/empreinte_du_numerique.tidal +++ b/live/midi/nova/ambient/empreinte_du_numerique.tidal @@ -1,3 +1,4 @@ + d1 $ "dr*8" # gain 0.8 do diff --git a/live/midi/nova/breaks/lunar.tidal b/live/midi/nova/breaks/lunar.tidal index 81dfbfa..1de83cb 100644 --- a/live/midi/nova/breaks/lunar.tidal +++ b/live/midi/nova/breaks/lunar.tidal @@ -1,39 +1,37 @@ -- Lunar - et bim! l'esbrouffe --- TODO: Breakbeat mapping variations -- TODO: CBOW Kill melody, reboot alongside rhodes -- TODO: Bassline Kill riff, reboot alongside rhodes -once $ "dr" # gain 1 - do setcps (110/60/4) let modIndex = pF "modIndex" let gDJF = (# djfbus 1 (range 0.15 0.85 "^49")) let mBreak = (midiOn "^41" (mask "t f . f t")) -let g = (gDJF) +let g1 = (# djfbus 1 (range 0.02 0.98 "^49")) +let g2 = (# djfbus 2 (range 0.05 0.95 "^50")) let m = mBreak -d1 $ g -- +d1 $ g1 -- $ midiOn "^42" (<| "k k k k]>") $ midiOff "^42" (<| "k . ~ k*<1!3 2 2 2 1 2> <~ ~ k >") $ "[jazz,hh:5]" -- # release "<0.7!3 1>" # midiG' "^78" 0 1.3 -d3 $ g $ m -- Clap contretemps stable +d3 $ g1 $ m -- Clap contretemps stable $ superimpose ((# lpf 2000) . (# "cp:0")) $ "~ clap:1" # room 0.8 # sz 0.6 # dry 0.9 # midiG' "^79" 0 1.0 -d2 $ g $ m -- BREAK +d2 $ g1 $ m -- BREAK $ midiOn ("^44" - "^76") (ply 2) $ midiOn "^76" (striate 2) $ loopAt 2 $ whenmod 8 6 (off "h" id . mask "t . f") $ slice 8 (run 8) $ "break" # n "<13!12 14!4 15!16>" - # midiG' "^80" 0 1.2 + # midiG' "^80" 0 2 # speed (range 0 2 "^52") # cut 2 -d4 $ g $ m +d4 $ g2 $ m -- Basse avec du repondant $ midiOn "^57" (chop "8 1") $ superimpose ((# cut 41) . (|+| note "0*<1!3 2 1!3 4 2!4 4!4> 7(<5 5 3 3>,8)") @@ -48,7 +46,7 @@ d4 $ g $ m # crushbus 4 (range 16 1.5 "^53") # cut 4 # pan 0.2 -d5 $ g $ m +d5 $ g2 $ m -- Rhodes piano questionnant $ midiOn "^58" (superimpose ( (# cut 51) . (|+| note "~ 12(<1 1 2 1 2 5 2 1 2 2 5 2 2 4 3 8>,8)") diff --git a/live/midi/nova/breaks/solar.tidal b/live/midi/nova/breaks/solar.tidal index 8269e67..3beccb5 100644 --- a/live/midi/nova/breaks/solar.tidal +++ b/live/midi/nova/breaks/solar.tidal @@ -1,15 +1,14 @@ -- Solar - breakbeat nostalgic playground --- FIXME: ADD A BASSLINE +-- TODO: Ajoute une basse ! -once $ "dr" # gain 1 +once $ "dr" # gain --- TODO: Ajoute une basse ! do setcps (110/60/4) let modIndex = pF "modIndex" let gDJF1 = (# djfbus 1 (range 0.02 0.98 "^49")) -let gDJF2 = (# djfbus 2 (range 0.05 0.95 "^29")) +let gDJF2 = (# djfbus 2 (range 0.05 0.95 "^50")) let mBreak = (midiOn "^41" (mask "t f . f t")) let g1 = (gDJF1) let g2 = (gDJF2) @@ -43,7 +42,7 @@ d2 $ g1 $ m -- BREAK # octerbus 20 (range 0 0.5 "^32") # octersubbus 21 (range 0 1.2 "^32") # octersubsubbus 22 (range 0 1.2 "^32") - # midiG' "^80" 0 1 + # midiG' "^80" 0 1.85 # cut 2 d4 $ whenmod 4 3 (off "q" id) @@ -62,17 +61,19 @@ d4 # midiG' "^81" 0 1.5 # pan 0.2 d5 $ g2 - -- $ midiOn "^58" (superimpose ( - -- (|+| note ( - -- arp "" - -- "c'maj'8" - 12) - -- ))) + $ midiOn "^58" (superimpose ( + (sometimesBy "0!3 0.45" (ply 2)) . + (|+| note ( + arp "" + "c'maj'8" - "[12 24]*2") + ))) $ struct "~ t" $ slow 4 $ arpeggiate $ note "e3'maj" # "FMRhodes1" - # room "<0.4!3 0.7>" + # modIndex 0 + -- # room "<0.4!3 0.7>" # pan 0.8 # modIndex (range 0 128 "^34") # crushbus 51 (range 16 4.6 "^54") diff --git a/live/midi/nova/dnb/alerte_verte.tidal b/live/midi/nova/dnb/alerte_verte.tidal index 5813c19..ff11857 100644 --- a/live/midi/nova/dnb/alerte_verte.tidal +++ b/live/midi/nova/dnb/alerte_verte.tidal @@ -7,6 +7,7 @@ let g1 = (# djfbus 1 (range 0.05 0.95 "^49")) let g2 = (# djfbus 2 (range 0.05 0.95 "^50")) let g32Bridge = whenmod 64 32 (|* gain (slow 16 $ range 0.85 1.1 saw)) d1 $ g1 -- KICK + $ midiOn "^74" (fast 2) $ midiOn "^41" (<| "k k k ") -- RUN! $ midiOn "^42" (<| "b . ~ b ~ <~!3 b>") -- WAIT? $ midiOff ("^41" + "^42") (<| "k*2") -- ST0P. @@ -15,11 +16,20 @@ d1 $ g1 -- KICK # release 0.8 # midiG' "^78" 0 1.5 d2 $ g1 -- Snare tchak! - $ midiOn "^75" (ply 2) - $ g32Bridge - $ whenmod 16 12 (struct "t*<4 4 8 16>") -- Snare Rush - $ "~ s . ~ <~ ~ s ~ s!3 ~ s s ~ s s ~ s s ~ s s s>" - # "[snare:40,snare:22]" + $ midiOn "^43" (ply 2) + $ midiOn "^75" --BOUTON NASSIM + ( + whenmod 8 7 (ply "1 . 2") . + slice 8 ("0 1 2 3 4 5 <6!3 4> <7!3 [5 4]>") . + (loopAt 1) . + (# "breaks165") . (# cut 2) + . (|* gain 1.1) + ) + $ midiOff "^75" ( -- NassOff + (<| "~ s . ~ <~ ~ s ~ s!3 ~ s s ~ s s ~ s s ~ s s s>") + . whenmod 16 12 (struct "t*<4 4 8 16>") -- Snare Rush + ) + $ "[snare:40,snare:22]" # pan 0.55 # note (range "-7" 7 "^51") # room 0.8 # dry 0.99 # sz 0.2 @@ -66,6 +76,7 @@ d6 -- Guitar A -- L'attente (18=0) TODO Rework? d7 -- Guitar B -- Le run (18=127) $ g2 $ whenmod 4 3 (# silence) + $ midiOn "^90" (# n "25") $ midiOn "^58" ( (# n 27) ) @@ -104,9 +115,9 @@ d11 $ g2 -- Sirene indépendante # "supersiren" # speed 0.2 # crushbus 110 (range 10 0.1 "^35") - # ampbus 111 (range 0 0.5 "^19") + # ampbus 111 (range 0 0.8 "^19") # pan "<0.2!16 0.8!16>" - # midiG' "^19" 0 1.5 + # midiG' "^19" 0 1 # room 0.4 # sz (slow 32 $ range 0.125 0.9 saw) # dry (slow 32 $ range 0 2 perlin) # cut 11 diff --git a/live/midi/nova/lounge/invoque_ete.tidal b/live/midi/nova/lounge/invoque_ete.tidal index 70a6112..d6b50cd 100644 --- a/live/midi/nova/lounge/invoque_ete.tidal +++ b/live/midi/nova/lounge/invoque_ete.tidal @@ -24,7 +24,7 @@ d2 $ f1 $ m -- Clave de l'été $ (|* gain ("0.75 1 1 1 0.75 1 1 1" * 1.7)) $ "d ~ ~ d d ~ d <~!3 d>" # "[snare:22,sn:4]" - # midiG' "^79" 0 1.9 + # midiG' "^79" 0 1 # speed (range 0 2 "^51") d4 $ f1 $ m -- Mecano Course -- $ fast "<<4 2> 4!7 2!4 2 2 4 8>" diff --git a/live/mood/sad/bass_vibes.tidal b/live/mood/sad/bass_vibes.tidal new file mode 100644 index 0000000..82b95fe --- /dev/null +++ b/live/mood/sad/bass_vibes.tidal @@ -0,0 +1,65 @@ +resetCycles + +do +setcps (60/60/4) +let maskR = mask "" + modIndex = pF "modIndex" + g = (# lpf (slow 64 $ range 2000 500 saw)) +d1 $ g + $ "k k k k k k " + # "[jazz,808bd:2,909]" + # gain 1.3 +d3 -- Bassline baseline + $ "tripBassLines:0" + # lpf 400 + # crush 3.5 + # cut 3 + # room 0.3 + # gain 1.2 +d2 $ g + $ superimpose (const $ maskR -- Snare! + $ whenmod 4 3 (fast 2) + $ "~ s" + # "snare:20" + # lpf (slow 32 $ range 2000 5000 saw)) + $ maskR + $ slice 4 ("0 1 <2 2 3 <~ 3>> <2!3 3*<1 2>>") + $ "break:13" + # pan (segment 4 $ range 0.2 0.6 perlin) + # cut 2 + # gain (slow 32 $ range 0.53 0.8 saw) +d4 $ g + -- $ mask "" + -- $ degradeBy 0.05 + $ sometimesBy 0.1 (ply 2) + -- $ fix (mask "" . (|* gain (slow 8 $ range 0.35 0.48 saw)) . (# cut 41)) "ho" + $ "~ d d*<1 2 8 <4 [4 <8 16>]>> d*<8!3 <16 [16 4]>>" + # "[drum:2,ho:1]" + # room 0.4 # dry 0.9 # sz 0.3 + # gain 0.9 + # pan 0.8 +d5 + $ mask "" + $ off 0.75 ((# crush 6.2) . (|* gain 0.9). (# cut 51)) + $ note ">" + # "moog" + # legato 2 + # room 0.6 + # sz 0.8 + # gain (slow 4 $ "<0.65 0.7 0.75 0.8>" * 1.0) + # pan 0.7 + # cut 5 +d6 -- Solar flares + $ mask "" + $ superimpose ( + (off 0.5 (|* gain "<0 1 1 0>")) . + arp "" + . (|+ note "c'major'2")) + $ note ">@3 e" # "FMRhodes2" + |- note "<24!16 12!8 0!8>" + # modIndex (slow 32 $ range 0 32 (saw + (slow 32 "<0 0.3>") * perlin)) + # gain (slow 64 $ range 0.9 0.5 saw) + # room 0.5 + # dry 1 + # sz 0.4 + # pan 0.2 diff --git a/live/techno/nightly_repair.tidal b/live/techno/nightly_repair.tidal index c8cda61..faf348b 100644 --- a/live/techno/nightly_repair.tidal +++ b/live/techno/nightly_repair.tidal @@ -1,4 +1,6 @@ +-- Le jour te fatigue +-- La nuit te répare do setcps (90/60/4) let scale = getScale (scaleTable ++ [("blues",[0, 3, 5, 6, 7, 10])]) @@ -10,10 +12,11 @@ let gHPQ = (# hpqbus 4 (range 0 0.95 "^14")) let g1 = (gDJF1 . gLPQ . gHPQ) let g2 = (gDJF2 . gLPQ . gHPQ) d1 $ g1 + $ midiOn "^74" (fast 2) $ midiOn "^42" (<| "k k*<1!3 2> k ") $ midiOff "^42" (<| "k . k(3,8)") - $ fix (# lpf 2500) "808bd" - $ fix ((# lpf 4000) . (|* gain 0.8)) "909" + $ fix (|* gain 1) "808bd" + $ fix ((|* gain 0.8)) "909" $ "[jazz,909,808bd:4]" # midiG' "^78" 0 1.6 d2 @@ -51,7 +54,7 @@ d9 $ g2 -- G0dz1ll4 # sz 0.9 # pan 0.7 # midiG' "^84" 0 0.9 -d4 $ g1 -- BASSLINE +d4 $ g1 -- BASSLINE VOLTAIQUE $ midiOn "^57" ((|+ note 12) . (# legato 4)) $ note ("" - 24) -- $ note ("c6") @@ -82,7 +85,7 @@ d5 $ g2 -- BLUES RUN # crushbus 5 (range 16 4.2 "^54") # midiG' "^82" 0 1.85 -- # pan (slow 8 $ range 0.5 1 (saw - (slow 2 perlin))) - # pan 0.8 + # pan (slow 16 $ range 1 0.8 saw) let scale = getScale (scaleTable ++ [("blues",["c", "ef", "f", "fs", "g", "bf"])]) diff --git a/start_and_midi.scd b/start_and_midi.scd index 223e094..e6ff454 100644 --- a/start_and_midi.scd +++ b/start_and_midi.scd @@ -63,27 +63,27 @@ This is an example startup file. You can load it from your startup file // configure the sound server: here you could add hardware specific options // see http://doc.sccode.org/Classes/ServerOptions.html // Increased from 1024 * 256 -s.options.numBuffers = 1024 * 512; // increase this if you need to load more samples +s.options.numBuffers = 1024 * 256; // increase this if you need to load more samples // Increased from 8192 * 32 s.options.memSize = 8192 * 32; // increase this if you get "alloc failed" messages s.options.numWireBufs = 128; // increase if "exceeded number of wire buffer" messages -s.options.maxNodes = 4096 * 32; // increase this if you are getting drop outs and the message "too many nodes" +s.options.maxNodes = 1024 * 32; // increase this if you are getting drop outs and the message "too many nodes" s.options.numOutputBusChannels = 2; // set this to your hardware output channel size, if necessary s.options.numInputBusChannels = 2; // set this to your hardware output channel size, if necessary // boot the server and start SuperDirt s.waitForBoot { ~dirt = SuperDirt(2, s); // two output channels, increase if you want to pan across more channels - //~dirt.doNotReadYet = true; // Lazy-loading https://club.tidalcycles.org/t/superdirt-lazy-samples-loading/3148 - ~dirt.loadSoundFiles; // load samples (path containing a wildcard can be passed in) + ~dirt.doNotReadYet = true; // Lazy-loading https://club.tidalcycles.org/t/superdirt-lazy-samples-loading/3148 + //~dirt.loadSoundFiles; // load samples (path containing a wildcard can be passed in) // for example: ~dirt.loadSoundFiles("/Users/myUserName/Dirt/samples/*"); ~dirt.loadSoundFiles("/home/pln/.local/share/SuperCollider/downloaded-quarks/Dirt-Samples/*"); ~dirt.loadSoundFiles("/home/pln/Work/Sound/Samples/extra/*"); // s.sync; // optionally: wait for samples to be read ~dirt.start(57120, 0 ! 12); // start listening on port 57120, create two busses each sending audio to channel 0 - ~dirt.soundLibrary.addMIDI(\midi, ~midiOut); // Connect `midi` synth to iO4 + //~dirt.soundLibrary.addMIDI(\midi, ~midiOut); // Connect `midi` synth to iO4 - // ~looper = TidalLooper(~dirt); // Start TidalLooper on top :) + //~looper = TidalLooper(~dirt); // Start TidalLooper on top :) // ~looper.linput = 1; // optional, needed for convenient access from sclang: @@ -94,6 +94,8 @@ s.waitForBoot { ~d10 = ~dirt.orbits[9]; ~d11 = ~dirt.orbits[10]; ~d12 = ~dirt.orbits[11]; ); + // Setup SCLOrK Synths (installed via Quark) + SCLOrkSynths.load; // Setup Mutable synths // Verb as a global effect: https://club.tidalcycles.org/t/mutable-instruments-ugens/2730/22 @@ -115,5 +117,6 @@ s.waitForBoot { // }; }; +s.volume = 1; s.latency = 1; // increase this if you get "late" messages ); diff --git a/study/chords/lofi.tidal b/study/chords/lofi.tidal index baf63ac..49568fc 100644 --- a/study/chords/lofi.tidal +++ b/study/chords/lofi.tidal @@ -28,21 +28,23 @@ d1 -- "<[d,f,a,c6,e6,g6] [ef, gf, bf, df6,f6,af6]>" -- -- # Amin11, D7, Fmaj7, Cmaj7 - Pure bliss - "<[a,c6,e6,g6,b6,d7] [fs,a,c6,d6,fs6,a6,c7] [f,a,c6,e6,f6,a6,c7] [c,e,g,b,e6,g6,b6]>" + -- "<[a,c6,e6,g6,b6,d7] [fs,a,c6,d6,fs6,a6,c7] [f,a,c6,e6,f6,a6,c7] [c,e,g,b,e6,g6,b6]>" -- -- # Cmin11,Fmin9,Cmin11,G7#5 - Enthusiasm -- "<[c,ef,g,bf,d6,f6] <[c,f,af,c6,ef6,g6,bf6] [g,b,ds6,f6,g6,b6,ds7]>>" - - 12) - -- TODO: Ebmaj9,Abmaj13 (3:34) + -- + -- # Ebmaj9,Abmaj13 - ???(3:34) - Very uplfting + -- "<[f,gs,c,ef,g6,bf6] [ef,g,bf,d6,f6,as6]>" + - 24) -- TODO: Gmaj7+ (4:16?) -- TODO: Gmin9+ (5:13?) -- # "superpiano" # velocity 0.6 # "FMRhodes1" -- # "FMRhodes2" - # att 1 # rel 2 + # att 0.1 # rel 2 # modIndex 0 # room 0.8 # dry 1 # sz 0.2 -- # midiG' "^79" 0 1.2 - # gain 0.7 + # gain 0.9