WaveWarp 2.0 Component
      

Spectrum Analysers:
Frequency Response Analyser
|
Functional Description
Real-time frequency-response estimation
computed from point-by-point division
of the averaged FFT spectra of the two input signals.
The magnitude and phase responses are displayed in separate plots.
The measured frequency response can be exported
to a file for off-line analysis.
It is assumed that the "Input" variable in the "transfer function" is
the first audio input, and the "Output" variable is
the second audio input, such that the frequency response is given
by "Ouput divided by Input" i.e. "second audio input divided by first audio input".
Note: this component is useful for characterising the frequency response
of single or multiply-connected components (filters or otherwise!).
The properties
of the analyser
are adjusted via the Parameter Window, as summarised
in the following table.
| Parameter | Purpose |
| "Window length" slider |
Adjusts the length of the input data buffer used to compute each successive spectrum
measurement.
The FFT buffer size is computed from the "Window length"
rounded up to the nearest power of 2
(for efficient FFT computation). If "double-padding" is selected, the FFT buffer size is
doubled (after the rounding) to improve the smoothness of the spectrum between successive
FFT bins (but without increasing the underlying frequency resolution).
Each input data buffer
is windowed (using a selected profile), then
extended to the length of the FFT buffer by
padding with zeros (on either side).
|
| "Lower frequency" slider |
Adjusts the
lower frequency limit of the frequency response plots.
The "Reset" button restores
the default setting.
The plot is updated whenever the FFT buffer is re-filled. The time elapsed between
successive
updates is displayed as the "Refresh period".
The number of FFT bins within the selected plot frequency range
is also displayed.
|
| "Upper frequency" slider |
Adjusts the
upper frequency limit of the frequency response plots.
The "Reset" button restores
the default setting.
|
| "Magnitude scale" slider |
Sets the scale of the magnitude frequency-response plot.
The magnitude is normalised, i.e. corresponds to the ratio of the
amplitudes of the two signals under test.
If "dB scale" is selected in the plot window,
the plotted quantity (per frequency point) is
G dB = 20 log10 G,
where G is the amplitude ratio.
The "Reset" button restores
the default setting for the magnitude plot-scale.
|
| "Averaging" slider |
Adjusts the averaging time for the frequency-response computation and display.
|
| "Window type" selection |
Selects the profile of the windowing function applied to the input data.
|
| "Freeze/Unfreeze" button |
Freeze-frame toggle control. When the plots have been frozen, they are not updated again until they have
been unfrozen (even after the "stop" button has been pressed).
|
| "Save average spectrum to file" dialog |
Exports the current averaged frequency-response measurement to an ASCII file
for off-line analysis.
The ASCII file format for storing complex-valued spectra is
described in the
WaveWarp Users' Guide.
Note: for
MATLAB®
users, the measured spectra can be imported into MATLAB
in a straightforward manner.
The "wwmatlab" sub-directory of the WaveWarp root directory contains
the necessary function m-files (plus example scripts) for
doing so,
thereby providing ready access to
MATLAB's powerful mathematical tools for
off-line analysis of the measured frequency response.
(Refer to the
WaveWarp Users' Guide
for
a summary of all bundled m-files for working with MATLAB
in a variety of areas in addition to spectral analysis).
|
Algorithm
Each successive input buffer
is transformed
to the frequency domain using the windowed-FFT.
The frequency response is computed by dividing, point-by-point,
the computed spectra of the two inputs.
Spectral averaging is performed point-by-point in the frequency domain using a
first-order low-pass filter.
For an introduction to the Discrete Fourier Transform and the FFT,
see, for example,
[St] sections 4.1 and 4.2.
For further introductory information (with emphasis on audio applications), and
for discussions on spectral measurements, zero-padding,
windowing,
and the Short Time Fourier Transform (STFT) for audio applications,
see
[Roa] p. 1084-1112
and
[Moore] p. 61-111.
Signal Implementations
| Audio signals | Control signals | Description |
| Double input mono | n/a |
Frequency response computed from spectrum of second mono input divided by spectrum of first mono input
|
| Double input stereo | n/a |
Frequency response computed from spectrum of average (across channels)
of second stereo input divided by spectrum of average (across channels) of first stereo input
|
Related components:
Example DrawingBoards illustrating usage:

      
|