Generalized Window Method

Reiterating and expanding on points made in §4.6.3, often
we need a filter with a frequency response that is not analytically
known. An example is a graphic equalizer in which a user may
manipulate sliders in a graphical user interface to control the gain
in each of several frequency bands. From the foregoing, the following
procedure, based in spirit on the window method (§4.5), can yield
good results:

Synthesize the desired frequency response as the
smoothest possible interpolation of the desired
frequency-response points. For example, in a graphic equalizer,
cubic splines [286] could be used to connect the
desired band gains.5.12

Plot an overlay of the original desired response and the
response retained after time-domain windowing, and verify that the
specifications are within an acceptable range.

In summary,
FIR filters can be designed nonparametrically, directly in the
frequency domain, followed by a final smoothing (windowing in the
time domain) which guarantees that the FIR length will be precisely
limited. As we'll discuss in Chapter 8, it is necessary to
precisely limit the FIR filter length to avoid time-aliasing in an
FFT-convolution implementation.