Nonparametric estimate of spectrum using short-time, fast Fourier transform (FFT) method
Transforms
dspxfrm3
The Short-Time FFT block computes a nonparametric estimate of the spectrum. The block buffers, applies a window, and zero pads the input signal. The block then takes the FFT of the signal, transforming it into the frequency domain.
Connect your single-channel analysis window to the w(n) port. For the Analysis window length parameter, enter the length of the analysis window, W. The block buffers the input signal such that it has a frame length of W
Connect your single-channel or multichannel input signal to the x(n) port. After the block buffers and windows this signal, it zero-pads the signal before computing the FFT. For the FFT length parameter, enter the length to which the block pads the input signal. For the Overlap between consecutive windows (in samples) parameter, enter the number of samples to overlap each frame of the input signal.
The block outputs the complex-valued, single-channel or multichannel short-time FFT at port X(n,k).
The following diagram shows the data types used within the Short-Time FFT subsystem block for fixed-point signals.
The settings for the fixed-point parameters of the Array-Vector Multiply block in the diagram above are as follows:
Rounding Mode —
Floor
Saturate on integer overflow —
Wrap
Product output — Inherit via
internal rule
Accumulator — Inherit via
internal rule
Output — Same as first
input
The settings for the fixed-point parameters of the FFT block in the diagram above are as follows:
Rounding Mode —
Floor
Saturate on integer overflow —
Wrap
Sine table — Same word length as
input
Product output — Inherit via
internal rule
Accumulator — Inherit via
internal rule
Output — Inherit via internal
rule
See the FFT and Array-Vector Multiply block reference pages for more information.
The dspstsa
example
illustrates how to use the Short-Time FFT and Inverse Short-Time FFT blocks to remove
the background noise from a speech signal. To open the dspstsa
model,
type dspstsa
in the MATLAB® command prompt.
Specify the frame length of the analysis window. The Analysis window length must be a positive integer value greater than one.
Enter the number of samples of overlap for each frame of the input signal.
Enter the length to which the block pads the input signal.
Port | Supported Data Types |
---|---|
x(n) |
|
w(n) |
|
X(n,k) |
|
[1] Quatieri, Thomas E. Discrete-Time Speech Signal Processing. Englewood Cliffs, NJ: Prentice-Hall, 2001.