# Gammatone Filter Bank

Gammatone filter bank

• Library:
• Audio Toolbox / Filters

## Description

The Gammatone Filter Bank block decomposes a signal by passing it through a bank of gammatone filters equally spaced on the equivalent rectangular bandwidth (ERB) scale. Gammatone filter banks are designed to model the human auditory system.

## Ports

### Input

expand all

Audio input to the filter bank, specified as a scalar, vector, or matrix. If you specify the input as a matrix, the block treats the columns as independent audio channels. If you specify the input as a vector, the block treats the input as containing a single channel.

Data Types: `single` | `double`

### Output

expand all

Audio output from the filter bank, returned as a scalar, vector, matrix, or 3-D array. The shape of output signal depends on the shape of input signal and Number of filters. If input is an M-by-N matrix, then output is an M-by-Number of filters-by-N array. If N is `1`, then output is a matrix.

Data Types: `single` | `double`

## Parameters

expand all

Frequency range of the filter bank, specified as a two-element row vector of monotonically increasing values in Hz.

Tunable: No

Number of filters in the filter bank, specified as a positive integer.

Tunable: No

Select this parameter to specify the sample rate from the input port.

Input sample rate, specified as a positive integer in Hz.

Tunable: No

#### Dependencies

To enable this parameter, set Inherit sample rate from input port to `off`.

Select this parameter to separate ports for each filter output.

Tunable: No

This button uses the `fvtool` function to visualize gammatone filter bank responses.

Type of simulation to run, specified as one of the following:

• `Interpreted execution` –– Simulate model using the MATLAB® interpreter. This option shortens startup time and has simulation speed comparable to `Code generation`. In this mode, you can debug the source code of the block.

• `Code generation` –– Simulate model using generated C code. The first time you run a simulation, Simulink® generates C code for the block. The C code is reused for subsequent simulations as long as the model does not change. This option requires additional startup time but the speed of the subsequent simulations is faster than `Interpreted execution`.

Tunable: No

## Block Characteristics

 Data Types `double` | `single` Direct Feedthrough `no` Multidimensional Signals `no` Variable-Size Signals `yes` Zero-Crossing Detection `no`

expand all

## References

[1] Slaney, Malcolm. "An Efficient Implementation of the Patterson-Holdworth Auditory Filter Bank." Apple Computer Technical Report 35, 1993.

[2] Patterson, R.D., K. Robinson, J. Holdsworth, D. Mckeown, C. Zhang, and M. Allerhand. "Complex Sounds and Auditory Images." Auditory Physiology and Perception. 1992, pp. 429–446.

[3] Aertsen, A. M. H. J., and P. I. M. Johannesma. "Spectro-temporal Receptive Fields of Auditory Neurons in the Grassfrog." Biological Cybernetics. Vol. 38, Issue 4, 1980, pp. 223–234.

[4] Glasberg, Brian R., and Brian CJ Moore. "Derivation of Auditory Filter Shapes from Notched-Noise Data." Hearing Research. Vol. 47. Issue 1-2, 1990, pp. 103–138.