<div dir="ltr">Hi Perry, <div><br></div><div>I&#39;m stumbling at the comb filter example.  Let&#39;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&#39;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&#39;s &quot;spectrogram&quot; view) Is that you&#39;d get a time-smeared output, with the delayed part being composed of harmonically-related frequency components that resonate at the APF&#39;s delay line length.  Maybe what is important here is the &quot;group delay&quot; 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&#39;t just take an APF coefficient of 0.7 and double it because then it will be unstable.  I don&#39;t know whether it helps but in general my area of interest is for frequencies &lt; fs/4.</div><div><br></div><div>Keep in mind I have one toe (maybe it&#39;s the big one) that knows what I&#39;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">&lt;<a href="mailto:jos@ccrma.stanford.edu" target="_blank">jos@ccrma.stanford.edu</a>&gt;</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">&lt;<a href="mailto:prc@cs.princeton.edu" target="_blank">prc@cs.princeton.edu</a>&gt;</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>
&gt; On Jun 25, 2017, at 9:02 AM, Gary Worsham &lt;<a href="mailto:gary.worsham@gmail.com" target="_blank">gary.worsham@gmail.com</a>&gt; wrote:<br>
&gt;<br>
&gt; 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>
&gt;<br>
&gt; 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>
&gt;<br>
&gt; 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>
&gt;<br>
&gt; Next question is about the all-pass coefficient.  Generally I think &quot;how often does the signal go through the coefficient&quot;?  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>
&gt;<br>
&gt; However that is simply a wild guess, so thought I&#39;d check in the the DSP gods.<br>
&gt;<br>
&gt; Thanks,<br>
&gt;<br>
&gt; GW<br>
&gt;<br>
</div></div>&gt; ______________________________<wbr>_________________<br>
&gt; Stk mailing list<br>
&gt; <a href="mailto:Stk@ccrma.stanford.edu" target="_blank">Stk@ccrma.stanford.edu</a><br>
&gt; <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 &lt;<a href="mailto:jos@ccrma.stanford.edu" target="_blank">jos@ccrma.stanford.edu</a>&gt;<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>