research, play, Ndef, synth w/ sine and pulse and some patterns
parent
addd44eedb
commit
698823b4ad
92
LOG.md
92
LOG.md
|
@ -1,12 +1,5 @@
|
|||
# *ark'd, amorphic* development LOG
|
||||
|
||||
## 8.apr, 2020
|
||||
|
||||
Ended up with two kinda finished SynthDefs - a granulator (I wonder how could it be made more reusable, there's space for improvement), and a supersaw, that is still quite soft - I think quite useful for some deep ground here and there. I have managed to make it quite clean, and learned a lot in the process, especially regarding the Splay and panning and stereo balancing. Basic loading of whatever is in lib/ and smp/ folders now works. Will need to be improved on the way.
|
||||
|
||||
I'm kinda moving towards a self-baked framework for composing *dance* tracks, or at least beat-based stuff. It's probably the only way - to build everything by yourself (of course so much has been built within SuperCollider too on top of which I'm building now. There's now also just a basic Buffer player. I was thinking to just create number of different SynthDefs, all some kind of specific synth sounds - pads, leads, basses, etc. I'm also thinking to get onto the single-cycle waveforms collection and use that for table oscilators: Osc, COsc, VOsc, VOsc3...
|
||||
|
||||
I also init remote git repo on git.tmp.si/luka/ark_d.amorphic and pushed current work there (here?).
|
||||
|
||||
## 7.apr, 2020
|
||||
|
||||
|
@ -28,4 +21,87 @@ ARCHITECTURE
|
|||
|
||||
PATTERNS
|
||||
- nested
|
||||
- Ppar, conductor?
|
||||
- Ppar, conductor?
|
||||
|
||||
|
||||
|
||||
## 8.apr, 2020
|
||||
|
||||
Ended up with two kinda finished SynthDefs - a granulator (I wonder how could it be made more reusable, there's space for improvement), and a supersaw, that is still quite soft - I think quite useful for some deep ground here and there. I have managed to make it quite clean, and learned a lot in the process, especially regarding the Splay and panning and stereo balancing. Basic loading of whatever is in lib/ and smp/ folders now works. Will need to be improved on the way.
|
||||
|
||||
I'm kinda moving towards a self-baked framework for composing *dance* tracks, or at least beat-based stuff. It's probably the only way - to build everything by yourself (of course so much has been built within SuperCollider too on top of which I'm building now. There's now also just a basic Buffer player. I was thinking to just create number of different SynthDefs, all some kind of specific synth sounds - pads, leads, basses, etc. I'm also thinking to get onto the single-cycle waveforms collection and use that for table oscilators: Osc, COsc, VOsc, VOsc3...
|
||||
|
||||
I also init remote git repo on git.tmp.si/luka/ark_d.amorphic and pushed current work there (here?).
|
||||
|
||||
|
||||
|
||||
## 9.apr, 2020
|
||||
|
||||
Three hours of play and learning in the morning. Learned how to use ```Ndef``` and then experimented with first building a synth (using Ndef) with sine and pulse oscilators, adding detuning and filter, converting to a ```SynthDef``` and using ```Ndef``` to play with a ```Pbind```:
|
||||
|
||||
```
|
||||
|
||||
(
|
||||
SynthDef(\sinPulz, {
|
||||
arg gate = 1, freq, out=0, amp = 1, attackTime=0.01, releaseTime=1, oscDetune=0.05, cutoff=1;
|
||||
var snd, env;
|
||||
|
||||
oscDetune = oscDetune * 0.1;
|
||||
oscDetune = oscDetune+1;
|
||||
|
||||
|
||||
env = Linen.kr(gate, attackTime:attackTime, releaseTime:releaseTime, doneAction:2);
|
||||
|
||||
snd = SinOsc.ar([freq, freq*oscDetune]) ;
|
||||
snd = snd + SinOsc.ar([freq*2, freq*oscDetune*2]) ;
|
||||
snd = snd + Pulse.ar([freq/2,(freq/2)*oscDetune]) * LFNoise1.kr(0.5).exprange(2,40);
|
||||
|
||||
snd = snd.softclip;
|
||||
snd = RLPF.ar(snd, freq:
|
||||
//LFNoise1.kr(0.01).exprange(4000,300),
|
||||
freq * cutoff,
|
||||
rq:0.4);
|
||||
|
||||
snd = snd * env * amp * 0.4;
|
||||
|
||||
Out.ar(out, snd);
|
||||
}).add;
|
||||
)
|
||||
|
||||
// add a delay/reverb bus here?
|
||||
|
||||
// first press play :)
|
||||
Ndef(\ba).play
|
||||
|
||||
// set default quant
|
||||
Ndef(\ba).proxyspace.quant = 5;
|
||||
|
||||
(
|
||||
Ndef(\ba,
|
||||
Pbindf(
|
||||
Ppar([
|
||||
Pbind(
|
||||
\octave, [4,5,7],
|
||||
\amp, [0.1,0.2,0.005],
|
||||
\degree, Pseq([0,3,4,2,6], inf),
|
||||
\dur, Prand([1,0.5,2], inf),
|
||||
),
|
||||
Pbind(
|
||||
\octave, [3,6],
|
||||
\degree, Pseq([[0,-3],4,6,3,2], inf),
|
||||
\dur, 3.5,
|
||||
\amp, 0.2,
|
||||
\legato, 0.6,
|
||||
\attackTime, 2,
|
||||
\releaseTime, 2,
|
||||
)]),
|
||||
// common parameters
|
||||
\instrument, \sinPulz,
|
||||
\oscDetune, Prand([1,3,7]*0.01, inf),
|
||||
\scale, Scale.minor.tuning_(\just),
|
||||
\cutoff, Prand([1,2,3,4,5,6], inf)
|
||||
|
||||
)
|
||||
)
|
||||
)
|
||||
```
|
107
ark_d.scd
107
ark_d.scd
|
@ -54,6 +54,113 @@ y.set(\pan, 0)
|
|||
y.set(\gate, 0)
|
||||
|
||||
z = Synth(\bufPlayer, [\bufnum, ~smpBuffers.at(0)])
|
||||
|
||||
///////////////////////////////////////////////////////////////////////////////////////////
|
||||
|
||||
|
||||
(
|
||||
SynthDef(\sinPulz, {
|
||||
arg gate = 1, freq, out=0, amp = 1, attackTime=0.01, releaseTime=1, oscDetune=0.05, cutoff=1;
|
||||
var snd, env;
|
||||
|
||||
oscDetune = oscDetune * 0.1;
|
||||
oscDetune = oscDetune+1;
|
||||
|
||||
|
||||
env = Linen.kr(gate, attackTime:attackTime, releaseTime:releaseTime, doneAction:2);
|
||||
|
||||
snd = SinOsc.ar([freq, freq*oscDetune]) ;
|
||||
snd = snd + SinOsc.ar([freq*2, freq*oscDetune*2]) ;
|
||||
snd = snd + Pulse.ar([freq/2,(freq/2)*oscDetune]) * LFNoise1.kr(0.5).exprange(2,40);
|
||||
|
||||
snd = snd.softclip;
|
||||
snd = RLPF.ar(snd, freq:
|
||||
//LFNoise1.kr(0.01).exprange(4000,300),
|
||||
freq * cutoff,
|
||||
rq:0.4);
|
||||
|
||||
snd = snd * env * amp * 0.4;
|
||||
|
||||
Out.ar(out, snd);
|
||||
}).add;
|
||||
)
|
||||
|
||||
// add a delay/reverb bus here?
|
||||
|
||||
// first press play :)
|
||||
Ndef(\ba).play
|
||||
|
||||
// set default quant
|
||||
Ndef(\ba).proxyspace.quant = 5;
|
||||
|
||||
(
|
||||
Ndef(\ba,
|
||||
Pbindf(
|
||||
Ppar([
|
||||
Pbind(
|
||||
\octave, [4,5,7],
|
||||
\amp, [0.1,0.2,0.005],
|
||||
\degree, Pseq([0,3,4,2,6], inf),
|
||||
\dur, Prand([1,0.5,2], inf),
|
||||
),
|
||||
Pbind(
|
||||
\octave, [3,6],
|
||||
\degree, Pseq([[0,-3],4,6,3,2], inf),
|
||||
\dur, 3.5,
|
||||
\amp, 0.2,
|
||||
\legato, 0.6,
|
||||
\attackTime, 2,
|
||||
\releaseTime, 2,
|
||||
)]),
|
||||
// common parameters
|
||||
\instrument, \sinPulz,
|
||||
\oscDetune, Prand([1,3,7]*0.01, inf),
|
||||
\scale, Scale.minor.tuning_(\just),
|
||||
\cutoff, Prand([1,2,3,4,5,6], inf)
|
||||
|
||||
)
|
||||
|
||||
|
||||
)
|
||||
)
|
||||
////////////////////////////////////////////////////////////////////////////////////////////
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
///////////////////////////////////////////////////////////////////////////////////////
|
||||
|
||||
|
|
Loading…
Reference in New Issue