1
0

initial commit

This commit is contained in:
2025-02-26 07:33:14 +01:00
commit 13e794f44b
21 changed files with 515 additions and 0 deletions

View File

@ -0,0 +1,36 @@
// object provides fading ability and levels
Fadable {
var track, level;
fade {
// exponential fading level toward <target> during <time> seconds
// TODO: what if another fade routine is ongoing? => mischief
|target, time|
r {
var rate = 1 / time * 0.05;
while({((level - target).abs >= 0.01 )}, {
if(
(level >= target),
{
// fade out
level = level - (rate.exp - 1);
if((level < target), { level = target; });
},
{
// fade in
level = level + (rate.exp - 1);
if((level > target), { level = target; });
});
0.05.wait;
track.set(\amp, level);
});
}.play;
}
level_ {
|amp|
level = amp;
track.set(\amp, level);
^this
// ("Amplitude in set to " << amp << "sec").postln;
}
}