Re: [Faudiostream-users] crossfeedback

2020-05-21 Thread Dario Sanfilippo
Happy to help, Sam. If interested in some technical papers, Lazzarini has written on feedback modulations. Personally, I would consider the emergence of non-sound, together with the emergence of sound with turbulence, an added degree of complexity to the behaviour of the system. But I understand

Re: [Faudiostream-users] crossfeedback

2020-05-21 Thread Dario Sanfilippo
Hi, Sam. Sounds nice. If you notice, the recursive operator is at the top of the chain, so whatever block of code within parentheses after ~ will be in the feedback path. The signal left of ~ is then going through. You can achieve the same circuit by moving the feedback operator at the end as in

[Faudiostream-users] crossfeedback

2020-05-21 Thread Sam Pluta
I made this crossfeedback synth in Faust: import("stdfaust.lib"); process(carFreq, modFreq, modModMult, indexMult) = 0: + ~ ( ( ( (_, hslider("modModMult",100,100,1000,1):*), hslider("modFreq",100,100,1000,1):+ ):os.osc, hslider("carModMult",100,100,1000,1):* ) ,

Re: [Faudiostream-users] crossfeedback

2020-05-21 Thread Sam Pluta
Thank you Dario, This is great. Adding an abs before the last osc seems to clear up the dropouts (but also takes away a bit of the fun), so I guess it was negative freq. The placement of the ~ is my incomplete understanding of its function at this point. But seeing your solution clears up a lot,

Re: [Faudiostream-users] crossfeedback

2020-05-21 Thread Stéphane Letz
> > > Feedback without delay of blocksize is sick. You just can’t make this circuit > in SC. > This was *one* of the initial motivation of the project… ((-; Welcome to Faust ! Stéphane ___ Faudiostream-users mailing list

Re: [Faudiostream-users] crossfeedback

2020-05-21 Thread Dario Sanfilippo
Just to be precise, if you want the exact same circuit without the 0 and the +, you can replace them with a wire, so it will be one signal feeding back into something with one input: the wire. process(carFreq, modFreq, multOfMod, multOfCar) = _ ~ _, multOfMod:*), modFreq:+):os.osc,

Re: [Faudiostream-users] Help with pattern matching to implement an if-then-else-if function

2020-05-21 Thread Stéphane Letz
> > I managed to find a commit talking about the "route" primitive, but I > couldn't find anything about "outputs": what is it? > > If I run > Look at « Inputs and Outputs of an Expression » section in https://faustdoc.grame.fr/manual/syntax/ Stéphane

Re: [Faudiostream-users] Help with pattern matching to implement an if-then-else-if function

2020-05-21 Thread Dario Sanfilippo
Hello! On Thu, 21 May 2020 at 17:33, Oleg Nesterov wrote: > On 05/20, Dario Sanfilippo wrote: > > > > I use the "ceil" function for the cond in "if" as I want _any_ non-zero > > value to result true, whereas ba.if gives false for any fractional > > condition < 1. I opened an issue about this

Re: [Faudiostream-users] Help with pattern matching to implement an if-then-else-if function

2020-05-21 Thread Oleg Nesterov
On 05/20, Dario Sanfilippo wrote: > > I use the "ceil" function for the cond in "if" as I want _any_ non-zero > value to result true, whereas ba.if gives false for any fractional > condition < 1. I opened an issue about this but I think that fixing it, if > bad behaviour (bad if thinking of C/C++,