Skip to content

FIR Filtering

FIR filtering is a powerful and advanced feature . It allows construction of complex arbitrary equalization and crossover filters with independent control of amplitude and phase.

FIR filtering overview

FIR ("finite impulse response") filtering differs from the IIR ("infinite impulse response") filters used in the PEQ and crossover blocks. Technically speaking, IIR filters are recursive, meaning that each output value is partially calculated from earlier output values as well as from input values. While an IIR filter requires only a fairly small of values to be specified, an FIR filter is specified by a large array of numbers.

FIR filtering allows very complex filters to be constructed, with the aid of suitable design software. These filters can correct for amplitude only ("linear phase filters"), phase only, or a combination or both.

These numbers are conventionally referred to as "taps." The miniDSP Flex Eight can compute a total of 4096 taps.

The FIR filter pane

Each input channel has an FIR filter bank with a variable number of taps. Click on the FIR button to open the FIR filter settings window:

FIR filter settings on miniDSP Flex Eight

Enabling and disabling the filter

The FIR filter blocks are disabled by default. To enable an FIR filter block, click on the Enable FIR switch.

Enable and disable crossover filters

When the FIR filter is enabled, the graph is a solid colored line. When disabled, the graph is a dashed grey line.

Allocating taps

Taps are allocated to each block according to the number of loaded taps. The miniDSP Flex Eight can compute a total of 4096 taps. These can be distributed as you wish across the two input channels, with the limitation that each channel must have 6 or more taps and can have no more than 2048 taps.

Loading filters

File mode

In File Mode, a filter coefficient file generated by an FIR filter design program is loaded. The coefficient file must use IEEE 754 single-precision binary floating-point format.

FIR filter file mode, before loading, miniDSP Flex Eight

To load coefficients, click Browse, navigate to the file containing the filter coefficients, and open it. The first few coefficients will be displayed and the buttons will change:

FIR filter file mode, after loading, miniDSP Flex Eight

The displayed graph will also change to reflect the response of the loaded file.

  • To accept the loaded filter, click APPLY.

  • To cancel the operation, click UNLOAD FIR.

Manual mode

In Manual Mode, the FIR filter coefficients are pasted directly into the entry box in plain text, as shown below.

FIR filtering manual mode settings in miniDSP Flex Eight

The pasted coefficients must be plain text in this format:

b0 = 1
b1 = -1
b2 = 0.5
b3 = -0.5
b4 = 0.2
b5 = 1

To set coefficients:

  1. Cut and paste the coefficients from the text output of the design program.

  2. Press the PROCESS INPUTS button.

  3. Confirm that the frequency response graph is as you expect.

  4. Press APPLY. This will write the coefficients into the processor's memory.

  5. To clear the filter coefficients, click CLEAR TAPS and then APPLY.

Jumping between channels

To jump quickly between the FIR filter window of different channels, enable the Menu switch at the top right. Jump to a different channel by clicking on the channel buttons:

Jump between FIR filter channels

FIR filter design software

The filter coefficients must be created with the aid of filter design software. miniDSP does not provide any such software, instead referring you to the many software packages available for this purpose (both freeware and commercial). Please see the FIR filter tools page on our website. The design program must be set for a 96 kHz sample rate.

Tips

Tip

If, after selecting a filter file or setting coefficients, the frequency response graph does not change as expected, make sure that the Enable FIR switch is turned on.

Tip

If you zero all* filter taps, make sure that you also disable the the filter, otherwise there will be no audio through that channel.