There is a convenience function in superdirt that posts the code for adding SynthDef parameters in tidal
SuperDirt.postTidalParameters(synthNames: <a list of synth def names>);
// for example
SuperDirt.postTidalParameters(synthNames: [\supersaw, \supermandolin]);
// posts:
-- | parameters for the SynthDefs: supersaw, supermandolin
let (decay, decay_p) = pF "decay" (Nothing)
(detune, detune_p) = pF "detune" (Nothing)
(freq, freq_p) = pF "freq" (Nothing)
(lfo, lfo_p) = pF "lfo" (Nothing)
(pitch1, pitch1_p) = pF "pitch1" (Nothing)
(rate, rate_p) = pF "rate" (Nothing)
(resonance, resonance_p) = pF "resonance" (Nothing)
(semitone, semitone_p) = pF "semitone" (Nothing)
(span, span_p) = pF "span" (Nothing)
(voice, voice_p) = pF "voice" (Nothing)
Is this of any help?
7 Likes
specht
16 November 2020 12:07
23
Great video, thanks.
Why do you use IEnvGen, instead of the more commonly used EnvGen?
The 'I' stands for interactive?
julian
23 February 2021 16:03
24
IEnvGen
has an index
input with which you can freely index into the envolope. So you can go forward and backward in time, so to speak.
(
{
var index, env, lin;
index = LFNoise1.ar(1000).range(0, 1);
env = IEnvGen.ar(Env([0, 1, 0], [2, 8]/10, \sin), index);
lin = IEnvGen.ar(Env([0, 1, 0], [2, 8]/10, \sin), Line.ar(0, 1, 0.01));
[index, lin, env]
}.plot
)
1 Like
Instead of the variable 'sustain', 'sus' is mostly used in SynthDefs. See for instance these SynthDefs.
For converting SynthDefs to Tidal friendly SynthDefs, it might be better if SuperDirt would use the keyword 'sus' instead of 'sustain'.
julian
27 September 2022 14:35
26
The use of sus
is not starndard, i.e. it doesn't work with the standard supercollider event system. E.g. if you write Pbind(\legato, 1.5, \dur, 0.5)
it is sustain
that will be 0.75
, not sus
.