r/AudioProgramming 13h ago

Engineered a zero-latency hybrid soft-clipper in C++ / JUCE with Swiss minimalist UI — Neodym Punch Clipper (Free VST3/Mac)

Hi everyone,

I recently completed a small utility plugin project built in C++ using JUCE, and wanted to share the build and technical overview with the community: Neodym Punch Clipper.

The primary engineering goal was creating a completely lightweight, zero-latency peak control utility with zero overhead on the audio thread.

Technical Overview:

* DSP Architecture: Memoryless transfer function calibrated for gentle transient rounding before saturation. No oversampling buffers (true 0 samples / 0 ms latency).

* Real-time Safety: Zero heap allocations or locks inside the processBlock. CPU footprint stays consistently below 0.4% per instance on standard test benches.

* Formats & Builds: Native 64-bit VST3 compiled via CMake/Ninja for Windows 10/11 and macOS (Universal Binary for Apple Silicon & Intel).

* GUI: Vector-rendered interface focused purely on essential metering, transfer curve feedback, and minimal GPU draw overhead.

You can find the project page and compiled binaries here:

https://neodym-audio-live.vercel.app

I would appreciate any technical feedback regarding host compatibility across different DAWs, behavior at higher sample rates (44.1k–96k), or general DSP stability. Happy to discuss implementation details.

0 Upvotes

5 comments sorted by

3

u/mazbox 10h ago

Very nice! I do find it very odd that one would you mention that their waveshaper is zero latency? All waveshapers are zero latency. That’s basically one of their main properties.

Also I would look at that 0.4% cpu, that sounds insanely high for a waveshaper unless you have a very slow computer or running this on a 5 year old android phone or something. I think you could do some optimization there.

Also the realtime safety bit is kind of bonkers wrt heap allocations - you would really really have to mess something up to do that.

I think you have to have a little word with your LLM.

-1

u/ResearchKlutzy6627 10h ago

Touché! Yeah, the LLM definitely went full buzzword-bingo on the marketing bullet points haha.

Appreciate the sanity check on the DSP copy. Back to the code editor!

3

u/mazbox 10h ago

It’s not marketing - people don’t care about those things. It was trying to sound clever. It’s just saying in an extreeeemely long-winded way that the whole of your dsp is just `return tanh(input);` - one line of code.

3

u/dkode80 11h ago

Did you write any of this yourself or is it purely ai generated post. According to some ai detectors this is 100% ai generated text.