On 17/07/17 16:56, Marc Joliet wrote:
I don't really have time to help you today, so I'll make this quick.
Am Montag, 17. Juli 2017, 16:08:40 CEST schrieb Yassin Philip:
> See, I thought that
>
> Inverted(b, x) = if(b, 1 - x, x);
>
> Defined x...
"Inverted" is a function of b and x that passes x through untouched
(if b is false) or inverts it (if b is true). Note that it can be used
without explicitly passing x, i.e.:
process = Inverted(b); // same as _ : Inverted(b)
which hopefully answers one of your previous questions with regards to
functions acting as input to other functions (just chain them).
I misspoke, what I meant was "functions acting as inputs to /parameters/
of other functions", I get how functions chain together.
And I'm afraid I still don't understand how it works. But each mail of
yours is clearing more dust.
> And about that "if", where are Faust's control structures
> syntax documented? Is it a standard C++ if?
if() is a library function that uses select2(), which is documented in
the quick-reference. select2() is basically a switch in a signal flow
graph (as used in graphical signal processing models).
> As far as I know, there are two pieces of documentation for Faust : The
> Quick Reference <http://faust.grame.fr/docs/faust-quick-reference.pdf>
> PDF and the "Libraries" doc <http://faust.grame.fr/library.html>. I
> think I'm missing something, am I not?
Since it's a library function, "if()" is documented in the in the
library (in the PDF on page 38).
Ahh, I see, thanks a lot.
> Please, if anybody reading this know of a working example of an
> amplitude following function, please let me know!
>
> Phil
I'm not an expert on the topic, but an "amplitude follower" to me
sounds like an envelope detector, which can be implemented as a
half-wave rectifier followed by a low-pass filter (see
https://en.wikipedia.org/wiki/Envelope_detector, does that look like
what you mean?). But you'll have to dig for that yourself at the
moment, I think.
Looking at your later email, the various amp_detector() functions do
exactly what I explained above (except they use the magnitude instead
of half-wave rectification).
Well, the definition in the documentation
<http://faust.grame.fr/library.html#amp_follower> does not say what is
/returned/ by the amp_follower* functions. Well, I guess it returns the
amplitude, but how do I use this as a parameter's value? Next time you
have a minute (those don't come cheap around mondays) can you please
look at the definition and think of a possible simple prototype
implementation? The idea is to control a pitch shifter
<http://faust.grame.fr/library.html#transpose> with its output, it's
unclear to me how that would work sequentially, hence the need for a
working example... Thanks a lot! Are we two alone on that ML? ;)
HTH
--
Marc Joliet
--
"People who think they know everything really annoy those of us who
know we
don't" - Bjarne Stroustrup
------------------------------------------------------------------------------
Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot
_______________________________________________
Faudiostream-users mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/faudiostream-users
--
Yassin Philip New album NOW
http://yassinphilip.bitbucket.io
------------------------------------------------------------------------------
Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot
_______________________________________________
Faudiostream-users mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/faudiostream-users