A tool to create audio processing pipelines for applications such as active crossovers or room correction. It is written in Rust to benefit from the safety and elegant handling of threading that this language provides. Supported platforms: Linux, macOS, Windows.
Audio data is captured from a capture device and sent to a playback device. Alsa, PulseAudio, Jack, Wasapi and CoreAudio are currently supported for both capture and playback.
The processing pipeline consists of any number of filters and mixers. Mixers are used to route audio between channels and to change the number of channels in the stream. Filters can be both IIR and FIR. IIR filters are implemented as biquads, while FIR use convolution via FFT/IFFT. A filter can be applied to any number of channels. All processing is done in chunks of a fixed number of samples. A small number of samples gives a small in-out latency while a larger number is required for long FIR filters. The full configuration is given in a YAML file.
henquist.github.io
github.com/HEnquist/camilladsp
Tag Archives: crossover
CrossOver ~ Frequency Range Splitter
CrossOver is a plugin to split an incoming signal into several (at most 4) frequency ranges. It can be used to build your own multiband effects within a modular (sub)host environment. By using only 2 bands, you can also create bass-effects. These are effects which keep the low frequency range dry and affect only the high frequency range. The band-splitting is done by complementary pairs of Linkwitz-Riley lowpass/highpass filters, the slope of which is adjustable between 12 and 96 dB/oct. For configurations with more than 2 output bands, the signal is first split into 2 bands (low and high) and then the low or high or both bands is/are split further, thus the splitting is done in a hierarchical manner.
Key Features:
www.rs-met.com/freebies
- Splits signal in up to 4 frequency bands
- separation between bands up to 96 dB/oct
- flat sum due to Linkwitz/Riley filters

XOralizer ~ Virtual Crossover Utility
MSO ~ Multi-Sub Optimizer
Multi-Sub Optimizer (MSO) is a free Windows-based software program for optimizing the bass response of audio and AV systems having multiple subwoofers. It minimizes the seat-to-seat frequency response variation in the bass region while simultaneously optimizing the response flatness at the main listening position. You can choose to have MSO perform this optimization on just the subs, or to include the main speakers in the optimization. In the latter case, it automates the process of integrating the subs with the main speakers, including delay / distance settings and EQ in the crossover region.
Although it’s possible to use it for identical equalization (EQ) of all subs at once, it does not depend on a global EQ approach like commercial room correction systems do. Such systems cannot reduce the seat-to-seat variation of the bass response. Instead, MSO performs optimization of EQ, gain and delay parameters individually for each subwoofer. This individual EQ optimization for each sub causes the variation of the bass response from seat to seat to be reduced, and the bass response at each listening position to be flattened.
MSO can be used to perform tasks that include:
- Optimizing subwoofer integration with main speakers through delay, gain and EQ adjustments
- Reducing seat-to-seat frequency response variation of the combined sub outputs through optimized EQ of each sub individually
- Achieving optimum subwoofer integration via individual sub delay adjustments
- Improving response flatness of the combined sub outputs at all listening positions
- Creating, specifying and achieving your desired target frequency response curve to shape the bass response to your preference
- Plotting your data in a variety of ways
- Obtaining filter parameters as text files containing biquad coefficients for import into miniDSP EQ hardware, or for manual data entry into hardware that doesn’t support filter file import.

foo_dsp_xover ~ Foobar2000 Digital Crossover
foo_dsp_xover is a software digital crossover implementation that I have been working on for a while in my spare time as a hobby. It is a Foobar2000 audio player plugin that implements this digital crossover to achieve active multi-amplification.
This software needs to run on a WinXP PC equipped with a multi-channel sound card (e.g. 5.1 or 7.1 surround sound card) feeding the various voices of a multi-amplifier and loudspeaker active configuration set-up.

Pulseaudio ~ Linux Crossover Rack
Pulseaudio Crossover Rack is a program to design and implement multi-way speaker crossovers using any linux powered computer with a multi-channel sound card and a running desktop environment which uses Pulseaudio as it’s sound backend. It also uses a set of LADSPA plugins, namely ladspa-t5-plugins for the heavy lifting of DSP/audio processing. It’s written in python3 and uses QT as the windowing toolkit.

freeDSP ~ DIY Audio DSP Project
The freeDSP is an open-source digital signal processor family for the do-it-yourself community. The applications range from active loudspeaker concepts (digital crossovers, bass enhancement, …) and room equalization over advanced musical effect processors to car audio signal processing.

rePhase ~ Loudspeaker Phase Linearization
rePhase is a FIR generation tool for building fully linear-phase active crossovers with arbitrary slopes.
It also let you manually compensate for the phase shifts of your loudspeakers and existing crossovers, be it active or passive.
Once generated, the FIR can be applied using any hardware (openDRC, miniSHARC, Najda, …) or software (foobar, convolver, JRiver, …), stereo or multi-way convolution engine.
sourceforge.net/projects/rephase
Additional resources:
Equalizer APO, REW and Rephase WOW! ~ diyAudio
en.wikipedia.org/wiki/Digital_room_correction

