[chuck-users] collecting sum signal per-channel of midi-notes
Peter Billam
pj at pjb.com.au
Fri May 9 02:03:00 EDT 2014
Greetings.
( Serious Newbie-warning :-)
So: I want to work with MIDI, and implement the Great Missing
Midi-Controller, namely a per-channel overdrive distortion
like the foverdrive,1196 LADSPA plugin. Untested:
fun float foverdrive_1196(float x, float drive) {
drive - 1.0 => float drivem1;
Std.fabs(x) => float fx;
return x*(fx + drive)/(x*x + drivem1*fx + 1.0);
}
This means I have to get the TriOsc of the note not into a dac
TriOsc t => dac; // NO!
but into some code which will add it to the per-channel total.
I guess those totals will be stored in perhaps LiSa's ?
float cha2drive[16]; // set by nonstandard MIDI controller 87
LiSa lisa[16]; // the per-channel total signal of all its notes
But at this point I get brain-overload :-(
How do I add the TriOsc sample to its LiSa ? How do I invoke
foverdrive_1196() on each sample before outputting it to the dac ?
I'm very unsure about "now", too, how it co-ordinates between
code of all the individual notes and the final "=> dac" step,
but still executes all these things scattered throughout the code
in an appropriate order.
Hope this makes sense...
If I get this solved, I should become more self-maintaining...
Thanks, Regards, Peter Billam
http://www.pjb.com.au pj at pjb.com.au (03) 6278 9410
"Follow the charge, not the particle." -- Richard Feynman
from The Theory of Positrons, Physical Review, 1949
More information about the chuck-users
mailing list