Design Auditory Filter Bank
Design frequency-domain auditory filter bank
Audio Toolbox / Features
The Design Auditory Filter Bank block outputs a frequency-domain auditory filter bank. You can use an auditory filter bank to decompose an audio signal into separate frequency bands for feature extraction.
fb — Filter bank
column vector | matrix
Auditory filter bank, returned as an M-by-N matrix, where:
M is the number of bands, which is determined by the Auto-determine number of bands and Number of bands parameters.
N is the number of points in the spectrum. If you select Design one-sided filter bank, then N is equal to
NFFTis the FFT length. If you do not select Design one-sided filter bank, then N is equal to the FFT length.
This port is unnamed until you select the Output center frequencies parameter.
fvec — Center frequencies
Center frequencies of the bandpass filters in Hz, returned as a row vector with number of elements equal to the number of bands.
To enable this port, select the Output center frequencies parameter.
Frequency scale — Frequency scale of filter bank
mel (default) |
Frequency scale used to design the auditory filter bank, specified as
mel–– Design the filter bank as half-overlapped triangles equally spaced on the mel scale.
bark–– Design the filter bank as half-overlapped triangles equally spaced on the Bark scale.
erb–– Design the filter bank as gammatone filters whose center frequencies are equally spaced on the ERB scale.
Mel style — Mel style
oshaughnessy (default) |
Style of the mel scale, specified as
To enable this parameter, set the Frequency scale
FFT length — Number of DFT points
1024 (default) | positive integer
Number of points used to calculate the DFT, specified as a positive integer.
Design one-sided filter bank — Design one-sided or two-sided filter bank
on (default) |
When you select this parameter, the block designs a one-sided filter bank. Otherwise, the filter bank is two sided.
Auto-determine number of bands — Automatically determine number of bandpass filters
on (default) |
When you select this parameter, the block automatically determines the number of bandpass filters based on the Frequency scale parameter.
Number of bands — Number of bandpass filters
32 (default) | positive integer
Number of bandpass filters, specified as a positive integer.
To enable this parameter, clear the Auto-determine number of bands parameter.
Auto-determine frequency range — Automatically determine frequency range
on (default) |
When you select this parameter, the block sets the Frequency range
fs is specified
using Sample rate (Hz).
Frequency range (Hz) — Frequency range over which to design auditory filter bank
[0,22050] (default) | two-element row vector
Frequency range in Hz over which to design the auditory filter bank, specified as a two-element row vector.
To enable this parameter, clear the Auto-determine frequency range parameter.
Filter bank design domain — Domain to design filter bank
linear (default) |
Domain in which the block designs the filter bank, specified as
Set the filter bank design domain to
design the bandpass filters in the linear (Hz) domain. Set the filter bank
design domain to
warped to design the bandpass
filters in the warped (mel or Bark) domain.
To enable this parameter, set Frequency scale to
Filter bank normalization — Normalization technique for filter bank
bandwidth (default) |
Normalization technique used for the filter bank weights, specified as
bandwidth–– Normalize the weights of each bandpass filter by the corresponding bandwidth of the filter.
area–– Normalize the weights of each bandpass filter by the corresponding area of the bandpass filter.
none–– The block does not normalize the weights of the filters.
Output data type — Data type of output
double (default) |
Data type of output, specified as
Sample rate (Hz) — Sample rate
44.1e3 (default) | positive scalar
Sample rate in Hz of the filter design, specified as a positive scalar.
Visualize filter bank — Open plot to visualize filter bank
Open plot to visualize the filters in the frequency domain.
Output center frequencies — Specify additional output port for center frequencies
off (default) |
When you select this parameter, the block displays an additional output port, fvec. This port outputs the center frequencies of the bandpass filters.
C/C++ Code Generation
Generate C and C++ code using Simulink® Coder™.
Version HistoryIntroduced in R2022a
R2023b: Support for Slaney-style mel scale
Set the Mel style parameter to
slaney to use the Slaney-style mel scale.