> On Apr 27, 2023, at 6:14 PM, Ariadne Lewis-Towbes <[email protected]> wrote: > > Hi, > > Not quite - you can’t iterate linearly through the biquad’s coefficients. > Instead you have to iterate through the frequency and repeatedly calculate > the coefficients (a1,2,3 and b1,2,3, depending). this is normally not ~too~ > expensive an operation, although that’s all relative. > > > Ariadne > On Apr 27, 2023 at 2:57 PM -0700, Yisheng Jiang <[email protected]>, > wrote: >> It took a couple days for your suggestion to sink it (possibly) >> >>> On Apr 25, 2023, at 9:19 PM, Ariadne Lewis-Towbes <[email protected]> wrote: >>> >>> Hi, >>> >>> You won't be able to fade between two filtered blocks of complex >>> (non-sinusoidal) input to the same effect as modulating an arbitrary single >>> filter's frequency. That said, when modulating an IIR filter such as a >>> biquad (as shown in your second email's link), you should not need to >>> compute the z-transform. You may simply modulate the biquad's parameters >>> repeatedly, >> >> By this you mean compute biquad parameters for start and ending freq, then >> incrementing the a0, a1 etc?
If it is too expensive, you can try computing new coefficients once per block, and then interpolating the coefficients each sample (or some number of samples) during the block. Especially since the OP said that this is a pretty slow modulation, that should work well, and it is certainly worth a try to see if it gives acceptable results (both for audio + DSP load). B.J. Buchalter Metric Halo https://urldefense.proofpoint.com/v2/url?u=http-3A__www.mhlabs.com&d=DwIFaQ&c=009klHSCxuh5AI1vNQzSO0KGjl4nbi2Q0M1QLJX9BeE&r=TRvFbpof3kTa2q5hdjI2hccynPix7hNL2n0I6DmlDy0&m=puzqexQQd_7eHG8pJdW8aOQ8nfw37CMz17wrLnXIs0hDIabNI3O57oQ_3WuVvFA3&s=9hVmoZh4GIa3yMKFSWvVUhEXPo8avrUjBy2lAs6Pofg&e=
