Should we add allpass_comb_stretched somewhere in the librairies ? What you 
think Julius ?

Stéphane 

> Le 9 juin 2021 à 18:14, Gary Worsham <gary.wors...@gmail.com> a écrit :
> 
> Thanks Julius!
> 
> I also found a Faust definition of a stretched all pass in this reverb 
> published by Julian Parker in 2013.  What's funny is that the stretched 
> allpass is defined but not used.  I'll be giving it a whirl before too long.
> 
> https://github.com/supercollider/sc3-plugins/blob/main/source/DEINDUGens/faust_src/JPverbRaw.dsp
> 
> By the way I made a VST and Windows standalone app from Julian's code:
> 
> https://github.com/HolyCityAudio/Plugins/tree/main/ParkerReverb
> 
> Thanks,
> 
> GW
> 
> On Wed, Jun 9, 2021 at 5:12 AM Julius Smith <julius.sm...@gmail.com> wrote:
> > I think that most likely, Faust does not include a library function which 
> > is a "stretched" allpass and a fixed delay line with an interpolating 
> > allpass on the end doesn't quite give the same thing... does it?
> 
> I think it does if you use an allpass-interpolating delay line, e.g.,
> 
> allpass_comb_stretched(maxN,N,aN,strf) = (+ <: 
> de.fdelay1a(maxN,N-1+strf),*(aN)) ~ *(-aN) : mem,_ : +;
> 
> (compare to allpass_comb in filters.lib)
> 
> Cheers,
> Julius
> 
> On Thu, Jun 3, 2021 at 11:29 PM Julius Smith <julius.sm...@gmail.com> wrote:
> Hi Gary,
> 
> I had to google "stretched allpass filters" and found this: 
> 
> https://dsp.stackexchange.com/questions/46221/real-time-implementation-of-cascaded-all-pass-filters-from-given-transfer-functi
> 
> They appear to be a special case of what I normally would call "nested 
> allpass filters".  In any case, Faust can certainly do this as well, and it's 
> a great opportunity for a recursive definition using pattern matching.  Take 
> a look at allpassnt() in filters.lib for an example.  (The two-multiply 
> lattice filter is a nested allpass.)
> 
> Due to negative free time, I will keep a star on this in gmail and circle 
> back when I can, as I am definitely interested in this project.  Quick urgent 
> questions always welcome, however.
> 
> Cheers,
> Julius
> 
> 
> On Tue, Jun 1, 2021 at 7:22 AM Gary Worsham <gary.wors...@gmail.com> wrote:
> Hi Julius,
> 
> I made a brave attempt to read these articles.  I only ever got as far as 
> EE263 and that was more than 40 years ago!  Anyway, a few questions regarding 
> direct form biquad allpasses vs. "stretched" allpass blocks as proposed by 
> Julian Parker.
> 
> I think that most likely, Faust does not include a library function which is 
> a "stretched" allpass and a fixed delay line with an interpolating allpass on 
> the end doesn't quite give the same thing... does it?
> I could probably take the Faust library definition of an interpolating 
> allpass and add the stretching internally.
> Only the stretched allpass blocks give that "imaging" effect where the phase 
> delay maximum is repeated up the spectrum, resulting in the need to low pass 
> filter to just keep the lowest one.   However, now that I think of it with 
> another cup of coffee, even a single all-pass is going to have that phase 
> delay peak, meaning that above that transition frequency, the chirp would go 
> from high to low, while below it, it would go low to high.  So you still want 
> to low pass filter the result so you only get the upward going part of the 
> chirp.
> Looks like calculating the coefficients for these filters requires Matlab and 
> Newton's method?  eeek!  That doesn't sound like something that would be too 
> easy to modulate in real time.
> 
> Let me give a little more background on my actual goal here.  A few years ago 
> I got pretty good at the Spin FV-1 and tried to drum up some consulting 
> business among guitar amp manufacturers.  One of the amp builders I talked to 
> said "hey can you do that "Vinnie Bell" sound as evidenced on the Ferrante 
> and Teicher version of "Midnight Cowboy" and "Airport Love Theme""?  If 
> nothing else, this stuff really has to take you back!
> 
> https://www.youtube.com/watch?v=payWL0Y8Dd4
> https://www.youtube.com/watch?v=OsTne8nT8BI
> 
> At first, listening, especially to the Airport one, I thought, well that's a 
> VCF with a really fast trigger going down and what we are hearing is the 
> upward sweep of the envelope decay - going into a short delay with a little 
> feedback.  So I tried and tried to replicate that sound but I always heard 
> the initial sweep down.  It's still a cool sound but it's not this.  So then 
> I did my best to isolate some of the notes in Airport Love Theme and 
> generated a spectrogram using Audacity.  That's when I saw the chirps.  
> Having read the Parker paper previously, but not having understood what his 
> images meant, it all suddenly made sense!  They are about 50 msec apart, 
> there is no discernable sweep down at the beginning, and each successive 
> chirp per note is more and more flattened out.  The transition frequency is 
> about 1750 Hz.  As I understand it, that is VERY LOW for a typical spring 
> reverb.
> 
> <image.png>
> 
> I was talking to Jim Thomas, guitarist and composer for The Mermen, once a 
> few years back and played this sound for him, and he immediately said "oh 
> that's a spring reverb".  I never got the sound with an FV-1 although I did 
> make some chirp blocks just to see what would happen.  Exactly HOW Vinnie 
> Bell got this sound has been the subject of much debate since Vinnie invented 
> many of his own effects (and the electric sitar).  Vinnie was always 
> reluctant to share his secrets and he passed away a couple years back.  Joe 
> Gore concluded it was "really fast phasing" 
> https://tonefiend.com/live-looping/midnight-cowboy/ but I don't think the 
> spectrogram bears that out.  I've wondered how he did it as well, considering 
> he was just one guy, not Bell Labs, working in the mid 60's.  So it probably 
> WAS a spring reverb with just a single spring.  As far as how he got the 
> transition frequency down to 1750 Hz, he either used a custom spring, or 
> (how's this for a wild guess) recorded it at 15 IPS and played it back at 7.5 
> IPS?  I mean, there's no evidence that this sound was ever created live on 
> stage anywhere.
> 
> Phew!  Sorry.  So that's the kind of sound I am going for, and it being 
> really true to any real spring is not really a design goal.  If anything I 
> would like to take that chirp into the outer limits by making it really long, 
> changing the transition frequency independent of the delay time (to the 
> extent possible), etc.  It might also be interesting to see what happens if 
> you were to vary some of the aspects of the chip with the guitar's envelope.
> 
> Thanks,
> 
> GW
> 
> 
> 
>       Virus-free. www.avast.com
> 
> On Fri, May 28, 2021 at 9:10 PM Julius Smith <julius.sm...@gmail.com> wrote:
> HI GW,
> 
> I would use this method (simple fi.tf2() biquad allpasses in series):
> 
> https://www.researchgate.net/publication/224106863_Robust_Efficient_Design_of_Allpass_Filters_for_Dispersive_String_Sound_Synthesis
> 
> @ARTICLE{AbelAndSmithDAFX06,
>         AUTHOR = "Jonathan Abel and Julius O. " # Smith3,
>         TITLE = "Robust Design of Very High-Order Allpass Dispersion Filters",
>         JOURNAL = dafx06,
>         MONTH = sep,
>         YEAR = 2006
> }
> 
> Cheers,
> - Julius
> 
> 
> On Fri, May 28, 2021 at 1:00 PM Gary Worsham <gary.wors...@gmail.com> wrote:
> Sorry if this is a repeat but I've just signed up for the mailing list again, 
> and previous submissions said "you're not registered"... maybe I'm in some 
> sort of limbo at the moment.
> =================================
> I'm interested in messing with some structures suggested by Julian Parker's 
> work on spring reverb emulation.  
> https://acris.aalto.fi/ws/portalfiles/portal/13004391/art_10.1155_2011_646134.pdf
> 
> This paper suggests an "interpolating all-pass delay".  Initially, I don't 
> think I would care about modulating these in real time, but of course, 
> everything is better with envelope modulation so I'd probably try that 
> eventually.
> 
> The library includes a handful of all passes and of course I can try all of 
> them, but wondering if a particular one would be particularly swell for this 
> kind of thing.
> 
> https://faustcloud.grame.fr/doc/libraries/index.html#thiran-allpass-interpolation
> 
> https://faustcloud.grame.fr/doc/libraries/index.html#fi.allpass_comb
> 
> https://faustcloud.grame.fr/doc/libraries/index.html#fi.allpass_fcomb
> 
> https://faustcloud.grame.fr/doc/libraries/index.html#fi.allpass_fcomb5-and-fi.allpass_fcomb1a
> 
> Note that I did some experiments in the past with this sort of thing on a 
> Spin FV-1 and found that chirp block lengths in the 12 to 20 samples range 
> (at 32768 Hz fs) seemed to work well for this sort of thing.  However, the 
> FV-1 doesn't have enough instructions to generate a very long chirp.  I am 
> really looking to emphasize the dispersion "chirp" in this particular 
> exercise.
> 
> Thanks!
> 
> GW
> 
>       Virus-free. www.avast.com
> _______________________________________________
> Faudiostream-users mailing list
> Faudiostream-users@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/faudiostream-users
> 
> 
> -- 
> "Anybody who knows all about nothing knows everything" -- Leonard Susskind
> 
> 
> -- 
> "Anybody who knows all about nothing knows everything" -- Leonard Susskind
> 
> 
> -- 
> "Anybody who knows all about nothing knows everything" -- Leonard Susskind
> _______________________________________________
> Faudiostream-users mailing list
> Faudiostream-users@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/faudiostream-users



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

Reply via email to