<div dir="ltr">Hi Perry, <div><br></div><div>I'm stumbling at the comb filter example. Let's start with delay = 100 msec and feedback = 0.5 @ 20 kHz sampling rate.</div><div><br></div><div>Now we go to 40 kHz sampling rate and as a result we double the length of the delay buffer so the delay time is again 100 msec. The signal goes through the feedback once every 100 msec and as a result I would expect RT60 to be preserved without changing the feedback value. What am I missing here?</div><div><br></div><div>I imagine your APF unit circle cut up like a pie with poles on the inside and zeros on the outside in each slice, but my intuition about these things isn't what it used to be. And perhaps it never was. My sense about the impulse response of such a thing (based on my observation of long (50) cascades of equal-length APFs in Audacity's "spectrogram" view) Is that you'd get a time-smeared output, with the delayed part being composed of harmonically-related frequency components that resonate at the APF's delay line length. Maybe what is important here is the "group delay" at those frequencies, which could I suppose have some dependence on the sampling rate. </div><div><br></div><div>Supposing that the APF coefficients did want to be adjusted with sampling rate, how would you go about it? You can't just take an APF coefficient of 0.7 and double it because then it will be unstable. I don't know whether it helps but in general my area of interest is for frequencies < fs/4.</div><div><br></div><div>Keep in mind I have one toe (maybe it's the big one) that knows what I'm talking about and the rest of that foot and all of the other one are flailing in mid air.</div><div><br></div><div>Many thanks!<br><br></div><div>Gary W.</div></div><div class="gmail_extra"><br><div class="gmail_quote">On Mon, Jun 26, 2017 at 4:09 PM, Julius Smith <span dir="ltr"><<a href="mailto:jos@ccrma.stanford.edu" target="_blank">jos@ccrma.stanford.edu</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr">Hi All - I agree with your reasonings that temporal spacings and decay times should be preserved as much as possible. Cheers - Julius</div><div class="gmail_extra"><div><div class="h5"><br><div class="gmail_quote">On Mon, Jun 26, 2017 at 3:16 PM, Perry Cook <span dir="ltr"><<a href="mailto:prc@cs.princeton.edu" target="_blank">prc@cs.princeton.edu</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">Great question. In the case of all pass filters, I at first felt your intuition correct.<br>
<br>
But as I think of it, maybe not. My reasoning:<br>
<br>
I’ve most often used all pass with large delay line for reverb and other delay<br>
effects. (Schroeder type) Reverbs usually use some comb filters and some<br>
all pass. I always view these delays as round-trip times between simulated<br>
walls. So the time is important, thus the delay length (as a number of samples)<br>
must change with sample rate, to keep the time delay the same.<br>
<br>
For the comb filters, the decay time is important, so the coefficient needs to<br>
change with sample rate to keep the T60 correct.<br>
<br>
For the all-pass filters, maybe we should change them as well, to keep the<br>
transient response more constant across different sample rates. An all pass<br>
shows up as reciprocal pairs of poles/zeros spaced around the unit circle.<br>
Changing the delay line length changes the number and positions of those,<br>
but they always equally divide the unit circle. One could posit different<br>
arguments that the distance(s) from the unit circle should or should not change.<br>
<br>
One argument: product of all pole radii = constant (keep coefficient same)<br>
<br>
Other argument: individual pole radii = constant (change coefficient)<br>
<br>
<br>
Julius specifically called to pipe in here<br>
<br>
PRC<br>
<div><div class="m_7480080236155371436h5"><br>
<br>
> On Jun 25, 2017, at 9:02 AM, Gary Worsham <<a href="mailto:gary.worsham@gmail.com" target="_blank">gary.worsham@gmail.com</a>> wrote:<br>
><br>
> Single pole IIR filters can easily be adjusted to a new sampling rate while preserving frequency response since the coefficient includes the sampling rate as part of its formula.<br>
><br>
> However, in sound effects use (my experience anyway) all pass filters are used for phase shifter (e.g. Pink Floyd) and as a component in most reverbs. These structures tend to be more ad-hoc in their design intention - by which I mean that after a bit of experience, most people would know what to expect from an 800 Hz low pass vs. a 2.5 kHz low pass, but as far as what to expect from these other things, I think mostly we just wing it and see what happens.<br>
><br>
> All-pass tuning (frequency of max phase shift) is related to the length of the all-pass delay, and for delays longer than one sample, this shift is mirrored and copied throughout the spectrum. So I can adjust the all-pass delay sample length proportionally with the ratio of new/old sample rate and it should preserve the delay time.<br>
><br>
> Next question is about the all-pass coefficient. Generally I think "how often does the signal go through the coefficient"? If you adjust the delay length to equalize the time, then my gut feeling is to keep the all-pass coefficients the same regardless of sampling rate.<br>
><br>
> However that is simply a wild guess, so thought I'd check in the the DSP gods.<br>
><br>
> Thanks,<br>
><br>
> GW<br>
><br>
</div></div>> ______________________________<wbr>_________________<br>
> Stk mailing list<br>
> <a href="mailto:Stk@ccrma.stanford.edu" target="_blank">Stk@ccrma.stanford.edu</a><br>
> <a href="https://cm-mail.stanford.edu/mailman/listinfo/stk" rel="noreferrer" target="_blank">https://cm-mail.stanford.edu/m<wbr>ailman/listinfo/stk</a><br>
<br>
<br>
<br>
</blockquote></div><br><br clear="all"><div><br></div></div></div><span class="HOEnZb"><font color="#888888">-- <br><div class="m_7480080236155371436gmail_signature" data-smartmail="gmail_signature"><div dir="ltr"><div>
<p>Julius O. Smith III <<a href="mailto:jos@ccrma.stanford.edu" target="_blank">jos@ccrma.stanford.edu</a>><br>
Professor of Music and, by courtesy, Electrical Engineering<br>
CCRMA, Stanford University<br>
<a href="http://ccrma.stanford.edu/" target="_blank"><span>http://ccrma.stanford.edu/~<wbr>jos/</span></a> </p></div></div></div>
</font></span></div>
</blockquote></div><br></div>