Solved!

On Sat, Jul 7, 2018 at 6:43 PM Jeffrey Brown <jeffbrown.the@gmail.com> wrote:
This is awesome!

What if the voice persisted and you needed to retrigger the envelope later? I'm imagining a resonating guitar string: It's continuously making sound, but every now and then the player strikes it again. Or someone playing monophonic slide violin: They might want to play an F# for a while, then slide into an A. Or a didgeridoo: The sound is in a steady state, then the player makes a "pew" noise, and then the didge settles back into another (usually the same) steady state. 

In the first case there's an amplitude envelope that's (probably) in its decay portion when it is retriggered. In the second there's a frequency envelope that's (probably) reached its sustain portion when it is retriggered to go to a new frequency.

This might dovetail with an earlier question about sending strings to synths. The synth needs to react not to a parameter change that persists, but rather to a momentary instruction -- something like what the Max/MSP community calls a "bang".

Actually in the slide violin case the synth would also receive a new frequency value. And I can imagine writing a synth that has a rule like "when the frequency changes, slide into it logarithmically over the course of 100 ms". So maybe you wouldn't need bang-like messages in some cases. But in the case of re-striking a resonating guitar string, or making a "pew" sound into a didge, it might be that none of the steady-state parameters needs changing; the envelope just needs to be re-triggered.

Expressible?

On Sat, Jul 7, 2018 at 12:36 AM <amindfv@gmail.com> wrote:
I unfortunately need to log out but here's something to get you started:

foo = sd (1 :: I "gate") $ do
   e <- adsrGen 0.2 0.1 0.6 0.7 (Curve_Curve (-4)) (gate_ (V::V "gate"))
   s <- e ~* sinOsc (freq_ $ midiCPS 50)
   out 0 [s,s]

main = do
   s <- synth foo ()
   wait 1
   release s

El 6 jul 2018, a las 23:03, Jeffrey Brown <jeffbrown.the@gmail.com> escribió:

So far I'm able from Vivid to create continuously-running signal architectures and change their parameters over time. Next I want to create a "snare" (some noise with a brief amplitude envelope) and a "kick" (a sine wave with a quickly descending frequency).

Is there an idiom for that?


--
Jeff Brown | Jeffrey Benjamin Brown
Website   |   Facebook   |   LinkedIn(spammy, so I often miss messages here)   |   Github   
_______________________________________________
Livecode mailing list -- livecode@we.lurk.org
To unsubscribe send an email to livecode-leave@we.lurk.org
_______________________________________________
Livecode mailing list -- livecode@we.lurk.org
To unsubscribe send an email to livecode-leave@we.lurk.org


--
Jeff Brown | Jeffrey Benjamin Brown
Website   |   Facebook   |   LinkedIn(spammy, so I often miss messages here)   |   Github   


--
Jeff Brown | Jeffrey Benjamin Brown
Website   |   Facebook   |   LinkedIn(spammy, so I often miss messages here)   |   Github