LMMS Sharing Platform

Share your work with the LMMS community.

All Content      Presets      Effects      14_Point_FIR_Impulse_Convolution.xpf

by ewanpettigrew (ewanpettigrew)
Size: 68 KB
License: No Rights Reserved (CC0)
Submitted: 2026-06-28 13:18:17
Updated: 2026-06-30 06:17:28
Popularity:  18   0
Rating:    0
Name: 14_Point_FIR_Impulse_Convolution.xpf  Download
Description:

Previously, I believed that it was not possible to perform convolution within Xpressive. Here is a 14 point FIR convolution of an approximation of a unit impulse (technically a broadband noise burst in this simulation). This may not mean much at the moment, but it opens up the possibility to generate customised effects by the expression.

You will require an external or VST oscilloscope to view as the internal plot within Xpressive is not showing the full waveform. I have yet to work out why this is the case.

W1: randv(t * srate) * (t < 0.002)
O1: clamp(-1, (W1(t) * 1.0) + (W1(max(0, t - (300/srate))) * -0.6) + (W1(max(0, t - (600/srate))) * 0.4) + (W1(max(0, t - (900/srate))) * -0.5) + (W1(max(0, t - (1200/srate))) * 0.7) + (W1(max(0, t - (1500/srate))) * -0.3) + (W1(max(0, t - (1800/srate))) * 0.2) + (W1(max(0, t - (2100/srate))) * 0.4) + (W1(max(0, t - (2400/srate))) * -0.2) + (W1(max(0, t - (2700/srate))) * 0.1) + (W1(max(0, t - (3000/srate))) * -0.1) + (W1(max(0, t - (3300/srate))) * 0.05) + (W1(max(0, t - (3600/srate))) * -0.05) + (W1(max(0, t - (3900/srate))) * 0.02), 1)

For FIR time-shifting to work use explicit phase instead of integrate(f).

Comments:

No comments yet