AudioDice - Randomizer Host

Hi everyone,

I’m pleased to introduce AudioDice, a specialized plugin host designed specifically for controlled randomization of third-party plugin parameters.

I have developed this tool, using JUCE, out of a need for a randomization engine that could handle thousands of parameters without compromising the stability of the host DAW. So the main focus was on creating a predictable, stable environment for creative chaos. No vibe coding used!

Key Technical Features:

  • Deep Randomization: Control the randomization width (±100%) and range for individual parameters or entire plugin states, even those with thousands of exposed parameters.
  • Refined Plugin Scanning: Using background threads and out-of-process scanning ensures stable plugin scanning, while also retaining the option to load plugins manually.
  • Robust Undo/Redo: Essential for any randomization workflow. Every “roll of the dice” is tracked, allowing you to iterate quickly without fear of losing a “happy accident.”
  • Knob Mode: A streamlined workflow for parameter selection. In this mode, you simply move a control on the hosted plugin’s UI to instantly enable it for randomization.
  • Dual Operating Modes: Available in both FX and Instrument configurations to sit correctly within any signal chain in any DAW.
  • State Management: Full support for loading/saving your favorite randomized states.

AudioDice is currently available for free. No strings attached.

You can download it and find more technical details at:
www.sounddevelopment.nl

We are eager to hear feedback from the developer community, especially regarding the hosting implementation and performance across different DAWs.

Best regards,

Sound Development, Marcel Huibers

6 Likes

Nice work, thanks for sharing!

May I suggest adding a few more randomizer algorithms :wink: :

  • Blue noise, the new random number is chosen as far away from the last one as possible in N attempts. Here’s a C++ class I have written for that bluenoise.hxx · GitHub
  • Logistic map chaos with different values for the r parameter from the more chaotic regions Logistic map - Wikipedia
  • Golden ratio based numbers. These wouldn’t pass any serious statistical tests but perceptually for something like audio parameter setting/modulation they could effectively work like random numbers.(1)

For most effective use, I suppose these would require having the random generator states for each plugin parameter, instead of using a shared random generator for all. (I don’t know if you’ve already done something like that.)

(1) Python code for the Golden ratio generator :

# seed in range 0.0 - 1.0
def gr_rng(seed: float):
    gr = (math.sqrt(5) + 1) / 2
    while True:
        # python happily does floating point with %, fmod would be used in c(++)
        y = (seed + gr) % 1.0
        seed = y
        yield y
1 Like

That’s a great idea!