Digital Signal Processing Reference
In-Depth Information
of input data is available. The
iobuffer
index is initialized and the flag is set. The
main program waits for this flag to be set, then resets it.
Build this project as
graphicEQ
(use the optimization level
-o1
). Test this
project using an input voice file such as
TheForce.wav
(see Example 4.9) or noise.
Verify that the low- and high-frequency components are accentuated, while the
midrange frequency components are attenuated. This is because the filter coeffi-
cients are scaled in the program by
bass_gain
and
treble_gain
, initially set to
1, and by
mid_gain
, initially set to 0. The slider file
graphicEQ.gel
(on the CD)
allows you to control the three frequency bands independently. Figure 6.25 shows
the output spectrum obtained with a signal analyzer using noise as input and three
different gain settings.
6.9 ASSIGNMENTS
1.
Implement a 128-point radix-2 FFT of a real-time input sinusoid with a fre-
quency of 3 kHz and an approximate amplitude of 2 V p-p. Use a sampling
frequency of 16 kHz. Obtain a plot of the output (similar to Figure 6.18) and
explain the results in terms of the distance between the two negative spikes
and the location of the positive spikes. What is the output frequency when the
input signal frequency is 6 kHz and 10 kHz? Explain.
(
a
)
FIGURE 6.25.
Output spectrum of a graphic equalizer obtained with a signal analyzer: (
a
)
bass_gain = treble_gain = 1, mid_gain = 0
;(
b
)
bass_gain = treble_gain
= 0, mid_gain = 1
;(
c
)
bass_gain = mid_gain = 1, treble_gain = 0
.
Search WWH ::
Custom Search