MIRRORZ playing backward

Hi All,

Here is a new custom plugin to test in your favorite pedalboard for players, noisist, vocalists, etc…
(sorry for my poor english)
Capture d’écran 2022-05-02 à 09.26.46

MIRRORZ (Max gen~ generated) is a nice ambiant tool I did for my proper use. Could be interesting for the community, so here it is.

Unlike other reverse delays, the TRIGGER function of MIRRORZ allows you to play backward the last chords/ melody you JUST played (not delayed), same for the LOOP function but looped.

Audio IN is permanently recorded in a 32 seconds buffer.

Control Ports:

TRIGGER : Default 0, Min 0, Max 1
LOOP : Default 0, Min 0, Max 1
DRY/WET : Default 0.5, Min 0, Max 1.
FILTER : Default 0, Min -100, Max +100
SPEED : Default 1, Min 0.5, Max 2

These control ports are knobs.
About TRIGGER and LOOP : I don’t know how to change their control port property to “trigger” to make this plugin more “Plug ’n play”. Any help appreciated…

For now you have to use two Control to CV plugins in your pedalboard, i.e.:

-Footswitch 1 (momentary ON ) → Control to CV → TRIGGER 0-1 parameter
-Footswitch 2 (momentary ON ) → Control to CV → LOOP 0-1 parameter

How it works:

  • Pressing footswitch 1 (momentary ON ) start reading audio backward from the last sampled position within the data/buffer , releasing footswitch 1 stop reading audio.

  • Pressing footswitch 2 (momentary ON ) reads audio backward from the last sampled position within the data/buffer, releasing footswitch 2 loop the buffer segment just read. Pressing footswitch 1 stop the loop (if you keep footswitch 1 pressed , it reads audio backward from the last sampled position within the data/buffer)

  • Dry/wet obvious

  • Filter 0 → -100 Low pass , 0 → 100 High pass

  • Speed 0.5 = /2 1=1 2= x2

Here are the files:

Have fun.

@moddevices team , it seems pretty stable for me, what is the procedure to push it to the Beta Store ?



Thank you so much for sharing this :slight_smile:
A little suggestion, add here a pedalboard with it (shared pedalboard) and include a audio sample :wink:


plugin is not on the store, so a pedalboard with it cant be shared.

for moving into the store, we need to setup a build that the cloud can accept.
and how that goes depends if plugin is opensource or not.
if going opensource, the easiest way is likely to fork and setup the plugin to build locally using https://github.com/moddevices/max-gen-skeleton


Ok, I did try to fork and setup the plugin to build locally, but no success, probably out of my skills…

gen_exported.cpp/h files are in the plugin folder but that’s what I see in Terminal:

Mod Skeleton jphz$ git clone https://github.com/zwaba/max-gen-skeleton.git

Cloning into ‘max-gen-skeleton’…

remote: Enumerating objects: 330, done.

remote: Total 330 (delta 0), reused 0 (delta 0), pack-reused 330

Receiving objects: 100% (330/330), 1.62 MiB | 10.06 MiB/s, done.

Resolving deltas: 100% (100/100), done.

pipoz-1:Mod Skeleton jphz$ /Volumes/SSD\ FICHIERS\ /FFFFICHIERS\ SSD\ leop/MAX\ ZW/POUR\ LE\ DWARF/Mod\ Skeleton/max-gen-skeleton/setup.sh

usage: dirname path

Missing gen_exported.cpp/h files, please copy them to the plugin folder


good point! I missed that, sorry @zwabo


Hi Filipe,

Once again without success :

I did fork the max-gen-skeleton

to my github, then clone it to build locally on my computer , and copy gen_exported.cpp and gen_exported.h into the plugin folder.

But when I run ./setup.sh , I got :

“Missing gen_exported.cpp/h files, please copy them to the plugin folder”


Could you help me ?



1 Like

not sure what to tell you, the top section of https://github.com/moddevices/max-gen-skeleton/blob/master/setup.sh is pretty clear.
it changes directory to where the script lives, and checks if the files are in the plugin folder.
cannot continue past there as it needs those files

Yes I understand the action of the setup.sh but the files are there :
Capture d’écran 2022-05-14 à 21.13.33

And here is the terminal:

Capture d’écran 2022-05-14 à 21.24.00

Problem with the second line ?? :

dirname: illegal option – b

Any idee ?

on this case you are showing, the first cd is wrong, as that is meant to be used only inside the script (so it gets into the path where the script itself, and thus the repo, resides).


ok, so which directory should I point to ?