Performance difference between Slew filter and Parametric EQ
Dear Team,
Thank you for your support. My overall expectation is to have smooth filtering while switching from one gain level the other, hence I have chosen Slew filter instead of Parametric EQ.
But, I have observed differences in the output behaviour between the Parametric EQ and the General EQ (2nd order) with the Slew (Slewing) method in SigmaStudio, and I am seeking clarification regarding the expected performance.
Please find further details below,
Parametric EQ:
With this, I could able to get the expected frequency response but transition from one gain level to the other creates pop sound.
Our focus was on how the filter responds during gain transitions, particularly when switching the gain value over time. Hence, I have tried Slew EQ.
General EQ (2nd Order) with Slew:
I then configured the General EQ (2nd order) block in SigmaStudio, the Slew functionality is expected to introduce a smooth transition during gain changes (ramping). While the Slew EQ did indeed smooth the transitions, I observed the following issues:
A variation in frequency response when tested with sine tones at frequencies other than the center frequency.
An unexpected gain boost at 0 dB, where no change in output level was anticipated.
Test Configuration and Behaviour Summary:
Please refer to the following table for the input signal parameters and setup, along with the behaviour summary of both Parametric EQ and Slew EQ:
Updated Results:
Please refer to the updated results of both Parametric EQ and Slew EQ, obtained using the above-mentioned test setup and input signal parameters, as summarised in the table below:
Points Requiring Clarification:
I would like to clarify the following points:
Both Parametric EQ and Slew EQ are configured for the same filtering process; however, the Slew method shows variation in frequency response at frequencies other than the center frequency.
The Slew EQ also exhibits an unexpected gain boost at 0 dB [filter gain], where no change in output level was anticipated [expecting passthrough].
I have attached the SigmaStudio project files for both Parametric EQ and Slew EQ configurations for your reference - "Sigma_Codes.zip".
Sigma_Codes.zip
Audio Signal Processors
hardware
software
adau1452 sigmastudio
processors and dsp
sigmastudio
SigmaDSP Audio Processors
Processors and Microcontrollers
ADAU1452REVBZ
slew
eq
Show More
Hello Forumfanatic,
Thanks for attaching your project, I will test your conditions and get back to you.
How did you measure the before and after filter readings? did you use the internal level detector or any external tools?
Regards,
Harish
Harishgowtham
I measured the before- and after-filter levels using an external tool (SpectraPLUS). The test signals (sine tones at the specified frequencies) were fed into the DSP, and the output was captured through my audio interface and analyzed in SpectraPLUS. The dB values mentioned in the results were taken from SpectraPLUS measurements, not from SigmaStudio’s internal level detector.
Hello Forumfanatic,
As far as I checked, it seems to be working fine. Below is what I quickly tried.
One important note is that, I suggest you use Double precision filters since the corner frequency is lower. That being said, even single precision filter also gives me an expected result.
I used double precision for this test and recommend you to use double precision.
1) I set the input frequency to 300Hz with gain set to -10dB and set the filter's corner frequency to be 160Hz with 7dB boost.
You can see that the meter before the filter shows around -12dB (appx -13dB) which is expected and 300Hz input should be boosted by appx 1-2dB according to the frequency response, hence the output meter shows -11dB which is expected.
2) I set the input frequency to 50Hz with gain set to -10dB and set the filter's corner frequency to be 160Hz with 0dB boost. So no reduction or boost, the input should pass 'as is' (of course with change in phase).
The same conditions with 300Hz input.
You can check the results in the meter.
Instead of measuring within the same DSP, I tried to send this signal via SPDIF to another DSP and measured the level in the second DSP. It also gave me an expected results.
I also passed the signal to the DAC and looked at the analog out, it appears to be an expected output.
So, could you please try measuring the level in internal meter? if you are getting the same result as me with level detectors, then we will have to see what's happening in the measuring tool or the format etc.
Regards,
Harish
Harishgowtham
Apologies for the delay in getting back to you, and thank you for your patience.
Thank you for the detailed checks and the guidance on using double precision.
To clarify, my measurements are from the General EQ (2nd-order) block with Slew enabled, configured as a Peaking filter (fs = 48 kHz). I repeated your two cases using double precision and read levels on SigmaStudio internal meters (not SpectraLAB), but I still see materially different results with the Slew block.
For reproducibility, my exact settings are:
Block: Second Order → Double Precision → General EQ (2nd order) Slew
Mode: Peaking
fc = 160 Hz, Gain = +7 dB (Case 1) / 0 dB (Case 2)
Q (or BW): 1.41
Slew time: ~0.05 ms
Input: sine at 300 Hz and 50 Hz, source level –10 dBFS
Meters: RMS level meters placed immediately before and after the Slew block
Could you please confirm that your test used the same Slew block (Peaking) and parameters?
If you were on the standard Parametric EQ, that might explain why our results differ.
I’ve attached screenshots showing the block selection and meter placements.
Once we confirm we’re exercising the same Slew peaking filter, I’ll re-run any additional cases you suggest.
Thanks again for the support.
Hello ForumFanatic,
The attached screenshots of yours make sense to me and it shows the expected results.
Below is what I tried with the exact block and settings as you.
In the first case,
Block: Second Order → Double Precision → General EQ (2nd order) Slew
Mode: Peaking
fc = 160 Hz, Gain = 0 dB
Q (or BW): 1.41
Slew time: ~0.05 ms
Input: sine at 50 Hz, source level –10 dBFS
You can see in the below screenshot that, I marked the 50Hz line with red dot in the frequency response graph and you can see the gain reduction for 50Hz is -13dB.
Since the gain of the sine module is set for -10dB initially, the first level meter shows -12dB (it should be -13dB since the meter uses RMS value, but meters will give you a decent level of resolution but it's not so accurate) which is correct, and after it went thru the filter (which is set to apply -13dB for a 50Hz signal), now it shows -25dB which makes sense.
If I set the tone to output a 0dBFS signal, then I should get 13dB reduction (-13dB), and my meter should show around -16dB and I get it correctly.
In the second case,
Block: Second Order → Double Precision → General EQ (2nd order) Slew
Mode: Peaking
fc = 160 Hz, Gain = 7 dB
Q (or BW): 1.41
Slew time: ~0.05 ms
Input: sine at 300 Hz, source level –10 dBFS
You can see in the below screenshot that, I marked the 300Hz line with red dot in the frequency response graph and you can see the gain reduction for 300Hz is just 0dB (which means the signal will come and get multiplied by '1' and go out of the filter 'as is', so no reduction will happen).
So, a -10dB signal will come into the filter and go out as -10dB signal, the meters will show it as -13dB (now it shows -12dB which is fine)
Look at case 3 below,
I set the input to 300Hz ,0dBFS. You can see in the marked graph below that a 300Hz signal should get 7dB reduction (-7dB) and it correctly gets 7dB reduction, so the meter shows -10dB.
Look at case 4 below,
I set the input to 600Hz ,0dBFS. You can see in the marked graph below that a 600Hz signal should get 14dB reduction (-14dB) and it correctly gets 14dB reduction, so the meter shows -17dB as result.
So, it all makes sense to me, and I didn't find anything strange with this block.
So, please let me know about your thoughts on this.
Regards,
Harish
Thank you for your explanation, that helps clarify the block’s functionality.
As a follow-up, could you please share any reference or source for the Biquad General EQ 2nd order implementation used here?
We’re following RBJ’s Audio EQ Cookbook and would like to cross-check with the official source you recommend.
Hello ForumFanatic,
Here is the link to the wiki page for the filter formula. Yes, these 2nd order Biquad filter design uses RBJ's formula from the audio cookbook.
One thing to note is, if you manually calculate the coefficients for a particular filter setting and compared them with sigma studio's coefficients for the same filter setting, you may find some differences (which is mostly ignorable). The reason for that is explained here
Regards,
Harish
Please log in to reply.











