Hi Dario,

My usual approach is to use pattern matching:

xs = (x0, x1, x2, x3); // bank of input signals
x(i) = ba.take(i+1,xs); // i'th signal
d(i) = i; // delay amount in branch i
process = par(i, 4, de.delay(16, d(i), x(i)));

or simply "process = par(i, 4, de.delay(16, d(i));", leaving the input
signals unnamed.

- Julius

On Sun, Dec 23, 2018 at 10:16 PM Dario Sanfilippo
<[email protected]> wrote:
>
> Hello, list. First days into programming with Faust.
>
> For example, I would like to have a process with four inputs piloting the 
> delay lengths of four delay lines in parallel.
>
> My first guess was to write the following:
>
> process(x0, x1, x2, x3) = par(i, 4, de.delay(16, xi));
>
> but Faust is looking for the xi symbol before i is processed, thus resulting 
> undefined.
>
> Is there a way to process i before the matching parameters are looked for so 
> that inside par there are the corresponding x0, x1, x2, x3?
>
> Thanks,
> Dario
> _______________________________________________
> Faudiostream-users mailing list
> [email protected]
> https://lists.sourceforge.net/lists/listinfo/faudiostream-users



-- 

Julius O. Smith III <[email protected]>
Professor of Music and, by courtesy, Electrical Engineering
CCRMA, Stanford University
http://ccrma.stanford.edu/~jos/


_______________________________________________
Faudiostream-users mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/faudiostream-users

Reply via email to