On 02/23, Oleg Nesterov wrote:
>
> Julius says:
> >
> > Note that df1 and df2 are _not_ equivalent in the time-varying case
>
> Yes, but I don't see the usage of modulated fb_comb() in *.lib ....
>
> However, I can redo this PR with
>
>       _fb_comb1(dop,N,b0,aN) = *(aN) + *(b0) ~ dop(N-1);
>       _fb_comb2(dop,N,b0,aN) = + ~ aN * dop(N-1) : *(b0);
>
> the latter is less efficient, but probably closer to the current 
> implementation
> in the time-varying case.

OK, I verified that with the 2nd version

        _fb_comb(dop,N,b0,aN) = + ~ aN * dop(N-1) : *(b0);

both old and new implementations of fi.fb_comb() output the same in
the time-varying case (b0 == aN == no.noise).

Should I make V2 or should I forget about

        https://github.com/grame-cncm/faustlibraries/pull/218

?

Just in case, fi.fbcombfilter() and fi.ffbcombfilter() (not changed in this PR)
have the same "off by one" error, if "intdel" is compile time constant N, they
implement the following difference equation:

        y[n] = x[n - N] + g * y[n - (N+1)]

and this doesn't match the last equation in

        https://ccrma.stanford.edu/~jos/pasp/Feedback_Comb_Filters.html

Oleg.



_______________________________________________
Faudiostream-devel mailing list
Faudiostream-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/faudiostream-devel

Reply via email to