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, and if I play
around a bit, I will have it.

Feedback without delay of blocksize is sick. You just can’t make this
circuit in SC.

Sam

On May 21, 2020 at 6:13:59 PM, Dario Sanfilippo ([email protected])
wrote:

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 the example below:

process(carFreq, modFreq, modModMult, indexMult) = (
(
(
(_, hslider("modModMult",100,100,1000,1):*),
hslider("modFreq",100,100,1000,1):+
):os.osc, hslider("carModMult",100,100,1000,1):*
)
, hslider("carFreq",100,100,1000,1):+:os.osc
) ~_ , 0.1:*;

The only difference here is that the output is not delayed by one sample.

About the dropouts: I'm not experiencing any. Is it possible that with some
combination of the parameters the frequency of the oscillator at the output
is in the infrasound range? After all, the modulating frequency can be
negative.

Cheers,
Dario

On Fri, 22 May 2020 at 00:42, Sam Pluta <[email protected]> wrote:

> 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):*
>   )
>   , hslider("carFreq",100,100,1000,1):+:os.osc
> ), 0.1:*;
>
> Without the GUI, it is:
>
> import("stdfaust.lib");
>
> process(carFreq, modFreq, multOfMod, multOfCar) = 0: + ~ ((((_,
> multOfMod:*), modFreq:+):os.osc, multOfCar:*), carFreq:+:os.osc);
>
> The graphical display is here:
>
>
> https://faustservice.grame.fr/CA4694BC72BFBA3822E0567BB44D02206B52EEAC/diagram/process.svg
>
> I made it to work in SuperCollider. In both SC and in the Faust Online
> Editor, it sounds great, but there are these dropouts that happen seemingly
> at random. It is as if the carrier continues going, but the modulator
> disappears from the circuit for a second.
>
> So, two questions:
>
> Is there something causing the dropouts that I am unaware of / need to
> compensate for?
>
> Can I get the feedback to work the way I want without that silly 0? I
> could not get the circuit to feedback and output at the same time without
> it.
>
> Thanks,
>
> Sam
>
>
> _______________________________________________
> Faudiostream-users mailing list
> [email protected]
> https://lists.sourceforge.net/lists/listinfo/faudiostream-users
>
_______________________________________________
Faudiostream-users mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/faudiostream-users

Reply via email to