Sunday 19 July 2015

A surprise from history!

In my last blog post I mentioned PanEcho, a Max For Live plug-in that I wrote back in 2011, but I didn't check my page on to make sure that PanEcho was there...

You can guess what I found when I did check! Yep, it turns out that PanEcho was one of those bits of  programming that never made it into the real world, and had been sitting in my 'dev' area, gathering dust...

So, rather than simply rework it into a more modern context, I tried it out 'as is', and discovered that the stylistic changes over the last 4 years are interesting (tighter spacing of controls, different layout of Left/Right channels, more graphics to indicate status of LFOs, more technical detail, no abstractions, etc...), but that the jump back in time was actually informative, and it was still a usable effect! So I've now uploaded PanEcho to so that it can be tried out by a wider audience!

PanEcho isn't a completely conventional echo effect. There are two independent stereo delay sections, each with feedback (in the same channel) and cross-feedback (to the other channel L->R, R->L), and then there is a master feedback and cross-feedback around both delays. You can also swap the channel outputs for the first stereo delay if you want, by using the 'Normal/Swap' button. With all of this channel flexibility and feedback, things can get complex, so there are indicators which light up 'red' when the controls exceed 100% and you get an indication of when runaway is going to happen. At this stage I didn't include a limiter in the output section of my plug-ins, and so if the feedback does get out of control, then you can get some loud outputs.

Inside the delay sections, there are stereo chorus/pitch-shift effects, so that the echoes have a bit of variation. There are several ways to do this - the most obvious being that you modulate the delay time slightly... But here I added the chorus/pitch-shift as a separate effect, partly because it allows you a bit more flexibility and it removes the need for a separate depth control.

The pan section shows how much things have moved on over time. The controls don't exactly make using the LFO-driven panner easy to use! Actually there are two LFOs: one modulates the frequency of the other, and you get separate control over the pan position (Phase) and the depth of auto-pannng (Depth). The 'Mode' button alters how the panning happens, and the 'No-Pan/Pan' button isn't exactly obvious at first sight. In my more recent plug-ins, I've changed the layout, controls and indicators for the output panning considerably, so this bit is very much a trip into history.

Download PanEcho from


Whilst I was preparing the screen shot (above) for maxforlive (and here), I wondered what it would look like inverted. I've been gradually moving over the the fashionable 'dark' look that M4L plug-ins seem to get these days, and these have a light on dark background look, plus a blue highlight colour. I'm not sure what my intention was - I just thought I'd try it out and see what it looked like. (Many of my best discoveries come from simple 'what if' explorations, so I tend to do it a lot!) What I got surprised me:

Surprised? I was! It turns out that the basic 'dark' look is a modified version of a simple inversion of the original default Ableton colour scheme. Inverting the image turns a 2011 'early M4L' plug-in into something that appears much more up-to-date, way more appealing in some ways, and the layout looks okay as well. Possibly the easiest and most stunning makeover I've seen in quite a while...

As an experiment, I'm going to add both versions onto and see which one is more popular...

Related articles

Monday 13 July 2015

Random Echoes

Sometimes ideas for audio effects seem great conceptually, but the actual result doesn't match up to those expectations. Comber 3 added random modulation to my MaxForLive Comber phase shifter, but it didn't sound quite as awesome as I had imagined.

Persistence can pay off, though. So I added random modulation to my PanEcho M4L effect, using the built-in 'M4L.vdelay~' glitchless delay module. The 'M4L.vdelay~' is good for messing about with modulation because it tends to be stable even if you are changing the delay time quite rapidly, which was going to be useful when using filtered noise as the modulation source. Here's what Rnd_Echo looks like:

Notice that I wasn't sure how to indicate that the modulation source was random, so I just added random dots to the background of the modulation section. I think it works quite well as a visual cue.

Surprisingly, the result is better than the random phasing, but still not exactly what I expected. Adding random delay times to audio echoes is difficult to describe - almost like smearing the sound out. But it is very usable, and quite unusual - it isn't the sort of sound that you hear and immediately know what is producing it, which is always good in my book.

Control-wise, there's a lot of commonality with many of my recent releases, although I've experimented here with moving things around to see if that makes things more intuitive. The 'noisy' modulation panels have two controls for the randomness - use L to control the basic rate of change, and H to control the jitteriness. The Mod control sets the depth of modulation, with an indicator light for when the delay line is at minimum delay. The two delay panels let you set the Delay time (increase this when the mod light keeps lighting up), the Sync, and the feedback, which can be to the other channel, or inside the channel. The Pan panel lets you move each delay line in the stereo image (but not randomly - yet!) and I've added a horizontal 'pan position' indication. Finally, the 'Limiter' button is left over from the Comber effect, and I've kept it because it can be useful when the feedback gets too high.

As always, Rnd_Echo is available for download from the website. Enjoy.