Hi Matt,

Welcome to Faust!

In your example you can use :

gate = button("../basshit-gate");



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

Reply via email to