Commit df5475c5 by PLN (Algolia)

live: Practice OPERATE!!1!

parent 4489e438
do
-- resetCycles
d1
$ mask "<t f!7 t!24>"
$ fast 2
......
do
resetCycles
setcps (82/60/4)
......
......@@ -18,7 +18,7 @@ d1 $ g1 $ m --
$ fix (# cut 1) ("808bd")
$ midiOn "^42" (<| "k k k <k [<~ k> k]>")
$ midiOff "^42" (<| "k . ~ <k k ~ ~> k*<1!3 2 2 2 1 2> <~ ~ k <k ~>>")
$ "[jazz,<808bd:2!6 808bd:1!2>,hh:5]"
$ "[jazz,808bd:1,hh:5]"
# midiG' "^78" 0 1.3
d3 $ g1 $ m -- Snare
$ mask "<f!3 [f t] t!8 [t f]!4>"
......
......@@ -11,12 +11,13 @@ d1 -- TODO: Improve kick. Sound? Rhythm?
$ gF
$ midiOn "^42" (mask "t(1,4)")
-- $ mask "<f!4 t(1,2)!3 t!9>"
$ fix (|* gain 0.9) ("kick")
$ fix ((|* gain 0.75) . (# att 0.35) . (# rel 1)
$ fix ((|* gain 0.8) . (# att 0.05) . (# rel 1)) ("kick")
$ fix ((|* gain 0.75)
. (# att 0.25) . (# rel 1)
) ("reverbkick")
$ midiOn "^41" (<| "k <k!4 ~ k!3> k <k [~ k] k [<k!4 ~!3 k> k]>") -- Run & stumble
$ midiOff "^41" (<| "k . ~ k ~ ~") -- L'attente
$ "jazz"
$ "[jazz,reverbkick,kick:5]"
# midiG' "^78" 0 1.3
d2 $ gF $ gM -- Snare glitch high
-- $ midiOn "^43" (superimpose (<| )) FIXME LATER SNARE MOD
......
......@@ -26,7 +26,7 @@ d2 $ f1 $ m -- Clave de l'été
# midiG' "^79" 0 1.4
# speed (range 0 2 "^51")
d4 $ f1 $ m -- Mecano Course
$ fast 4
-- $ fast "<<4 2> 4!7 2!4 2 2 4 8>"
$ midiOn "^76" (fast "<2!3 <4 [4 2]>>" . (# speed 1.2) . (>| "breaks165"))
$ midiOn "^44" (slice 16 ("0*<1 2> 1 2 3*<2 1>") . (>| "breaks125"))
-- $ midiOn "^76" (slice 8 "0 <1 ~> 7 3*<1 2 4 4>")
......@@ -58,7 +58,7 @@ d6 $ f2 $ m -- Douce guitare juxée
# midiG' "^82" 0 1
# release (range 2 0.15 "^34")
# crushbus 61 (range 8 1.4 "^54")
# pan 0.75
# pan 0.85
# room 0.2 # dry 1
# cut 3
d7 $ f2 $ m
......@@ -70,7 +70,7 @@ d7 $ f2 $ m
# room 0.2
# midiG' "^83" 0 1.4
# cut 7
d8 $ f2 $ m -- Angels of moogland
d12 $ f2 $ m -- Angels of moogland
$ midiOn "^92" (|+ note 12)
$ midiOn "^60" (
superimpose (
......@@ -83,6 +83,7 @@ d8 $ f2 $ m -- Angels of moogland
# octave 4
# room 0.24
# "moogBass"
# crushbus 81 (range 16 1.4 "^56") -- Even an angel can fall in love
# midiG' "^84" 0 1.3
......
......@@ -9,27 +9,21 @@ let prog = ("<cs5!4 a4 a4 b4 gs4>")
let chorus = pF "chorus"
let mix = pF "mix"
let modIndex = pF "modIndex" -- 0.2
let gG a = (gain (1.2 * "^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 gDJF = (# djfbus 1 (range 0.1 0.9 "^49"))
-- let gFreqL = (# lpq (range 0 0.25 "^29"))
-- let gFreqH = (# hpq (range 0 0.25 "^30"))
-- let gFreqs = (gFreqH . gFreqL)
let g = (gDJF)
setcps 0.5
d1 $ g
$ fix (|* gain 0.75) "kick:5"
$ midiOn "^41" ( -- KICK RUN
((>| "[jazz,kick:5]*<4 4 4 [4!3 8] 4 4 2 <2 [2 8]>>") . (|* gain 0.35))
((>| "[jazz,kick:5]*<4 4 4 [4!3 8] 4 4 2 <2 [2 8]>>") . (|* gain 0.8))
)
$ midiOff "^41" (<| "[k([1|<3!3 5 [3 8]>],8)]*<1!16 2!16>")
$ "hh27" # n "[5,6]"
# gM' 0 4 "^78"
# midiG' "^78" 0 2
d2 $ g -- Breathing snare contretemps
$ midiOn "^43" (fast "<2 2 2 2 4 2 2 4 4>")
$ "~ [hh27:7,snare:13]"
# room 0.6 # sz 0.7 # dry (slow 20 $ range 0 2 perlin)
# gM' 0.5 1.8 "^79"
$ "~ [snare:12,drum:2]"
# midiG' "^79" 0.5 1.8
d3 -- Runny Maracas
$ g
$ whenmod 16 8 (often $ fast 2)
......@@ -37,7 +31,7 @@ d3 -- Runny Maracas
$ fix ((|* gain 0.9) . (# release 0.8)) (n 9)
$ "hh27*8"
# n "2 <2 <[2|9] [9 <9 ~> <~ 9> 2]>>"
# gM' 0.25 1.75 "^80"
# midiG' "^80" 0.25 1.75
d6 $ g -- Guitar riffs
$ whenmod 16 12 (off "h" (
chop 4
......@@ -55,7 +49,7 @@ d6 $ g -- Guitar riffs
# pan 0.9
# room 0.3
# sz 0.9
# gM' 0.4 1.5 "^81"
# midiG' "^81" 0.4 1.5
d4 -- Rhodes base + chords
$ g
$ midiOn "^58" (superimpose ( -- ARPS <3
......@@ -76,7 +70,7 @@ d4 -- Rhodes base + chords
# modIndex "[0,5,10]"
# pan 0.8
# crushbus 4 (range 10 4 "^54")
# gM' 0.3 1.9 "^82"
# midiG' "^82" 0.3 1.9
d5 $ g -- Choirs + arps
$ juxBy "0.7" (
arp "<up <up down>>"
......@@ -87,7 +81,8 @@ d5 $ g -- Choirs + arps
$ "moogBass"
# note (prog + "[0,24]")
# octave 3
# midiG' "^56" 0 1.2
# crushbus 51 (range 13 4.5 "^56")
# midiG' "^84" 0 1.2
# pan 0.2
# chorus 0.6
d8 $ g -- Electrified laggy moog
......@@ -97,14 +92,8 @@ d8 $ g -- Electrified laggy moog
$ note (prog + "0 <12!4 12 12 16 <12 16>>")
# "moog:2"
# crushbus 8 (range 10 3.4 "^55")
# gM' 0 1.8 "^83"
# midiG' "^83" 0 1.8
# legato 2
# cut 8
# pan 0.6
# release 100
d9 $ g
$ midiOff "^60" (mask "<f!8 t!124>")
$ midiOn "^92" (fast 4)
$ "~ clap"
# note (-8)
# gM' 0 1.5 "^84"
......@@ -13,10 +13,10 @@ let prog = "<c6'maj7'2 <g6'maj'2 g6'maj> d6'm9 <g6'maj g6'maj'4>>"
-- let prog = "<d6'm9 g6'maj'4>"
let progm = "<<c c e e> d e <d g>>"
d1 $ g
$ midiOn "^41" (<| "k k k <k k*2 [~ k] k*2>")
$ midiOff "^41" (<| "k . k <~ [<~ k> <k ~>]>")-- RubADub
$ "jazz"
# midiG' "^78" 0 1.8
$ midiOn "^41" (<| "k k k <k k*2 [~ k] k*2>") -- Kick it!
$ midiOff "^41" (<| "k . k <~ [<~ k> <k ~>]>") -- RubADub
$ "[jazz,909,kick:5]"
# midiG' "^78" 0 1.5
d2 $ g
$ whenmod 8 4 (ply "1 <1 2 1 1> <2 1 1 2> <1 1 2 1>")
$ midiOn "^43" (fast 2)
......@@ -27,6 +27,17 @@ d3 $ g
$ struct "t*[8 <<4 16> 16 <8 [8 4] 4 8> 16>]"
$ "h2ogmhh" # n "[10|11|12]*4"
# midiG' "^80" 0 1.5
d3
$ mask "t . <t!6 f f>"
$ sometimesBy "0 ^16!6 0" ((|* gain 0.9) . (|/ speed 2))
$ sometimesBy "^32" (|* speed 1.5)
$ sometimesBy "0 ^52!7" (ply "<2!3 [2!3 1]>")
$ g
$ chop 16
$ loopAt 2
$ "break:2"
# cut 3
# midiG' "^80" 0 1.5
d4 $ g -- Bassline
$ swingBy "h" 8
$ midiOn "^57" (degradeBy $ "0 1!3 0 1!2 0" * 0.5)
......@@ -49,6 +60,7 @@ d5 $ g -- Nappes plage
))
$ note (prog - 12)
# "moog:2"
# crushbus 50 (range 10 1.2 "^54")
# midiG' "^82" 0 1
# attack 0.8
# room 0.4 # sz 0.9
......@@ -56,27 +68,27 @@ d6 -- Guitare nostalgique
$ midiOn "^59" (slice 4 "0 1 2 3")
$ mask "<t!3 f>"
$ "fguitar" # n "<34!32 35!16 34!16>"
# midiG' "^83" 0 1.4
# midiG' "^83" 0 1
# crushbus 60 (range 10 2.85 "^55")
# pan 0.65
# cut 6
d7 $ g
d7 $ g -- C-Bows
$ midiOn "^60" (mask "t([4 <8 8 4 8>],16)")
$ superimpose (
(>| note (
"<0 <-1 2>>" + "0(3,8) 0"
))
. (|+ note 24)
. (|* gain (0.6 * (range 0 1.25 "^56")))
. (|* gain (range 0 1 "^56"))
)
$ note (
$ note ( -- Graves!
progm
+ "<0 0 10 0> <7 12>"
+ "<0 0 10 0> <7 12>" -- FIXME?
+ "0 . [0!3 ~] 0*<1!7 2>"
)
# "cbow:8"
# pan "<0.7!7 0.3>"
# midiG' "^84" 0 (1.5 * "^20")
# midiG' ("^84" * "^20") 0 0.9
d8 $ g
$ midiOn "^60" (off "q" (# n 11) . (|* gain 0.95))
$ note (
......@@ -86,4 +98,4 @@ d8 $ g
)
# "cbow" # n "[9,<~!4 10!4>]"
# pan "<0.3!7 0.7>"
# midiG' "^84" 0 1.5
# midiG' ("^84" * "^36") 0 1
......@@ -2,6 +2,17 @@
var on, off, cc;
var osc;
// Send OSC messages to Hydra
//var hydra = NetAddr.new("127.0.0.1", 3333);
//OSCFunc({ |msg, time, tidalAddr|
// var latency = time - Main.elapsedTime;
// msg = msg ++ ["time", time, "latency", latency];
// msg.postln;
// hydra.sendBundle(latency, msg)
//}, '/play2').fix;
osc = NetAddr.new("127.0.0.1", 6010);
MIDIClient.init;
......@@ -38,6 +49,9 @@ if (~stopMidiToOsc != nil, {
// Evaluate the line below to stop it.
// ~stopMidiToOsc.value;
// MIDI OUT
// ~midiOut = MIDIOut.newByName("iO4", "iO4 iO4"); // Alesis iO4
/*
This is an example startup file. You can load it from your startup file
......@@ -48,7 +62,9 @@ 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
s.options.numBuffers = 1024 * 256; // increase this if you need to load more samples
// Increased from 1024 * 256
s.options.numBuffers = 1024 * 512; // 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"
......@@ -57,12 +73,18 @@ s.options.numInputBusChannels = 2; // set this to your hardware output channel s
// 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)
// 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
~looper = TidalLooper(~dirt); // Start TidalLooper on top :)
~looper.linput = 1;
// optional, needed for convenient access from sclang:
(
......@@ -71,6 +93,26 @@ s.waitForBoot {
~d7 = ~dirt.orbits[6]; ~d8 = ~dirt.orbits[7]; ~d9 = ~dirt.orbits[8];
~d10 = ~dirt.orbits[9]; ~d11 = ~dirt.orbits[10]; ~d12 = ~dirt.orbits[11];
);
// Setup Mutable synths
// Verb as a global effect: https://club.tidalcycles.org/t/mutable-instruments-ugens/2730/22
// (1..SuperDirt.maxSampleNumChannels).do { |numChannels|
// SynthDef("global_mi_verb" ++ numChannels, { |dryBus, effectBus, verbwet=0, verbtime=0, verbdamp=0, verbhp=0, verbfreeze=0, verbdiff=0, verbgain=0|
// var signal = In.ar(dryBus, ~dirt.numChannels);
// signal = MiVerb.ar(signal, verbwet, verbtime, verbdamp, verbhp, verbfreeze, verbdiff);
// Out.ar(effectBus, signal * verbgain)
// }, [\ir, \ir]).add;
// };
// ~dirt.orbits.do { |x|
// // var clouds = GlobalDirtEffect(\global_mi_clouds, [\cloudspitch, \cloudspos, \cloudssize, \cloudsdens, \cloudstex, \cloudswet, \cloudsgain, \cloudsspread, \cloudsrvb, \cloudsfb, \cloudsfreeze, \cloudsmode, \cloudslofi]);
// var verb = GlobalDirtEffect(\global_mi_verb, [\verbwet, \verbtime, \verbdamp, \verbhp, \verbfreeze, \verbdiff, \verbgain]);
// x.globalEffects = ~dirt.orbits[0].globalEffects.addFirst(verb);
// x.initNodeTree;
// // x.set(\fadeTime, 0.01); // What was that for again? :think:
// };
};
s.latency = 1; // increase this if you get "late" messages
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment