Skip to content

ZL-Audio/ZLEqualizer

Repository files navigation

ZL Equalizer

pluginval License Downloads

ZL Equalizer is an equalizer plugin.

For ZL Equalizer version 1, please refer to the branch "v1".

Build from Source

Install Dependencies

Please make sure Clang (AppleClang 16+ or LLVM/Clang 17+), cmake (minimum 3.25), ninja are installed and configured on your OS.

On Windows (with Intel chips), you may install Intel® Integrated Performance Primitives and set its path as an environment variable IPP_DIR. It is not a hard requirement as KFR has already been used for SIMD/DFT acceleration.

On Linux, you can install the remaining dependencies with the following command:

sudo apt-get update && sudo apt install libasound2-dev libx11-dev libxinerama-dev libxext-dev libfreetype-dev libfontconfig1-dev libwebkit2gtk-4.1-dev libglu1-mesa-dev

Clone and Build

Once you have set up the environment, you can clone the ZL Equalizer code, populate all submodules, then configure & build the code. Please set:

  • the variable ZL_JUCE_FORMATS as a list of formats that you want, e.g., "VST3;LV2".
  • the variable ZL_EQ_BAND_NUM as the number of bands, default 24 bands
git clone https://github.com/ZL-Audio/ZLEqualizer
cd ZLEqualizer
git submodule update --init --recursive
cmake -B Builds -G Ninja -DCMAKE_BUILD_TYPE=Release -DKFR_ENABLE_MULTIARCH=OFF -DZL_JUCE_FORMATS="VST3;LV2" -DZL_EQ_BAND_NUM=24 .
cmake --build Builds --config Release

After building, the plugins should have been copied to the corresponding folders. If you want to disable the copy process, you can pass -DZL_JUCE_COPY_PLUGIN=FALSE, find the binary folders under Builds/ZLEqualizer_artefacts/Release and copy them manually.

If there are multiple compilers on your OS, you may need to pass extra flags to maker sure that cmake uses LLVM/Clang. On Linux, you may pass -DCMAKE_C_COMPILER=clang -DCMAKE_CXX_COMPILER=clang++. On Windows, you may pass -DCMAKE_C_COMPILER=clang-cl -DCMAKE_CXX_COMPILER=clang-cl.

AAX plug-ins need to be digitally signed using PACE Anti-Piracy's signing tools before they will run in commercially available versions of Pro Tools.

License

ZL Equalizer is licensed under AGPLv3, as found in the LICENSE.md file. However, the logo of ZL Audio and the logo of ZL Equalizer are not covered by this license.

Copyright (c) 2023 - zsliu98

JUCE framework from JUCE

JUCE template from pamplejuce

nlopt by Steven G. Johnson

kfr by KFR

Font from CMU Open Sans, Font Awesome and MiSans.

References

Vicanek, Martin. Matched One-Pole Digital Shelving Filters. (2019).

Vicanek, Martin. Matched Second Order Digital Filters. (2016).

Redmon, Nigel. Cascading filters. (2016).

Wishnick, Aaron. Time-Varying Filters for Musical Applications. DAFx. (2014).

Moler, Cleve. Makima Piecewise Cubic Interpolation. MathWorks Blogs. (2019).