VA is short for Virtual Analogue.
The difference between the VA and non-VA filters is a mixture of maths, physics, electronics and computer science.
As simply explained as possible (by omitting some very technical bits) by taking a Moog filter as an example.
The Analogue filter.
The real Moog low pass VCF is four single lowpass filters in series, with the output fed back to the input to create a resonance. In physical analogue circuits that output to input feedback loop is through copper tracks and wires and therefore happens almost instantly.
The problems with Digital Filters.
In the digital world, it’s not possible do that, if we think about it logically, how can you possible calculate the input and output of a filter at the same time?
You really would need to calculate the input values to be able to begin to calculate the output signal, which really is like the old puzzle:
“What came first? The chicken or the egg?”.
You will be attempting to lift yourself by pulling on your shoelaces.
How this is fixed in SynthEdit.
To overcome this, the standard SE Moog filter will put a 1 sample delay in the feedback path. However that seriously messes with the phase response and therefore it messes with the high frequency response- it is just not at an accurate representation anymore.
This problem also depends on the internal sample-rate, and when the filter modulates very fast, due to the time delays the input and output equations don’t match up in the time frame anymore. This can create anything from instability, to low frequency clicks, and more noise.
Not only this, but if the filter signal also distorts the audio, the distortion would also not be accurate under heavy/fast modulation anymore.
Using Maths to fix it.
The VA filters use maths on the problem to eliminate (as far as possible) that one sample delay that is causing problems.
This why these types of filters are sometimes called “Zero Delay Feedback” or ZDF filters. There is actually is no technically agreed term for these filter designs so they are sometimes called “Virtual Analog” or “Topology Preserving Transform (TPT)”, and maybe other terms as well.
Mathematicians can be really touchy about naming conventions.
Another Advantage.
There is another advantage, by using VA techniques you can mimic the characteristics of an analogue circuit more accurately. This is because you can mimic the topology and layout of the filter, so it will behave in a closer approximation of the analogue filter. Now comes the tricky maths part, and it relates to the distortion of the filter.
A Mathematical note:
There are two types of answers in math; explicit, and implicit.
1) Explicit is what most people think if they think about math like 1 divided by 2 equals 0.5 – that is explicit i.e. we can calculate the exact answer of 0.5,
2) Implicit means we cannot get an exact answer, but we are able to guess with relative certainly, and this guessing is usually iterative i.e. we guess and then use that guess to guess again ad infinitum. With every additional guess the result typically gets more accurate.
Factoring in non-linearity and distortion.
Whether we like it or not there are no perfectly linear, or zero-distortion analogue circuits.
Now, if a VA filter is linear in its response (no distortion modelled) we can get an explicit solution. However once you add distortion, we cannot get an explicit solution, so it becomes implicit and we have to use more math calculations.
There are (sort of) three levels of adding distortion, and because you’re adding more calculations and complexity then CPU usage increases the higher you go in level. A 24dB/Oct filter can have nine separate distortions in it (think of it as 9 wave-shaper modules in a single filter).
Methods:
1) “Distort the states”:- This is a technically explicit method, but with the distortion at the wrong place (compared to the analogue model), but it uses the least CPU while retaining some of the VA benefits.
2) “Fixed step” solution:- This method is implicit, i.e. it always guesses a fixed number of times, the methods typically used are “Mystan’s Pivot“, where the Pivot is a fixed “One Best Guess” method.
Note: Mystan is the DSP filter guru at KVR Audio, he suggested it. Naturally the mathematics people are still debating what the real name for this method should be – after all we know mathematicians are picky about the name used for a process.
Another method would be fixed step solver would be the Runge-Kutta method.
3) Iterative (non-fixed step):- Another implicit method. This one might guess anything from once to an infinite number of times depending on filter settings and audio input. As you would expect, the more guesses made the more CPU is used. For practical purposes, this method will usually guess up to eight or nine times, and it is usually done with the Newton-Raphson method. Yes, by Newton we are referring to Sir Isaac Newton (mathematics is much older, and more advanced than PCs). As a practical example U-he’s Diva synthesizer uses this method of modelling.
(Well I did warn you it was “geeky“)
0 Comments
1 Pingback