I want to design some specific slope highpass filter to enhance speech; just like $1$ dB/octave, $2$ dB/octave and more. Is there a method to calculate the coefficients by specific slope?
-
uhm, you want that slope specification to be continuous? – robert bristow-johnson Apr 05 '16 at 03:07
-
probably check out what a shelving filter is. google "Audio EQ Cookbook". – robert bristow-johnson Apr 05 '16 at 03:08
-
In other words: do you want a piece-wise linear enhancement in the frequency domain? For instance flat in the low-frequency part, and $+x$ dB above one specfic frequency? – Laurent Duval Apr 05 '16 at 05:36
-
Thanks for everyone.Actually,what I want is just like the respone in this website.https://support.biamp.com/Tesira/Programming/AEC_in_Tesira (Pre-Emphasis Filter) But,I want to design a program to calculate more slope to use in deffient implementation. Further more,I am try to use fft to implement. – RongJun Huang Apr 06 '16 at 02:33
-
Here's a related question (if you swap poles and zeros) I want to link here because it is so difficult to find otherwise: IIR filters with variable roll-off – Olli Niemitalo May 18 '17 at 19:00
-
Likewise, you may find this answer to "Pink (1/f) pseudo-random noise generation" useful. – Olli Niemitalo May 07 '19 at 08:32
2 Answers
The order of a filter determines its slope. Normally orders are positive integers (1, 2, 3, ...). So the slopes are fixed to multiples of approximately 3db/octave. However, taking the case of a Butterworth filter, someone has applied partial calculus to obtain fractional order Butterworth filters which will effectively allow you to chose the slope. If you do a Google search for fractional order Butterworth filters you will get back some papers on the subject. For instance here: https://arxiv.org/ftp/arxiv/papers/1210/1210.8194.pdf
If you need a different filter type you could apply the same thinking, but the maths may be more complicated for, say, an elliptic filter.
- 906
- 1
- 7
- 20
You can design a Butterworth low pass filter and convert it into high pass filter. The slope in these filters is Cn dB/decade where C is a constant and n is the filter order. The polynomial for these filters are tabulated.
- 405
- 2
- 7
-
How would you design a 2dB/octave high-pass filter using this approach? – Matt L. Apr 05 '16 at 07:36