Yeah, I tend to use them for feedback loops because they only need to be the block size. Though now that I think about it, you don't need them in this case. You can just feed [vd~] in to [delwrite~] without that silly order forcing I did.
.mmb On Sun, Oct 6, 2013 at 8:43 PM, Alexandre Torres Porres <por...@gmail.com>wrote: > awesome, thanks a lot, really helpful. I was suspecting something like > that, but couldn't get to this implementation. > > And then, one question, doesn't the feedback given by tabsend > theoretically count as a second delay line? > > cheers > > > 2013/10/6 Mike Moser-Booth <mmoserbo...@gmail.com> > >> It's not that either implementation is wrong, they are just two ways of >> doing the same thing. The version that uses two delay lines is the Direct >> Form I. By doing some rearranging of the filter, you convert it to the >> Direct Form II, which only uses one delay line. The end results are the >> same, just one is more efficient. >> >> Look inside [pd allpass] in the attached patch for an ASCII art >> illustration of it. >> >> >> On Sat, Oct 5, 2013 at 3:35 PM, Alexandre Torres Porres <por...@gmail.com >> > wrote: >> >>> on curtis roads' computer music tutorial, page 418, it shows the same >>> formula, but the figure of the design seems to contradict it. I'm confused. >>> I don't seem to get the same result with one delay line. maybe if you send >>> me a patch that sounds the same as cyclone's allpass I can check it. >>> >>> cheers >>> >>> >>> 2013/10/5 Alexandre Torres Porres <por...@gmail.com> >>> >>>> i dont think there is one way or proper way of doing this, and it is a >>>> general form, from an equation you can find in other references. So, I >>>> don't know why, but Max/Cyclone's allpass use this one: y(n) = -g x(n) + >>>> x(n)-(DR/1000) + g y(n)-(DR/1000) >>>> >>>> >>>> 2013/10/5 Chris Clepper <cgclep...@gmail.com> >>>> >>>>> That means cyclone's allpass~ is not done properly. Why not do it the >>>>> standard and more efficient way? When it comes time to do dozens of >>>>> allpasses it will make a difference. >>>>> >>>>> >>>>> >>>>> >>>>> On Sat, Oct 5, 2013 at 1:00 PM, Alexandre Torres Porres < >>>>> por...@gmail.com> wrote: >>>>> >>>>>> but this way it won't be the same as cyclone's [allpass~], the way I >>>>>> did it is equivalent to it (and max's). >>>>>> >>>>>> cheers >>>>>> >>>>>> >>>>>> 2013/10/3 Chris Clepper <cgclep...@gmail.com> >>>>>> >>>>>>> You only need one delay line for the allpass. >>>>>>> >>>>>>> feedforward = input * -gain >>>>>>> feedback = delayout * gain >>>>>>> delayin = input + feedback >>>>>>> output = delayout + feedforward >>>>>>> >>>>>>> http://www.spinsemi.com/knowledge_base/effects.html#Reverberation >>>>>>> >>>>>>> >>>>>>> On Thu, Oct 3, 2013 at 11:29 AM, Alexandre Torres Porres < >>>>>>> por...@gmail.com> wrote: >>>>>>> >>>>>>>> i hope i guess i figured it out on how to implement it with delay >>>>>>>> lines. see attachment. And I realize you can't do this with [fexpr~] or >>>>>>>> [biquad~] because the sample delay length is kinda big for that, right? >>>>>>>> >>>>>>>> cheers >>>>>>>> >>>>>>>> >>>>>>>> 2013/10/3 Alexandre Torres Porres <por...@gmail.com> >>>>>>>> >>>>>>>>> cool, but do you know how to implement cyclone's [allpass~] with >>>>>>>>> it? >>>>>>>>> >>>>>>>>> It's really unclear to me what is the relation of this pass filter >>>>>>>>> with the one you can generate with biquad coefficients, or with raw >>>>>>>>> poles/zeros objects for that matter. >>>>>>>>> >>>>>>>>> Well, one way or another, it's also unclear to me how to do it >>>>>>>>> with delay lines. >>>>>>>>> >>>>>>>>> seems that it is related to a comb filter, right? >>>>>>>>> >>>>>>>>> cheers >>>>>>>>> >>>>>>>>> >>>>>>>>> 2013/10/2 Chris Clepper <cgclep...@gmail.com> >>>>>>>>> >>>>>>>>>> Allpass for reverb is easy to do with delwrite~ and vd~. I used >>>>>>>>>> 32 of them today to recreate a famous 'deep space' reverb. >>>>>>>>>> >>>>>>>>>> >>>>>>>>>> On Wed, Oct 2, 2013 at 1:53 AM, Alexandre Torres Porres < >>>>>>>>>> por...@gmail.com> wrote: >>>>>>>>>> >>>>>>>>>>> hi there, i see the biquad's coefficients can be set as an >>>>>>>>>>> allpass filter, generated by frequency and "Q" parameters. But can >>>>>>>>>>> it do >>>>>>>>>>> the same as cyclone's [allpass~] filer? If yes, them how since the >>>>>>>>>>> parameters for [allpass~] are different (delaytime and such). >>>>>>>>>>> >>>>>>>>>>> One way or another, I guess that my real question is: how to >>>>>>>>>>> implement [allpass~] from vanilla objects? >>>>>>>>>>> >>>>>>>>>>> thanks >>>>>>>>>>> >>>>>>>>>>> _______________________________________________ >>>>>>>>>>> Pd-list@iem.at mailing list >>>>>>>>>>> UNSUBSCRIBE and account-management -> >>>>>>>>>>> http://lists.puredata.info/listinfo/pd-list >>>>>>>>>>> >>>>>>>>>>> >>>>>>>>>> >>>>>>>>> >>>>>>>> >>>>>>> >>>>>> >>>>> >>>> >>> >>> _______________________________________________ >>> Pd-list@iem.at mailing list >>> UNSUBSCRIBE and account-management -> >>> http://lists.puredata.info/listinfo/pd-list >>> >>> >> >
_______________________________________________ Pd-list@iem.at mailing list UNSUBSCRIBE and account-management -> http://lists.puredata.info/listinfo/pd-list