Update: Toyota, Dimitri, Bailar!

parent 25b14202
# Work in progress
## Worksheet
- Jazz noise: basis for jazzy drums / hip instru?o
- Jazz noise: basis for jazzy drums / hip instru
- TODO Foret noire: techno sorciere-forestiere!
- TODO Foret noire: techno sorciere-forestiere !
## MIDI
Beats.tidal: various background beats, hip/techno
- Metal break! Guitar break en Si
- Cyprès Poudreux - Break dusty cypress + guitars, too much cypress
- BruitHiver: grand froid cosmic noise
## Lessons
......@@ -15,9 +21,11 @@
## Prod
<!-- region TODO: Record! -->
- [DNB] Sensation octobre Nass guitar
<!-- endregion -->
- BAILAR: Marcia danse pour moi!
- Crapeau HipPo: Clav sur rythme hip-hop manuel
- Break britafuninnique: boucle hip hop breatbeat piano attend un lead
- Marche vertige: vertige vibration attend drum militaire
......
......@@ -18,3 +18,19 @@ $ note ("5 6 8 ~ 8 [6 5] 6 ~"
once $ note (-18) # "sax"
-- # gain 0.47
# cut 1
-- LASER BRUITISTE
d1 $ plyWith 8 (|* crush 1.4) $ n "0 2" # sound "cpu2"
-- Orgue 8-bit
d1
$ off 0.5 ((|+ note 12) . (|* gain 0.7))
$ slow 2
$ stut 8 0.85 (1/"<64!16 128!16>")
$ swingBy "q" 4
$ scramble 4 $ every 4 rev $ note (scale "lydian" (run 8))
# "supersquare" # gain 0.5
# voice (slow 4 sine)
# octave (slow 4 "<3 4 5 5>")
# legato 1
# gain 0.4
......@@ -28,7 +28,7 @@ $ note (scale "aeolian" (
))
d1 -- continuous laser
$ s "bd" >| speed (segment 50 $ range 40 5 (saw))
$ slow 4 $ "bd" >| speed (segment (slow 24 "<32 64 128>") $ range 40 5 sine)
d1 -- continuous structured xylophone
$ sound "bd" >| speed (struct "t ~ t ~ ~ t t" $ range 5 20 saw)
......
once $ s "bd"
once $ s "bd"
d1 -- kick
-- $ euclid "<4 6>" 4
......@@ -30,6 +30,7 @@ $ every' 4 3 (off 0.125 id)
$ every 8 (# gain 0)
$ every' 8 7 (# gain 1.2)
$ rev $ iter 4 $ loopAt 4 $ chop 16 $ "bd"
# gain 2.5
d5 -- cordes guitare pincée
$ someCycles (fast 2 . degrade)
......
......@@ -2,7 +2,7 @@
do
-- resetCycles
setcps (8/60/4)
setcps (120/60/4)
let melody = "0 <0 <2 -2>>"
d1 --Kick : un low et un high pour donner du relief
$ whenmod 32 16 (superimpose (
......
......@@ -7,7 +7,7 @@
-- 3 Guitar | .........................xxxxxxxxxxxxxxFFFFFFFxxxxxxxxxxxxxxxx...........
-- 4 Bass | bbbbbbbbbbbbbbbbbxxxxxxxxxxxxx.......................xxxxxxxxxxxxxxbbbbbbbbb
do
resetCycles
-- resetCycles
setcps (160/4/60)
d1 -- Poum tchak
$ mask "<f!8 f!23 [f t] t!32 f!8 f!23 [f t] t!32>" -- Orchestration
......@@ -34,9 +34,9 @@ d3
$ "fguitar"
# n ("<8!4 10!4 8 10 10 8>")
# cut 3
# gain 0.9
# room 0.3
# size 0.4
# gain 1.1
# room 0.8
# size 0.9
# dry 1
# pan 0.35
d4 -- BASSLINE ELECTRIQUE
......
do
setcps (120/60/4)
d1
$ superimpose (const $ "jazz"
)
$ loopAt 4 $ "dusty"
# gain 0.8
# cut 1
d2 $ fast "<4!3 8>" $ "dr" # gain 0.5
d3
$ sometimesBy "0.75 0.5 0.25 0.1" (ply 2)
$ fast "<1!3 2>"
$ "~ ~ ~ [sn:1,snare:2]"
-- # gain 0.8
-- TECHNO-CLAP
do
d1
$ "k . <~!4 k!4 k(<3 5>,8)!4>"
# "jazz" # gain 1.8
d2
$ fix (
(stut 2 0.9 "<q e s>") .
(|* gain 2)
) ("hh")
$ "c*2 c*<4 [2 4]>"
# "cpu:3!7 [cpu2:2,hh]"
# lpf (fast 4 $ range 2000 10000 rand)
# gain (slow 16 $ range 0.8 2 sine)
-- Samedi après-midi venteux
do
setcps (130/60/4)
let glob = (degradeBy ("0 1 1 [1 0]" * 0.95) . (# djf 0.3))
d1
$ glob
$ "bd*<4!16 2 2 1 2>" # gain 1.5
d2 -- continuous laser
$ glob
$ whenmod 32 0 (|* gain (slow 16 $ range 1 0.5 isaw))
$ jux rev
$ slow 2
$ "bd" >| speed (segment (slow 24 "<32 64 128>") $ range 40 5 sine)
d3
-- $ glob
$ jux rev
$ iter 4
$ whenmod 64 32 (# squiz 2)
$ "bd*<[8 <8 8 2> 4 8]!3 [16!3 8]>"
# gain 2.5
# hpf 5000
d4
$ glob
$ superimpose (
swing 2 . arp "<updown!3 downup>"
. (|+ note 12)
)
$ "supersaw"
# note ("<c3'maj c3'maj c3'min g3'maj>")
# voice 0.1
# gain (slow 8 $ range 0.55 1 sine)
d5
$ glob
$ arp "up"
$ "supergong"
# note ("<c3'maj c3'maj c3'min g3'maj>")
# octave "<7 7 8 9>"
# gain 1.2
d6 -- bourrasque
$ glob
$ every 16 (jux rev) -- echo
-- $ every 8 (# gain 0.9)
$ s "space:3"
# speed 0.25
# gain 1.25
# pan 1
......@@ -8,12 +8,18 @@ osc = NetAddr.new("127.0.0.1", 6010);
MIDIClient.init;
MIDIIn.connectAll;
// Initial: sends velocity on note's channel
// on = MIDIFunc.noteOn({ |val, num, chan, src|
// osc.sendMsg("/ctrl", num.asString, val/127);
// });
on = MIDIFunc.noteOn({ |val, num, chan, src|
osc.sendMsg("/ctrl", num.asString, val/127);
// it will be passed the arguments val, num, chan, and src, corresponding to the message value (e.g. velocity, control value, etc.)
osc.sendMsg("/ctrl", "note", (num - 60));
});
off = MIDIFunc.noteOff({ |val, num, chan, src|
osc.sendMsg("/ctrl", num.asString, 0);
osc.sendMsg("/ctrl", "note", 0);
});
cc = MIDIFunc.cc({ |val, num, chan, src|
......
......@@ -6,118 +6,34 @@ do
# gain "<0.75 0.65!3>"
# hpf 1000
once $ note (scale "locrian" ("a5" + (run 8))) # "superpiano" # velocity 0.2
-- setcps 0
-- TODO record with SEQ 6: jazz impro All the things you are left hand
-- Noisy Snake Hats
-- TECHNO
do
-- setcps 0.55
resetCycles
d1
$ someCyclesBy (slow 16 $ "<0 0.25>") (off "e" id)
$ "[jazz,cpu]"
# gain (slow 16 $ range 0.8 0.4 isaw)
# lpf 2000
# release 0.2
# pan 0.45
# dry 0.9
d2 -- Snares / claps: accel 16/8, djf/64
$ whenmod 16 8 (fast ("2 <4!8 <8!8 [4 . 8 [2|4]]!8>>"))
$ superimpose ((# "clap:2") . (|* gain 0.7))
$ "~ snare" # n "[1,2]"
-- # gain (slow 32 $ range 0.8 0.5 isaw)
# pan 0.3
# djf (slow 64 (cosine + perlin/4))
d3 -- Hats snake-ish
$ (|+ pan (slow 10 $ range 0 0.25 saw))
$ juxBy 0.2 (rev . (|* gain 0.85))
$ fast 2
-- $ sometimesBy "0 1" (off "e" id)
$ "h . h ~ <h!3 h?> ~ ~ <~!3 h?>"
# "808oh"
# n "<0 3>"
# gain (slow 32 $ range 0.6 0.4 (sine + isaw/4))
d10 -- DELICI0US N0153
$ whenmod 64 48 (juxBy 0.25 (# crush 5))
$ whenmod 8 6 (rarely (loopAt 2))
$ "~ ~ ~ <n!3 [~ n] n [~ n] n [~ n]>"
# "psr" # n "<1!8 10!4 11!4 12!7 2>" -- 1 10 11 12 rare 2
# lpf (slow 2 $ range 2000 1000 perlin)
# pan (slow 4 $ range 0.2 0.9 perlin)
# gain (slow 32 $ range 0.25 0.45 (saw + perlin))
# cut 10
setcps (120/60/4)
d1 $ "jazz*4"
d3 $ "hh*8"
d2 $ "~ cp"
-- Hip Beat
-- Techno hh(13/16) PIANO prog+MIDI"note" degrade1
do
setcps (120/60/4)
d1
$ whenmod 32 16 (# djf (slow 16 $ sine))
$ "k . k(<3 <5 1>>,8)"
# "jazz" # gain 0.8
d2 $ "~ snare:8"
d1 $ "jazz*4"
d4 $ "hh(13,16)"
d2
$ (1 ~>)
$ degradeBy (1 - (cF 0 "1"))
$ note "<0 5 7>"
# "superpiano"
# velocity 0.7 # legato 4
d3
$ whenmod 16 8 (jux rev)
$ fast "<4 4 8 4>"
$ "drum:8" # gain (slow 16 $ range 0.6 0.85 saw)
$ degradeBy (1 - (cF 0 "1"))
$ euclid "<8!2 16!2>" 16 $ note (cF (0) "note")
# "superpiano"
# velocity 0.7 # legato 4
-- BREAKS
-- CC1 General MIDI Acoustic Guitar
-- Accord parfait Si Ré Fa# Si
-- Impro Si Ré Mi Fa Fa# La Si
-- Metal march
do
setcps (70/60/4)
d1
-- $ fast (slow 8 "<1 2 4 <8 [8 0]>>")
$ "[cpu,jazz]*8"
# room 0.8 # sz 0.8
# dry 1.02
# lpf 2000
# gain 0.75
d2
-- $ mask "<f!4 t!28>"
$ slice 4 (
whenmod 32 24 (>| "<3 3 0 0> <2 1> <1 2> <0!3 3> ")
$ whenmod 32 16 (>| "4 0 4 0")
"<0 [~ 0]> 1 2 3*<1!3 <2 4>>"
)
$ loopAt 4
$ "break"
# gain (slow 42 $ range 0.35 0.7 perlin)
# cut 2
d3
$ whenmod 8 0 (
sometimesBy "0!7 [0 1]" (
(# "ho:5")
. (|* gain 0.6)
. (|+ room 0.2)
. (# note "<0 0 3 0 3 3 0 0 3 0 3 0 0 0 -1 0>")
-- . ("e" ~>)
)
)
$ swing (slow 16 "<1 4>")
$ fast (8 * "1 <1!3 [2 1]>") $ "h"
# "hh"
# gain (slow 16 $ range 0.4 0.8 saw)
# room 0.1
# sz 0.5
# pan 0.9
# cut 3
d4 $ "~!7 cp" # lpf 200
d9
$ "<g!16 g(<3 3 5 <8 [8 4]>>,8)!16>"
# "glitch:2"
# crush (range 4 5 perlin)
# gain 0.57
# room 0.5
-- BreabBeat
-- BreakBeat
do
setcps (80/60/4)
d1
......@@ -132,10 +48,62 @@ do
# lpf (slow 24 $ range 10000 200 sine)
d3 $ "~ ~ ~ cp/2" # djf (slow 16 cosine)
-- TECHNO
-- setcps 0
-- TODO record with SEQ 6: jazz impro All the things you are left hand
-- Noisy Snake Hats
do
-- setcps 0.55
-- resetCycles
let dg = (degradeBy $ (1 - (range 0.25 1 "^1")))
d1
$ dg
$ someCyclesBy (slow 16 $ "<0 0.25>") (off "e" id)
$ "[jazz,cpu]"
# gain (slow 16 $ range 0.8 0.4 isaw)
# lpf 2000
# release 0.2
# pan 0.45
# dry 0.9
d2 -- Snares / claps: accel 16/8, djf/64
$ dg
$ whenmod 16 8 (fast ("2 <4!8 <8!8 [4 . 8 [2|4]]!8>>"))
$ superimpose ((# "clap:2") . (|* gain 0.7))
$ "~ snare" # n "[1,2]"
-- # gain (slow 32 $ range 0.8 0.5 isaw)
# pan 0.3
# djf (slow 64 (cosine + perlin/4))
d3 -- Hats snake-ish
$ dg
$ (|+ pan (slow 10 $ range 0 0.25 saw))
$ juxBy 0.2 (rev . (|* gain 0.85))
$ fast 2
-- $ sometimesBy "0 1" (off "e" id)
$ "h . h ~ <h!3 h?> ~ ~ <~!3 h?>"
# "808oh"
# n "<0 3>"
# gain (slow 32 $ range 0.6 0.4 (sine + isaw/4))
d10 -- DELICI0US N0153
$ dg
$ whenmod 64 48 (juxBy 0.25 (# crush 5))
$ whenmod 8 6 (rarely (loopAt 2))
$ "~ ~ ~ <n!3 [~ n] n [~ n] n [~ n]>"
# "psr" # n "<1!8 10!4 11!4 12!7 2>" -- 1 10 11 12 rare 2
# lpf (slow 2 $ range 2000 1000 perlin)
# pan (slow 4 $ range 0.2 0.9 perlin)
# gain (slow 32 $ range 0.25 0.45 (saw + perlin))
# cut 10
-- Hip Beat rebond k k([3|5],8)
do
setcps (120/60/4)
d1 $ "jazz*4"
d3 $ "hh*8"
d2 $ "~ cp"
111
setcps (120/60/4)
d1
$ whenmod 32 16 (# djf (slow 16 $ sine))
$ "k . k(<3 <5 1>>,8)"
# "jazz" # gain 0.8
d2 $ "~ snare:8"
d3
$ whenmod 16 8 (jux rev)
$ fast "<4 4 8 4>"
$ "drum:8" # gain (slow 16 $ range 0.6 0.85 saw)
-- CC1 General MIDI Acoustic Guitar
-- Accord parfait Si Ré Fa# Si
-- Impro Si Ré Mi Fa Fa# La Si
-- Metal march
do
setcps (70/60/4)
d1
-- $ fast (slow 8 "<1 2 4 <8 [8 0]>>")
$ "[cpu,jazz]*8"
# room 0.8 # sz 0.8
# dry 1.02
# lpf 2000
# gain 0.75
d2
-- $ mask "<f!4 t!28>"
$ slice 4 (
whenmod 32 24 (>| "<3 3 0 0> <2 1> <1 2> <0!3 3> ")
$ whenmod 32 16 (>| "4 0 4 0")
"<0 [~ 0]> 1 2 3*<1!3 <2 4>>"
)
$ loopAt 4
$ "break"
# gain (slow 42 $ range 0.35 0.7 perlin)
# cut 2
d3
$ whenmod 8 0 (
sometimesBy "0!7 [0 1]" (
(# "ho:5")
. (|* gain 0.6)
. (|+ room 0.2)
. (# note "<0 0 3 0 3 3 0 0 3 0 3 0 0 0 -1 0>")
-- . ("e" ~>)
)
)
$ swing (slow 16 "<1 4>")
$ fast (8 * "1 <1!3 [2 1]>") $ "h"
# "hh"
# gain (slow 16 $ range 0.4 0.8 saw)
# room 0.1
# sz 0.5
# pan 0.9
# cut 3
d4 $ "~!7 cp" # lpf 200
d9
$ "<g!16 g(<3 3 5 <8 [8 4]>>,8)!16>"
# "glitch:2"
# crush (range 4 5 perlin)
# gain 0.57
# room 0.5
-- BruitHiver: Les sons du grand froid
do
setcps (120/60/4)
resetCycles
d1
$ mask "<f!8 t!120>"
$ whenmod 32 16 (# djf (slow 16 $ sine))
$ "k . k(<3 <5 1>>,8)"
# "[jazz,bd]"
# gain 0.85
# lpf 6000
d2
$ mask "<f!12 t!20 f!4 t!28>"
$ whenmod 64 32 (# squiz (slow 32 $ range 1 1.09 sine))
$ "~ snare:8 . ~"
# gain 0.8
d3
$ mask "<f!3 t!125>"
$ whenmod 16 8 (jux rev)
$ fast "<4 4 8 [4 . <8 16> 16]>"
$ "drum" # n "[0,2]"
# gain (slow 16 $ range 0.6 0.85 saw)
# hpf 5000
d10
$ "[cosmicg:2]"
# begin 0.05
# note ("f4" + "[0|12|24]")
# lpf (slow 64 $ range 2000 8000 sine)
# gain (slow 4 $ range 0.4 0.75 perlin)
# cut 10
once $ "cosmicg:7" # gain 0.5 # cut 42
do
setcps (90/60/4)
resetCycles
let glob = (degradeBy $ "<0 1> 0.95!15" * (1 - (cF 0 "1")))
d1 -- Beat
$ mask "<f!4 t!12>"
$ "k . <~!8 k!8> ~ ~ k*<1!4 [1|2]!4>"
# "reverbkick"
# lpf 2000
# legato 1.5
# gain (fast 8 $ 0.9 + (perlin/10))
d2 -- Break
$ glob
$ loopAt 4
$ slice 8 (iter 4 $ run 8)
$ "dusty" # n "<3!3 4>"
# pan 0.6
# cut 2
# gain (slow 16 $ range 0.6 1 sine)
d3 -- CYPRESS
$ glob
$ loopAt 4
$ slice 4 "[0|2] 1 [0|2]*<1!3 [4 2]> 1*<1!7 2>"
$ "dusty:0"
# gain (slow 16 $ range 1 0.6 sine)
# lpf 2000
# pan 0.35
# cut 3
do
setcps (90/60/4)
d1 $ s "jazz"
d2 $ "dusty/2" # gain 0.7 # cut 2
once $ "dusty:1"
-- BRASS /1
once $ "dusty:1"
-- Sandbox
d4 -- Trumps
-- $ mask (slow 16 "<f t [f!3 t] [t!3 f]>")
$ "[~ dusty:2]/4"
# cut 4
# end 0.9
# gain 0.65
once $ "dusty:2"
......@@ -6,15 +6,16 @@ d2 $ fast 4 $ "drum:8"
# gain 0.5
d10 $ note (cF (0) "0") # "superpiano"
# velocity 0.5
-- TODO CLEANUP BELOW
d10 $ fast 8 $ note ((cF (0) "1") * 26) # "superpiano"
# velocity 0.7
d1 $ sound "jazz*4"
-- # djf (cF default CC_Number)
-- # djf (cF 0.5 "14")
# djf ("^14")
# gain 0.6
# djf ("^1")
-- # gain 0.6
# speed (cF 12 "0")
......
-- Parov : Psychedelic jazz
-- Piano: Si do re mi
do
setcps 0.46
d1 $ s "tech:5*4" # note (-4)
d2 $ s "[~ hh ~ <hh [hh ~ hh]>]*2"
# gain 0.9
d4
$ superimpose (
const
$ fix (# silence) (note "0") -- MUTE DEFAULT
$ "t([<12!4 3!4> <6!3 <8 16>>],16)"
>| (segment 16 $ note "^note")
# "superpiano"
# (velocity (range 0.4 0.7 "^1"))
# (crush (range 32 5 "^1"))
)
$ s "superpiano"
# note "<-20 [-19,-15] [-20,-16] ~>"
# velocity "<0.7 0.5 0.6>"
# sustain 3
# gain 0.9
d4
$ superimpose (>| note ("^note" + "0 0"))
$ s "superpiano"
# velocity "<0.7 0.5 0.6>"
# sustain 3
# gain 0.9
do
let gGlob = 1
setcps (126/60/4)
resetCycles
d1 -- Kick etouffable
$ mask "<f!8 t!56 f!16 t!48>" -- Pont!
$ fast "<4!16 1!4 2!4 4!8 1!4 8 1!3 4 1 1 2 4 4!8>"
$ "[jazz,techno]"
# djf (slow 64 $ sine)
# gain (gGlob * 0.8)
d2 -- Drums reguliers
$ mask "<t!64 f!8 t!56>" -- Pont!
$ sometimesBy "0 0 0.25 0" (ply 2)
$ fast "<4!12 8!6 16 [8 4]>"
$ "drum:2"
# djf (slow 64 $ sine)
# gain (gGlob * 1)
d3 -- Tambours marche
$ mask "<t!64 f!12 t!52>" -- Pont!
$ "cpu:2*<4!3 <8 [8 16] [8 16 8] [16 8 16] [16!3 8]>>"
# room 0.125 # sz 0.1
# djf (slow 64 $ cosine)
# pan (slow 8 $ range 0.3 0.7 sine)
# gain (gGlob * (slow 32 $ range 0.45 0.85 sine))
d4 -- Rita Orchestra
$ mask "<t!24 f!3 t f!4>"
$ juxBy 0.8 (# cut 41)
$ degradeBy (slow 128 $ range 0 0.65 saw)
$ sometimesBy "<1!32 0!32>" (chop "<16!8 8!8 4!8 2!8>")
$ "rita/<4!8 8!8>"
# cut 4
# room 0.2 # sz 0.8
# pan 0.7
# gain (gGlob * (slow 96 $ range 0.25 0.45 sine))
d5 -- Wahwah
$ mask "<f!16 t!48 t!4 f!12 t!48>" -- Pont!
$ whenmod 8 6 (juxBy 0.8 (rev . chop 4))
$ iter 2
$ striate 4
$ "rita:2"
# gain (gGlob * (slow 4 "<1 0.9 0.8 0.7>") * 0.58)
# pan 0.3
# cut 5
......@@ -73,6 +73,8 @@ do
scale "major" "<0 2 4 12>" + (run 4)
) # gain 0.7
once "fpiano"
once $ s "fguitar:36"
# gain 0.75 # cut 42
......
......@@ -27,7 +27,7 @@ do
(slow 16 $ "<20 30 40 50 40 30 20 10>")
saw
)
# gain 0.35
# gain 0.65
|- note "[<12 ~>,24,<-12 -12?>]"
d8 -- Lead forks!
-- $ fast 2
......
(
// ---------------------------- //
// --- RUN THIS WHOLE BLOCK --- //
// ---------------------------- //
// configure the sound server: here you could add hardware specific options
// see http://doc.sccode.org/Classes/ServerOptions.html
//s.options.outDevice = "Soundflower (64ch)";
//s.options.inDevice = "Soundflower (64ch)";
s.options.numBuffers = 1024 * 16; // increase this if you need to load more samples
s.options.memSize = 8192 * 16; // increase this if you get "alloc failed" messages
s.options.maxNodes = 1024 * 32; // increase this if you are getting drop outs and the message "too many nodes"
s.options.numOutputBusChannels = 8; // 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.loadSoundFiles; // load samples (path containing a wildcard can be passed in)
// for example: ~dirt.loadSoundFiles("/Users/myUserName/Dirt/samples/*");
s.sync; // wait for samples to be read
~dirt.start(57120, [0,2,4,6,8,10,12,14]); // start listening on port 57120, create four busses each sending audio to channel 0
(
SynthDef(\plucklead, {
|out, sustain = 1, freq = 440, speed = 1, begin=0, end=1, pan, accelerate, offset|
var line = Line.ar(begin, end, sustain, doneAction:2);
var env = Env([0, 1, 0.333, 0],[5, 70, 1000]);
var envGen = IEnvGen.ar(env, line*env.times.sum*abs(speed));
var speedFreq = freq*abs(speed);
var pulseLfo = SinOsc.ar(Rand(-1,1));
var sound = RLPF.ar(Pulse.ar([speedFreq*Rand(0.99,1.01)*2,speedFreq*Rand(0.99,1.01)*2],pulseLfo)*0.5+Saw.ar(speedFreq), (20000*(envGen**2.8))+DC.ar(10), 0.5);
Out.ar(out, DirtPan.ar(sound, ~dirt.numChannels, pan, envGen));
}).add;
);
~modBus.free;
~carBus.free;
~dirt.orbits[0].outBus = 0;
~dirt.orbits[1].outBus = 0;
// --- //
~modBus = Bus.audio(s, numChannels:2); // assuming stereo, expand if needed
~carBus = Bus.audio(s, numChannels:2);
~dirt.orbits[0].outBus = ~modBus; // play into that bus.
~dirt.orbits[1].outBus = ~carBus;
(
Ndef(\x, {
var modBus = In.ar(~modBus, 2);
var carBus = In.ar(~carBus, 2);
var out = modBus+carBus;
//carBus = FreeVerb.ar(carBus, 0.9, 0.8, 0.8);
carBus = carBus+((-7).dbamp*Compander.ar(FreeVerb.ar(carBus, 0.9), carBus, -30.dbamp, 1, 0.01, 0.01, 0.07));
carBus = Compander.ar(carBus,carBus,-20.dbamp,1,0.5,0.01,0.35)*(-5).dbamp;
out = Compander.ar(carBus, modBus, -30.dbamp, 1, 0.01, 0.01, 0.07)+modBus;
out = Compander.ar(out, out, -15.dbamp, 1, 0.2)*4;
Out.ar(0, out);
});
);
(
MIDIClient.init;
MIDIIn.connectAll;
~tidalSocket = NetAddr("localhost", 6010);
~notes=[];
//MIDIFunc.cc( {|val, num, chan, src| ~tidalSocket.sendMsg('/ctrl', num, val/127.0);}, nil, nil, nil);
MIDIFunc.noteOn({|veloc, num, chan, src| ~notes=~notes.add(num); ~tidalSocket.sendMsg('/ctrl', "notes", format("%", ~notes)); });
MIDIFunc.noteOff({|veloc, num, chan, src| ~notes=~notes.takeThese({|x| x==num}); ~tidalSocket.sendMsg('/ctrl', "notes", format("%", ~notes)); });
);
};
);
// check me out for the current notes being played
~notes.postln;
File added
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