> Welcome to Faust! > thanks! i am so excited that i can forget my current dsp/synthesis knowledge with such a cool language
> In your example you can use : > > gate = button("../basshit-gate"); > > thank you! this is interesting.. is there a resource for learning about the way that the pathing works in detail? .. it seems like i can look at the diagrams Faust generates to see groups and components.. but i am not sure about what the rules are. like for another example in that same code, I cannot seem to get the modulation envelope controls to be in a different group (box) than the oscillator controls using 1 or more ../ is there a specific doc about the language itself, that maybe I've missed? I'm a big fan of rtfm, just need to find it, maybe.. Cheers > > Yann > > > > ------------------------- > > Yann Orlarey > Directeur scientifique / Scientific Director > > <http://www.grame.fr> > > > Le mar. 11 juin 2019 à 19:56, interrupt <misterinterr...@gmail.com> a > écrit : > >> Bonjour, FAUST users! >> My name is Matt Howell, Nice to meet all of you. I have just started >> learning the language so I have a few questions. I have a long experience >> as a programmer, artist, and sound design, so I'm excited to be using >> FAUST for a percussion synth that I am building on the Teensy3.6. >> >> I am currently trying to understand at least two things: >> 1. how to make a button trigger two envelopes >> 2. how to make the button show up in a higher level group, instead of >> twice in the two envelope ui groups >> >> source >>> >> >> import("stdfaust.lib"); >> >> gate = button("basshit-gate"); >> >> carrierAmpEnv(trig) = hgroup("[0]Carrier-Amp-Envelope", >> en.dx7envelope( >> vslider("[0]amp-rate1",0,0,2,0.001): si.smoo, >> vslider("[2]amp-rate2",0.02,0,2,0.001): si.smoo, >> vslider("[4]amp-rate3",0.04,0,2,0.001): si.smoo, >> vslider("[6]amp-rate4",0.25,0,2,0.001): si.smoo, >> vslider("[1]amp-level1",1,0,1,0.01): si.smoo, >> vslider("[3]amp-level2",1,0,1,0.01): si.smoo, >> vslider("[5]amp-level3",0.5,0,1,0.01): si.smoo, >> vslider("[7]amp-level4",0,0,1,0.01): si.smoo, >> trig >> ) >> ); >> modulationEnv(trig) = hgroup("[1]Modulation-Envelope", >> en.dx7envelope( >> vslider("[0]mod-rate1",0.00,0,2,0.001): si.smoo, >> vslider("[2]mod-rate2",0.02,0,2,0.001): si.smoo, >> vslider("[4]mod-rate3",0.04,0,2,0.001): si.smoo, >> vslider("[6]mod-rate4",0.25,0,2,0.001): si.smoo, >> vslider("[1]mod-level1",1,0,1,0.01): si.smoo, >> vslider("[3]mod-level2",1,0,1,0.01): si.smoo, >> vslider("[5]mod-level3",0.5,0,1,0.01): si.smoo, >> vslider("[7]mod-level4",0,0,1,0.01): si.smoo, >> trig >> ) >> ); >> modulatorFreq = hslider("modulator-freq", 110, 20, 15000, 10) : si.smoo; >> carrierFreq = hslider("carrier-freq", 90, 20, 15000, 10) : si.smoo; >> modIndex = hslider("modulator-index", 10000, 0, 15000, 10) : si.smoo; >> modGain = hslider("modulator-gain", 0.5, 0, 1, 0.01) : si.smoo; >> carrierGain = hslider("carrier-gain", 0.5, 0, 1, 0.01) : si.smoo; >> >> dualOpFm(trig, carFreq, modFreq, ampEnv, modEnv) = (out) >> with { >> modulator = os.osc(modulatorFreq); >> carrier = os.osc(carrierFreq + modulator * (modIndex * >> modulationEnv(trig))); >> out = ((modulator * modGain) , (carrier * (carrierGain * >> carrierAmpEnv(trig)))); >> }; >> >> process = dualOpFm(gate) <: _,_; >> >> <<< end source >> >> Any thoughts? >> >> Cheers, >> Matt >> _______________________________________________ >> Faudiostream-users mailing list >> Faudiostream-users@lists.sourceforge.net >> https://lists.sourceforge.net/lists/listinfo/faudiostream-users >> >
_______________________________________________ Faudiostream-users mailing list Faudiostream-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/faudiostream-users