Skip to content

🎸 L4 Plugin Examples

Complete, production-ready L4 plugin examples demonstrating the full stack.

📦 Examples

1. L4 Compressor (compressor/)

Dynamic range compressor with: - Threshold, ratio, attack, release, makeup - Real-time level metering - Parameter automation - Preset management

Features: - ✅ L3 engine integration - ✅ Auto parameter generation - ✅ Single-window UI - ✅ Smooth bypass - ✅ State persistence

2. L4 Reverb (reverb/) [Placeholder]

Algorithmic reverb with: - Room size, damping, width - Pre-delay, wet/dry mix - Early reflections

3. L4 EQ (eq/) [Placeholder]

3-band parametric EQ with: - Low, mid, high bands - Frequency, gain, Q - Visual frequency response

🚀 Building

cd tests
mkdir build && cd build
cmake .. -DCMAKE_BUILD_TYPE=Release
cmake --build .
./test_l4_examples

📚 Usage

#include "compressor/L4Compressor.hpp"

// Create plugin
L4Compressor compressor;

// Prepare
compressor.prepareToPlay(44100.0, 512);

// Set parameters
compressor.setParameter("threshold", -15.0f);
compressor.setParameter("ratio", 6.0f);

// Process
compressor.processBlock(input, output, 2, 512);

// UI
auto* ui = compressor.getUI();
ui->show();

🎯 Architecture

L4 Plugin
  ├─ L3EngineIntegrator (DSP)
  ├─ AutoParameterGenerator (Parameters)
  ├─ SingleWindowUI (UI)
  ├─ SingleThreadProcessor (Processing)
  └─ StatePersistence (State)

Status: Compressor complete, Reverb/EQ planned Version: 1.0.0