What is the best way to create a uniform slope across a very wide band, for instance a -1 dB/octave slope spanning from 100 Hz to 10 kHz?
Based on a PM discussion recently, I thought this information might be useful to some people. For audio professionals this is probably simplistic and obvious, but some people might benefit from it.
I have found a second order shelf filter with a very low Q is the best way. The attached graphics show how this is done, and how it compares to an ideal slope. I am showing the specific case of 100 Hz to 10 kHz, which has a span of 100x. i.e. 10,000 Hz / 100 Hz = span of 100x.
This technique works well for up to a span of 200x, so it can be used from 100 to 20k, or from 50 to 10k. If a person need a span greater than 200x, they will probably need two shelf filters to get the job done.
I included some example calculations so anyone can work out a solution based on their own needs.
j.
Based on a PM discussion recently, I thought this information might be useful to some people. For audio professionals this is probably simplistic and obvious, but some people might benefit from it.
I have found a second order shelf filter with a very low Q is the best way. The attached graphics show how this is done, and how it compares to an ideal slope. I am showing the specific case of 100 Hz to 10 kHz, which has a span of 100x. i.e. 10,000 Hz / 100 Hz = span of 100x.
This technique works well for up to a span of 200x, so it can be used from 100 to 20k, or from 50 to 10k. If a person need a span greater than 200x, they will probably need two shelf filters to get the job done.
I included some example calculations so anyone can work out a solution based on their own needs.
j.
Attachments
I have been implementing sub first order slopes over an extended frequency range lately, and here is how I do it. I first got the idea from Douglas Self in "The Design of Active Crossovers" (2011), section. 11.14 “equalizers with non-6 dB Slopes”. He designs a broadband "pinkening" filter in this section in various ways (as analog active filters) using combinations of first order poles and zeroes that are closely spaced in frequency. A pinkening filter tilts the response down at 3dB per DECADE (a little less than 1dB per octave) across the entire audio band.
In DSP this translates to using a number of first order shelving filters, each with sub 6dB gain or loss. For example, I am currently using six first order shelving filters, each implememnting a loss of 1.5dB from low to high frequency and spacing out the center frequencies across the intended band where the gain or loss should occur. In my case it is over about two decades. This results in a smooth, continuous tilt to the response.
The second order shelf filter with Q<0.4 is similar (I have used that, too) but it cannot be extended to arrbitrarily wide bands like you can do with multiple first order shelving filters.
In DSP this translates to using a number of first order shelving filters, each with sub 6dB gain or loss. For example, I am currently using six first order shelving filters, each implememnting a loss of 1.5dB from low to high frequency and spacing out the center frequencies across the intended band where the gain or loss should occur. In my case it is over about two decades. This results in a smooth, continuous tilt to the response.
The second order shelf filter with Q<0.4 is similar (I have used that, too) but it cannot be extended to arrbitrarily wide bands like you can do with multiple first order shelving filters.
Last edited:
I think I need to try to first go for flat and then introduce one of these filters for the final house curve. Just use REW auto EQ repeatedly until very flat - then add the shelf...
//
//
I think I need to try to first go for flat and then introduce one of these filters for the final house curve. Just use REW auto EQ repeatedly until very flat - then add the shelf...
//
That's exactly what I am doing with my loudspeakers now. I design the loudspeaker to be flat on axis first, then I apply a "voicing EQ" curve. This approach only makes sense when using DSP, however. Not a problem for me! I am writing up a manuscript about it as we speak.
I was originally using two first order shelves to cover a 100x range from 100 to 10k. One at 316 Hz and one at 3160 Hz. But the low Q 2nd order did a better job and requires just a single biquad.In DSP this translates to using a number of first order shelving filters, each with sub 6dB gain or loss. For example, I am currently using six first order shelving filters, each implememnting a loss of 1.5dB from low to high frequency and spacing out the center frequencies across the intended band where the gain or loss should occur. In my case it is over about two decades. This results in a smooth, continuous tilt to the response.
The second order shelf filter with Q<0.4 is similar (I have used that, too) but it cannot be extended to arrbitrarily wide bands like you can do with multiple first order shelving filters.
To go from 20 to 20k, we need two 2nd order shelves at about 120 Hz and 3700 Hz, both at Q=0.3... but if we use 1st order shelves, we need at least three, and probably four of them.
I also design for a flat response, and then use a global EQ to set the tilt. On some recordings I prefer a flat response, others a -0.6 dB/octave, and most pop recordings a -1 dB/octave.
I first got the idea from Douglas Self in "The Design of Active Crossovers" (2011),
That sounds like an interesting book. I will have to put it on my reading list. Thanks!
j.
@hifijim
Your method is definitely more efficient if you can use one or two biquads. Your writeup is very nice. Thanks for sharing it.
The Self book is mostly how to design analog active circuits using his favorite op-amp, the 5532, but it does have some useful info in general. Try to pick up a used copy if you can. I think there is also a more recent version that might have some new material.
Your method is definitely more efficient if you can use one or two biquads. Your writeup is very nice. Thanks for sharing it.
The Self book is mostly how to design analog active circuits using his favorite op-amp, the 5532, but it does have some useful info in general. Try to pick up a used copy if you can. I think there is also a more recent version that might have some new material.
Thx, jim, for your solution, very interesting. The peculiar experience I have had with my constant directivity 2-way speakers is that it is detrimental to their sonic signature to apply a slope like this. As soon as I tamper with frequencies <1 khz, to fit them to a room curve, things get dull, despite a previous very flat in-room response in this frequency range. I instead found it helpful to use each a slight boost via 1) a low shelf for mids from 400 hz and 2) for bass from 100 hz.
When I see the "spinorama" data for constant directivity speakers, most of them have a power response and a predicted-in-room response that slopes down by ~ 1 to 1.5 dB/ octave. So I can see why such a speaker would not need any additional sloping...
Interesting that you can get that close with just two poles and two zeros. I have seen filters that are to convert white noise into pink noise (-10 dB/decade, approximately -3 dB/octave) and those had a whole bunch of sections, always pole, zero, pole, zero, pole, zero...
I do the same, I force the speaker flat with DRC and the introduce a voicing curve.I think I need to try to first go for flat and then introduce one of these filters for the final house curve. Just use REW auto EQ repeatedly until very flat - then add the shelf...
//
I use a collection of shelving filters placed an octave apart with a Q of 0.7, then whatever the attenuation of the shelving filter is is sets the slope per octave.
This is obviously easier to do in a computer equalizer than it is in hardware DSP unless it has a lot of bands of EQ available.
Very rarely is a totally straight line going to be the right answer, mine has a few wiggles introduced into it, the HF boost is gone now.
The filter at 150Hz has the Q changed to slope up faster, this slight change produces a really audible difference that I had a clear preference for.
Last edited:
I wouldn’t necessarily share this assumption. The sloping in some old measurements of mine only happened <10k, and this might even only be an effect of the MMT measurements. https://www.audiosciencereview.com/...n-room-measurements.13540/page-21#post-831911When I see the "spinorama" data for constant directivity speakers, most of them have a power response and a predicted-in-room response that slopes down by ~ 1 to 1.5 dB/ octave. So I can see why such a speaker would not need any additional sloping...
None of the above mentioned tweaks were applied to this graphs, I only repost them to show, how little the IR falls and that it still sounds right with this system.
Will make some new measurements soon to check back on this issue.
Don't mind the bass shelf. By now, there is more room EQ applied, but in anechoic response differs for more bass/low mids power.
Last edited:
If you draw a trend line on there although it doesn't fit perfectly, there is a 5dB drop between 100 and 10K, so the directivity is already rising overall. The balance of bass to treble is really important and some responses that look very different can sound quite similar if this ratio is maintained.
This is because those speakers are trying to match the power response of a boxed louspeaker that has a power response that slopes down at about that rate, given that the speaker has a flat on axis frequency response. It's the nature of that particular beast.When I see the "spinorama" data for constant directivity speakers, most of them have a power response and a predicted-in-room response that slopes down by ~ 1 to 1.5 dB/ octave. So I can see why such a speaker would not need any additional sloping...
I envision this to be so. But I also guess that at the frequency regions which don't sound good with "straight", the speaker probably has some problem there - be it; distortion, phase, directivity... so something is in need of repair... and of course it can be a room problem also. All depending on the used gating.......
Very rarely is a totally straight line going to be the right answer, mine has a few wiggles introduced into it, the HF boost is gone now.
---
//
Yes usually diffraction or directivity differences and the interaction of the speaker and the room. It is the reason generally quoted why corrections based only on in room measurements might not work out if the speaker does not have good smooth directivity.
Try 62, 620 & 6200 hz with Q around .43 on second order shelves.
With some rounding, these frequencies are approximately the center of each decade 20 200 2000 20000. Exact numbers would be sqrt(10) x 20, 200 and 2000.
One dB on each gives you 3 db on the full spectrum.
Also beware of Fabfilter's Q specification. They specify the common Q=1/sqrt(2)=0.707 as their Q=1, so if you want to translate to an other EQ, multiply the fabfilter Q by 1/sqrt(2).
With some rounding, these frequencies are approximately the center of each decade 20 200 2000 20000. Exact numbers would be sqrt(10) x 20, 200 and 2000.
One dB on each gives you 3 db on the full spectrum.
Also beware of Fabfilter's Q specification. They specify the common Q=1/sqrt(2)=0.707 as their Q=1, so if you want to translate to an other EQ, multiply the fabfilter Q by 1/sqrt(2).
This has been one of my pet projects too.... that is, the idea of how to implement downward sloping house curves.
(Like others mentioned, i prefer to first tune a speaker to flat, and then as an separate layer on the source input, experiment with house curves or tone controls etc.)
One method i tried that worked really well was to build in DSP a way to continually vary the slope of the curve in real time.
Here's the electrical measurements of a set of slopes.
700Hz is my chosen the fulcrum, and low shelves are used below that frequency, and high shelves above.
A percentage control knob varies whatever slope is desired.
50% equals flat response like this.
Whereas 73% for example, makes about a 8dB downward tilt end to end.
100% gives -18 dB end to end or about 1.8 dB per octave.
I did have to add a few parametric EQs on the low end from 10- 15Hz to reduce low end shelving boost. They also worked progressively, continually, as a function of the percentage knob. You can see their progressive effect on the very low end, looking back up at the first set of curves.
I really liked being able to tilt slope to audible taste, depending an SPL and track tonality.
I'm not using it now because I've found I still would rather have a separate volume control on each driver section, all controlled by a volume master.
It sounds like a lot of constant tweaking, but it's not really, and adds immensely to my overall enjoyment.
I do mean immensely .....the idea of having to live with one fixed house curve (or worse, lack thereof haha) is a total non-starter for me anymore.
Go, DSP, go !!!
(Like others mentioned, i prefer to first tune a speaker to flat, and then as an separate layer on the source input, experiment with house curves or tone controls etc.)
One method i tried that worked really well was to build in DSP a way to continually vary the slope of the curve in real time.
Here's the electrical measurements of a set of slopes.
700Hz is my chosen the fulcrum, and low shelves are used below that frequency, and high shelves above.
A percentage control knob varies whatever slope is desired.
50% equals flat response like this.
Whereas 73% for example, makes about a 8dB downward tilt end to end.
100% gives -18 dB end to end or about 1.8 dB per octave.
I did have to add a few parametric EQs on the low end from 10- 15Hz to reduce low end shelving boost. They also worked progressively, continually, as a function of the percentage knob. You can see their progressive effect on the very low end, looking back up at the first set of curves.
I really liked being able to tilt slope to audible taste, depending an SPL and track tonality.
I'm not using it now because I've found I still would rather have a separate volume control on each driver section, all controlled by a volume master.
It sounds like a lot of constant tweaking, but it's not really, and adds immensely to my overall enjoyment.
I do mean immensely .....the idea of having to live with one fixed house curve (or worse, lack thereof haha) is a total non-starter for me anymore.
Go, DSP, go !!!
Hifijim,
Nice work!
Ok, officially this has now been committed to memory: fc=1000Hz, ampl=-5.3dB, Q=0.304. 🙂
Thanks for the superb analysis and write up!
It seems rather complex to implement globally in DSP, but when making 2 way crossovers, I routinely implement this naturally in the voicing and it is usually accomplished through the low pass shelving filter, a low pass filter on woofer, plus the high pass filter corner and padding. The low pass inductor value has a major effect on the tilt angle. For example, here is one of my developmental crossovers that I just made using only 7 components. You can see the mild tilt highlighted by the hand drawn blue line (about -2.5dB from 100Hz to 20kHz):
Nice work!
Ok, officially this has now been committed to memory: fc=1000Hz, ampl=-5.3dB, Q=0.304. 🙂
Thanks for the superb analysis and write up!
It seems rather complex to implement globally in DSP, but when making 2 way crossovers, I routinely implement this naturally in the voicing and it is usually accomplished through the low pass shelving filter, a low pass filter on woofer, plus the high pass filter corner and padding. The low pass inductor value has a major effect on the tilt angle. For example, here is one of my developmental crossovers that I just made using only 7 components. You can see the mild tilt highlighted by the hand drawn blue line (about -2.5dB from 100Hz to 20kHz):
Last edited:
- Home
- Loudspeakers
- Multi-Way
- DSP filter to create wide band uniform slope