Hi,

The `-svg` option generates a graphical representation of the audio circuit
denoted by a Faust program.  This audio circuit can potentially be
extremely large, so there is a folding mechanism that divides the circuit
into parts when the size of the circuit exceeds a threshold. This threshold
can be controlled by using the `-f <n>` option.

The folding mechanism is performed on an evaluated audio circuit (flat). In
order to recreate a kind of structure and find folding points, the
evaluator keeps a record of the `DefNameProperty`, a string that represents
how certain expressions of the circuit were obtained during the evaluation
process. Only expressions with a DefNameProperty are candidates for
folding, provided they are of sufficient complexity. This second complexity
threshold has been hardcoded at 2. It can now be controlled using the new
`-fc <n>` option in Faust 2.18.0.

A block diagram with maximum folding can be obtained by combining the two
options `-f 0 -fc 0`. But it should be kept in mind that it is just a
representation of what a Faust program denotes, not a precise
representation of the Faust program itself that would require a completely
different representation system.

Cheers

Yann


-------------------------

Yann Orlarey
Directeur scientifique / Scientific Director

<http://www.grame.fr>


Le mar. 18 juin 2019 à 12:37, Dario Sanfilippo <sanfilippo.da...@gmail.com>
a écrit :

> Personally, I'd love that too.
>
> Currently, what is the condition that determines whether a function is
> expanded or not in the diagrams?
>
> Best,
> Dario
>
> On Tue, 18 Jun 2019 at 02:29, Julius Smith <j...@ccrma.stanford.edu> wrote:
>
>> I think it would be great if there were NO function expansion when
>> drawing block diagrams.  Then we would have complete control by means
>> of naming expressions.  For convenience, there could be a source-code
>> pragma indicating to expand a particular function, or a Faust compiler
>> option such as -svgx functionName.
>>
>> - Julius
>>
>> On Sun, Jun 16, 2019 at 12:10 PM Dario Sanfilippo
>> <sanfilippo.da...@gmail.com> wrote:
>> >
>> > Hello, list.
>> >
>> > Say that I have the following code:
>> >
>> > system = +;
>> > process = system ~ _;
>> >
>> > Is there a way to force the generation of the SVG diagram to represent
>> "system" as a unit (the clickable blue box, so to speak) rather than having
>> the "+" on the diagram surrounded by the dashed square and the "system"
>> label?
>> >
>> > Thanks,
>> > Dario
>> > _______________________________________________
>> > Faudiostream-users mailing list
>> > Faudiostream-users@lists.sourceforge.net
>> > https://lists.sourceforge.net/lists/listinfo/faudiostream-users
>>
>>
>>
>> --
>>
>> Julius O. Smith III <j...@ccrma.stanford.edu>
>> Professor of Music and, by courtesy, Electrical Engineering
>> CCRMA, Stanford University
>> http://ccrma.stanford.edu/~jos/
>>
> _______________________________________________
> 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