LMMS Sharing Platform

Share your work with the LMMS community.

All Content      Presets      Misc      5-State NLTV Reverb Matrix (A1A2 Controlled).xpf

by ewanpettigrew (ewanpettigrew)
Size: 68 KB
License: No Rights Reserved (CC0)
Submitted: 2026-06-30 10:49:48
Updated: 2026-06-30 10:51:11
Popularity:  22   0
Rating:    0
Name: 5-State NLTV Reverb Matrix (A1A2 Controlled).xpf  Download
Description:

5-State NLTV Reverb Matrix (A1/A2 Controlled) Proof of Concept for Xpressive

Here I have continued to explore the possibilities of using convolution within Xpressive to create effects. This provides 5 different reverb states controlled by A1 (with decay tail controlled by A2). Only 2 to 4 taps are used in each state. However, this can be expanded.

Paste a waveform without decay into W1 such as: 0.5 * saww(t) + 0.5 * squarew(t)

Paste this formula into O1: clamp(-1, W1(t * f) + (A1 < -0.6) * (W1(max(0, t - 30/srate) * f) * -0.6 + W1(max(0, t - 60/srate) * f) * 0.5 + W1(max(0, t - 90/srate) * f) * -0.4 + W1(max(0, t - 120/srate) * f) * 0.3) + (A1 >= -0.6 & A1 < -0.2) * (W1(max(0, t - 1500/srate) * f * 2) * 0.4 + W1(max(0, t - 3000/srate) * f * 2) * 0.3 + W1(max(0, t - 4500/srate) * f * 4) * 0.2) + (A1 >= -0.2 & A1 < 0.2) * ((W1(max(0, t - 400/srate) * f) * 0.2 + W1(max(0, t - 800/srate) * f) * 0.4 + W1(max(0, t - 1200/srate) * f) * 0.6) * (t < 0.15)) + (A1 >= 0.2 & A1 < 0.6) * (clamp(-0.4, W1(max(0, t - 2000/srate) * f) * 3, 0.4) + clamp(-0.2, W1(max(0, t - 4000/srate) * f) * 3, 0.2)) + (A1 >= 0.6) * (W1(max(0, t - 4000/srate) * f) * 0.6 + W1(max(0, t - 8000/srate) * f) * 0.5 + W1(max(0, t - 12000/srate) * f) * 0.4 + W1(max(0, t - 16000/srate) * f) * 0.3), 1) * exp(-t * max(0.1, (1 - A2) * 5))

to set up the convolution matrix / reverb engine.

Comments:

No comments yet