# How to design a variable slope highpass filter

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? Apr 5, 2016 at 3:07
• probably check out what a shelving filter is. google "Audio EQ Cookbook". Apr 5, 2016 at 3: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? Apr 5, 2016 at 5:36
• Thanks for everyone.Actually,what I want is just like the respone in this website.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. Apr 6, 2016 at 2: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 May 18, 2017 at 19:00

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.

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.

• How would you design a 2dB/octave high-pass filter using this approach? Apr 5, 2016 at 7:36