Beginner questions

Thanks Mark. Is there a post somewhere that walks through the signal flow/math/logic?

I am pretty green and have been having trouble figuring out how the example module works—particularly in terms of weighting the probability.

1 Like

As I work on my library of little utilities/patches which might be of interest to others but might also be reinventing better wheels, where should I post? Is it ok to post a thread in Building even if the patches are super simple or perhaps not actually great ways to do things?

The sorts of things are pretty elementary but might be of use to other newbs.

Examples are things like:

  • what I skill a “skip gate”: that outputs one trigger for every X triggers that come in. There are two flavors. One just takes a gate and sends out a gate. The other takes a gate and signal and sends out a gate and the most recent signal value when the output is triggered.
  • spline-weighted random value generator - the patch I posted above that uses a spline to remap randomly generated values so that you can give preference to the values generated and easily customize them
  • pre-built signal routers - like railroad switches. probably not useful for old-hands but I need these so often that I found it nice to have some pre-built.

Is it ok to start topics in Building for things this simple?

1 Like

It’s pretty simple - what it does is bend the distribution curve. So instead of a straight line from 0 to 1, it bends the curve up or down. If it bends it up, more numbers come out closer to 1, and if it bends it down, more numbers come out closer to 0. If it’s straight, numbers between 0 and 1 have an equal chance of being picked.

It’s basically doing this:


The 1-x for the shape knob just reverses the way the shape knob responds. The pow(x,y) is like x^y, so x^(2^3) is one extreme and x^(2^-3) is the other extreme. x^(2^0) (when the knob is in the middle) is like x^1 which is to say what passes through is unaffected.

Yes of course! That’s what it’s there for :slight_smile:

1 Like

Thanks, Mark. It helped me understand it to run a phasor output (divided by 2pi) through that section of the module to visualize how it works.

I’ll create a topic in build in the coming week or so to carry on discussion and sharing of my uber-simple (but hopefully useful, too) probability elements.

Couple of questions in anticipation of that:

  • is there a downside to the spline method I used? It is super useful for the sort of situation I needed it for (to cluster output around a particular value while occasionally producing values in a couple of other ranges). It also seems like it might be computationally efficient since it is essentially just using a lookup table to map the random values.
  • what would be a simple non-spline method to cluster output values around a particular value? Let’s say, you wanted to predominantly generate random numbers clustered around 0.2 (while occasionally generating numbers outside that range)?
1 Like

The only downside is that if you want it to do what the knob does, it’s an inefficient way of doing it from a workflow perspective. The good thing is it’s more flexible and you can put peaks wherever you want.

Good question - probably something more for our math whizzes like @stschoen, but probably some kind of function that creates an inverted parabola shape.

1 Like

After thinking about your question and doing some research, I came up with an implementation of the Box-Muller algorithm which will generate a standard distribution (bell curve) using a given mean and standard deviation.
The patch looks like this:

Not the simplest circuit, but it was the best I could find. (Hooray for Google :cowboy_hat_face:). I posted the completed module here: Normal Distribution (Bell Curve)


Thanks, Steve. Elegant solution.

1 Like

As part of my ‘Buchaudulus’ project, I am developing some simple modules to map notes (via their CV) to randomized positions in space.

I am using APan (a clamped CV controlling the knob) for pan. I noticed that I am getting a lot of little transient clicks when the APan module is in use. Putting a slew in front of APan helps.

I am wondering if anyone else has run into a similar issue.

1 Like

Is it possible to send more then two audio channels out of Audulus (on iOS)?

1 Like

You are probably sending it some sharp transitory modulation (which would explain why slewing it helps), but it’s difficult to tell without seeing the actual patch.

Yes - use the DAC node and assign the proper channel 1-16. It won’t work to send audio through IAA to a DAW however since IAA only supports stereo out. If you have an audio interface hooked up to your iOS device that has more than 2 outputs, you can use that.

I’ll test some more with APan and come up with the simplest case that demonstrates the issue. It could be user error.

Any idea if IDAM can be setup as more than stereo? Was kind of hoping there was a clever trick to send four channels to AUM but if I could send it to the Mac via IDAM that would be an option for exploring.

1 Like

What’s IDAM? Tried googling it and not seeing anything audio-related.

IDAM is Apple’s protocol for sending audio and MIDI between Macs and iOS devices.

1 Like

What exactly are you trying to do between your iOS devices and Mac? Maybe there’s another way to accomplish the same thing.

I want to capture 4 channels of audio to disk so that the two sets of audio pairs can receive different reverb/room simulations. I don’t suppose Audulus supports Audiobus 3 (which allows apps to have multiple audio output channels). For instance Loopy can send each of its loops to separate channels in apps (such as AUM that support Audiobus 3).

It does support AB3, but unless I’m mistaken, you can’t send more than 2 channels through IAA, and there’s no AUv3 for Audulus yet.

Audulus supports both IAA and Audiobus 3, however it only offers two channels of I/O in either environment. Both Audiobus and IAA can support multiple channels so I’m hoping that Audulus will offer more than two at some point. Currently running stand-alone is the only way to get more than two channels of I/O in Audulus on iOS. Of course you could use a multi-channel audio interface on the iPad and one on the Mac.


Hi Mark,

AB3 allows for more than 2 audio channels. Both LayR Multi-Timbral (an awesome synth) and Loopy can send out multiple audio channels. I use that feature quite a bit. If Taylor isn’t aware of this, it might be something not too difficult to add.

Has anyone created a module that takes a mono audio input and lets you position the audio in quad so that if you take a knob from 0 to 1, it will move the sound so that it starts at output 1 when the knob is at 0 and travels across the speakers till it finally comes back to output 1 (from output 4) when the knob is full up?

1 Like

You could use the crossfade you mentioned here and just make it have 5 inputs instead of 4, with 1 being connected to the first and last inputs.

Having a hard time visualizing your module though - are you talking about a single audio input and you fade it to one of 4 outputs?