Hello, dear friend, you can consult us at any time if you have any questions, add WeChat: THEend8_
3-Band Digital Audio Equalizer
The goal of this project is to build and test a digital audio equalization network in which you will be able to
boost or attenuate the low, mid and high frequency range of music sounds. Audible sounds cover a frequency
range from 20 Hz – 20 kHz (for human hearing). In many listening scenarios sounds are distorted by the audio
system (e.g., the speaker transfer function) or the acoustic environment (room transfer function). One can
correct for the magnitude of such distortions with an audio equalizer. High end audio equalizers typically have
~30 selectable bands that allow you to adjust the sound gain in 1/3 octave frequency steps for frequencies
between 20Hz – 20 kHz. For the purpose of this project, we will consider a simpler equalization network that
allows you to adjust the bass, midrange and treble bands.
In this project, you will design and build a three-band equalizer where you will be able to separately adjust the
bass, midrange and treble using MATLAB. The schematic for this design is illustrated below:
The input sound waveform, x(t), is decomposed by three filters and these outputs are routed a gain term for
each of the three bands (Gb=bass, Gm=mid, and Gt
=treble). The signals are then added together to generate the
corrected output.
The lowpass (LP) filter encompasses frequencies below 100 Hz (bass range). The midrange is selected with a
bandpass (BP) filter covering frequencies in the range 100Hz-5 kHz. The trebles is selected with a highpass
filter (HP) that encompasses the remainder of the audible range (5-22.05 kHz).
You are allowed to work in groups of two or three. However, each student is required to hand in their own
independent report and is required to implement his/her own code. Reports using copied code or text will
be returned without a grade. (Yes, we will check for this! Code needs to be uploaded onto HUSKYCT). Group
members who worked on the project should be identified in the writeup.
Filter Design
HP
BP
LP
x(t)
GB
GM
GT
Treble
Midrange
Bass
+ y(t)
Each of the above filters is implemented using a Kaiser window FIR (Finite Impulse Response) filter
(see chapter 4.9 & 12.8-1 for windowing and FIR filter design). In general, windowed FIR filters are
implemented as the product of an ideal filter impulse response ( hideal [k], for a lowpass, bandpass or highpass)
and a window function (w[k] ) that is used to smoothly truncate the ideal filter impulse response to a total of
2N+1 samples
h[k] = hideal [k]?w[k]
Here N is a filter parameter referred to as the filter order where the total number of coefficients in the discrete
time impulse response of the filter is 2N+1. Conceptually, note that any “ideal” filter requires an infinite amount
of time and therefore an infinite amount of coefficients to implement. As we have discussed in class, this is not
practically feasibleand the ideal filters cannot be implemented in practice. To overcome this, the window
function is used to truncate the filter in a smooth fashion in order to 1) require only finite number of time
samples (2N+1) and 2) minimize filter distortions (or errors) in the passband and stopband.r design.