Perhaps I'm wrong but it seems clear to me that any discrete-time model of an analog process (linear or not, time-invariant or not) will get better with higher sample rate. So however good your filter is at 48kHz the model (if it's a good model) will be better at 96kHz.With BLT frequency warping, you can prewarp every frequency specification except Nyquist always maps to infinity in s. But no spec'd frequency parameters are in the top octave if Fs=96kHz. I really don't expect much trouble with the filter behavior below 24 kHz. And nonlinear models will work even better.Let's say that word width isn't a problem (low normalized frequency not a problem). And let's say RAM storage isn't a problem (always have enough delay). Then you should be able to crank it up to a sufficient high rate that makes all of the processes happy and cranking it higher won't make it better.Like 192kHz? For audio for human consumption, do we ever need to go higher?Andy, I see it just as a minimum. I don't understand how algs modeling infinite sample rate do worse with higher sample rates than lower.Powered by Cricket Wireless------ Original message------From: Andrew Simper<[email protected]>Date: Tue, Dec 5, 2023 7:38 PMTo: [email protected];Cc: Subject:Re: MUSIC-DSP Digest - 3 Dec 2023 to 4 Dec 2023 (#2023-67)At one sample rate you may be able to tweak the EQ to get the shape you want, but you have to consider what happens at different sample rates the algorithm can run at, and what happens not just to the sound, but what happens with possibly further non-linear processing of that sound. When writing audio software you can't assume a fixed sample rate, which you can do when writing dedicated hardware. Your plugin needs to sound as close to the same as possible apart from the benefit of aliasing reduction.Also I can definitely hear differences in bell EQ between cramped and not cramped up in the 10khz-16khz range easily enough, and a lso more subtle changes from 16khz-20khz when processing the EQd signal through non-linearities. In fact I can hear the difference between a minimum phase / intermediate phase oversampler and linear phase oversampler when processed through non-linearities afterwards, and for those the cutoff frequency is pretty much at nyquist or just below - every with the same steepness in filter. This is because when things are put through non-linearities after the EQ (filter) it can boost / change things in different ways.Here are some time domain plots of this sort of thing, where you need to look at the red plot on both images. The little "kick" in time domain response was clearly audio to me as a difference between these two, I thought there was an issue with my analog modelling, but it was actually the difference between the oversampling filters in my software vs my soundcard causing the difference between my model and the hardware I was modelling:https://urldefense.proofpoint.com/v2/url?u=https-3A__cytomic.com_files_forums_scream-2Dl&d=DwIDaQ&c=009klHSCxuh5AI1vNQzSO0KGjl4nbi2Q0M1QLJX9BeE&r=TRvFbpof3kTa2q5hdjI2hccynPix7hNL2n0I6DmlDy0&m=P9a9WPAm_kCu_3OiPMT3s1_h-eWJwBn3hGx2lwqec0PA4tAm4UuFleA45P_jI3OU&s=ZXPH6kTbPnSD2SQf796wcfEx_CFWzA2rg39cjbflQto&e= inear-phase-os.pnghttps://cytomic.com/files/forums/scream-minimum-phase-os.pngCheers,AndyOn Tue, 5 Dec 2023 at 16:29, Frank Sheeran <[email protected]> wrote:Andy Simper said:> you need to look at the> frequency response near nyquist and see how closely it matchesI think that's mathematically true but how much can people actually hear above 10kHz anyway? Unless they're like under 12 years old and in that case who cares what their opinion is of the sound? :-D Maybe I just have too much hearing damage from my years playing reggae keys but when I was doing software dev in this stuff a decade ago I couldn't really hear the top octave at all (at age then of 45 or so).On Tue, Dec 5, 2023 at 2:04 PM MUSIC-DSP automatic digest system <[email protected]> wrote:There are 2 messages totaling 122 lines in this issue.
Topics of the day: 1. Simulate simple EQ circuit (2) ---------------------------------------------------------------------- Date: Mon, 4 Dec 2023 07:00:47 +0100 From: Jens Johansson <[email protected]> Subject: Re: Simulate simple EQ circuit I just wanted to say I am awestruck with the amount of good advice so far! (I have not in any way given up or conceded the fight, just my day job that got in between. I do somehow understand how reactances can be seen R --> Ljω --> 1/ Cjω and I have some kind of conception about Kirchhoff's and Ohm's laws, Euler's formula etc etc, but it's still a bit of DSP stuff to absorb beyond this. So I'm ruminating on the issues and reading when I have time. I don't have some kind of production deadline, it's a pure hobby project ^^ ) Cheers and much love, J > ------------------------------ Date: Tue, 5 Dec 2023 08:41:40 +0800 From: Andrew Simper <[email protected]> Subject: Re: Simulate simple EQ circuit Hi Jens, It's amazing how complicated such a simple circuit is to solve efficiently and accurately, even when kept without any drive (ie linear). It is quite a steep dropoff into fairly deep waters, so no worries at all taking your time! The good news is that if you really like deep diving you can go down a very long way - I still can't see the bottom :) Even on this EQ there is another layer of complexity that we haven't covered yet: "frequency warping". This arises from having a finite sample rate, and how the nyquist frequency of 1/2 the sample rate is mapped to being a "very large" frequency in reality. So once you have a regular Crank-Nicolson / trapezoidal integration via whichever method you want (ie nodal, loop, wdf, port theory, laplace + bilinear) you need to look at the frequency response near nyquist and see how closely it matches. You can try to match either the amplitude (frequency) or phase response more accurately at frequencies near nyquist (1/2 the sample rate), but if you match the amplitude response closely then the phase response suffers, and vice versa. Usually the best "compromise" solution to get both more accurate is x2 band-limited upsampling, then match further away from nyquist, then decimate /2 (there are no harmonics to limit, so you don't need to band-limit before decimation). This process is really a form of "oversampling", just without the bandlimiting needed before the decimation step, but if you have a non-linear EQ, which is another layer of complexity again, you will need the bandlimiting step. Cheers, Andy Simper ------------------------------ End of MUSIC-DSP Digest - 3 Dec 2023 to 4 Dec 2023 (#2023-67) *************************************************************
