/EqualizerFilters.jl

Typical filters used in audio equalizers for Julia

Primary LanguageJuliaMIT LicenseMIT

EqualizerFilters.jl

Build Status

This package provides:

  1. DSP.jl-Biquads of typical audio equalizer filters, compatible to Equalizer APO. This allows the development of filters in Julia, followed by deployment on a Windows PC.
  2. An Array of Tuples representing an EQ filter chain which can be converted to both SecondOrderSections from DSP.jl and to the configuration file format of Equalizer APO.
  3. Conversion from arbitrary DSP.jl-filters to the Equalizer APO configuration file format via Second Order IIR Filters

The Biquad implementation has been directly copy-pasted from the Equalizer APO codebase, which in turn seems to be copied from W3 Cookbook formulae for audio equalizer biquad filter coeffiecients which again cites musicdsp.org as its source.

Other packages

If you need compatibility to the Lake DSP platform, you can use LakeBiquads.jl. The package may also be of interest because the Peaking EQ uses an approach similar to (Orfanidis, JAES 1997) where the Nyquist-gain is adjusted to more closely approximate analog EQs. In contrast to the implementation in DSP.jl, it also provides a Bessel highpass with maximally flat group delay behaviour at higher orders.