You are here: Reference for Processing Blocks and Controls > DSP Processing Blocks > Filters > All-pass

Block Reference

All-pass Filter


The All-pass block includes up to six first- or second-order all-pass filters, a concept that may be new to you. Simply stated, an all-pass filter adjusts an audio signal’s phase angle at specific frequencies rather than the signal’s amplitude. Contrast this with audio delay, which changes the time arrival of all frequencies.

How to Use

All-pass filters are primarily used to compensate for phase anomalies of loudspeakers, which is perhaps the most useful application for all-pass filters (as the only alternative is to physically alter the loudspeaker driver or design).

Historically, all-pass filters have also been used to correct phase differences created by the filters in crossovers. Properly configuring all-pass filters for this purpose requires knowing the crossover filter alignment and frequency, then setting the all-pass filter’s order frequency and bandwidth to specific values. The HAL Crossover blocks thankfully include all-pass filters that are automatically adjusted such that the outputs of the Crossover block are automatically phase compensated.

Way back in the days of analog audio processing (when ADCs were noisy and expensive, and memory was even more expensive), audio equipment manufacturers used all-pass filters to make cheap audio delays. However, an all-pass filter’s delay varies with the frequency of the signal. Using a digital delay (like one of HAL’s Delay blocks) creates a delay that is predictable and constant for all frequencies.

Adding the Block to Your System
  1. Click the Processing tab to open the Processing Workspace.
  2. In the palette area, click the DSP tab.
  3. Expand the Filters category of blocks.
  4. Click and drag the All-pass block into your Processing Map.
  5. Wire it into your system in the appropriate location.
  6. (Optional) Customize the names of the block and the input and output node by clicking their current name and then typing the custom name in the text box that appears. Click the X to save the name.
Configuring the Block
  • Open the All-pass block's properties by double-clicking the block or hovering and clicking the properties icon that appears in the upper right of the block's title bar. From here, you can do the following:
    • Add filters. By default, the All-pass block contains a single first-order all-pass filter. You can add up to five more filters to the block by clicking the Add Filter button.
    • Remove a filter. To do so, select it and click the Remove Filter button.
    • Select a filter in one of three different ways:
      • Click its frequency or bandwidth handle in the phase plot.
      • Select it using the drop-down list in the View box (upper right).
      • Select it in the Table View (bottom).
    • After selecting a filter, use the Frequency , Bandwidth, and Order controls to configure the phase response of the filter.
    • note: Bandwidth controls are only available for 2nd-order filters.

    • You can use the brown frequency and purple bandwidth handles on the phase plot to control a filter's frequency and bandwidth at any time.
    • You can bypass each filter individually by selecting its Bypass checkbox. Bypassing a filter effectively turns that filter into a wire.
    • note: A bypassed filter’s phase response and handles are hidden in the phase plot. By default the phase plot only displays the composite phase response (the total result of every all-pass filter in the block).

    • To view the individual contribution of a particular filter, select Individual in the View box.
  • note: The magnitude response of the all-pass filters is not shown because all-pass filters do not affect the magnitude of an audio signal, only its phase.


User Interface Elements
All-pass Block

All-pass Block

UI Element Purpose
Input node Connection point for wiring input to the All-pass filter block
Output node Connection point for wiring the All-pass filter output to another block
x 1 Indicates the total number of Parametric EQ filters in the block


All-pass Block Properties

(Hover over the thumbnail below to view the properties dialog box.)

All-pass Block Properties

UI Element Purpose

Response graph

Graphical representation of filters. Use the brown handle(s) to adjust a filter's frequency. Use the purple handles (only visible for 2nd order filters) to adjust a filter's bandwidth. Use View options to change graph content.
View options Selecting Composite (selected by default) displays frequency/gain handle(s) for all filters on the graph (default is one filter). Selecting Individual (deselected by default) displays the individual contribution of the selected filter.
Add Filter/Remove Filter Click to add/remove the selected filter from the graph. You can have up to six filters in the All-Pass block..
Frequency control Displays the current frequency of the selected filter. Change the frequency by moving the slider or editing the frequency value in the edit box.
Bandwidth control Displays the current bandwidth of the selected filter (visible for 2nd-order filters only). Change the bandwidth by moving the slider or editing the bandwidth value in the edit box.
Order control Displays the current order (1st-order or 2nd-order) of the selected filter. Change the order by selecting the other option in the dropdown list.
Bypass (above table view) Selecting this checkbox bypasses the selected filter, which effectively turns the filter into a wire.
Filter table view Displays the Frequency, Order, and Bandwidth for each filter. To select a filter, click its row in the table. You can also bypass a filter by selecting its associated Bypass checkbox.
Bypass All Selecting this checkbox bypasses all filters.