Real-time convolution reverb without FFT, accelerated using Metal on the GPU.
Convolution processing runs on a dedicated background thread, producing a high-quality, natural reverb effect.
Tested on a MacBook Air M4.
- Real-time, time-domain convolution (no FFT)
- GPU-accelerated with Metal
- Background-threaded processing
- CMake-based build system (easy setup)
You need:
- CMake installed
- Xcode with command-line tools installed
git clone https://github.com/zeloe/juce_metal_convolution.git
Download metal-cpp from Apple.
Extract it, and copy the metal-cpp
folder inside the metal-cmake
directory:
juce_metal_convolution/metal-cmake/ ← copy metal-cpp here
Note: You must have the
metal-cpp
headers locally; they are not included in this repo.
To generate an Xcode project:
cmake -B build -G Xcode
Or to build directly using Make:
cmake -B build
cd build
make
- This project uses JUCE for audio setup and Metal interop.
- Metal is used directly via metal-cpp, Apple's official C++ bindings for Metal.
- Currently tested only on Apple Silicon (MacBook Air M4).
- Check out here VST3 Plugin to use in DAW.