[sharing] Compressor with sidechain signal in GenExpr

tmhglnd's icon

Hi everyone!

I would like to share this mono Dynamic Range Compressor abstraction with a Softknee, Makeup-gain and a Side-chain Detection inlet. Programmed in gen~ with codebox and genexpr (as separate file included). Left inlet is the signal to be compressed, the right inlet is the signal for the side-chain. All parameters are set with messages on the left inlet or with attributes in the object. See the help-file for detailed description. The folder also contains an example patch (view the video on the gumroad page).

You can download it here (and make a small donation if you enjoy my work): https://gum.co/aBafX

Hope you enjoy it!

Screenshot of example patch

Ernest's icon

Hi, thanks for the share, and maybe I didn't do something right, but I can't download it. Also, your picture is so bit, it's difficult to reply, because the reply button is pusshed way off the page, which is why maybe nobody said anything yet.

Floating Point's icon

yeah c74 web master please fix this- if an uploaded image is too big it should be reduced in size so your interface still works

tmhglnd's icon

@Ernest, when you follow the link to my gumroad, you can download it by typing in $0, and click “i want this”. Let me know if you still run into any troubles.

And yeah, the big picture not resizing is definitely something that should be fixed, noticed it in a couple other posts/articles as well.

Ernest's icon

Thatnk you for reply, I hope to get to it in October now. In the interim, you are able to edit the picture size yourself, or at least upload a smaller one, by clicking 'edit' over your post.

Ryan Palm's icon

Very cool. Trying to figure out how to port this to a hardware dsp that can run Max/Gen~ programs, though it seems you reference a text file in the CodeBox to run the compressor algorithm. Is there an easy way to embed this reference inside of max gen so that there doesn't have to be a reference in that way?

tmhglnd's icon

Yeah, you can just remove the `require()` line, and instead copy-paste all the code from the dyn-range-comp.genexpr into the [codebox]. Make sure you past it all the way on the top (where the require was), because functions need to be defined before Params.

Ryan Palm's icon

Thanks for getting back to me. Should be pretty cool up and running in hardware on Eurorack once my Daisy Patch arrives .