Saturday, 19 December 2015

Sine3Generator

I've just published a new sound generator on the MaxForLive.com web-site. Here's the usual extended user guide...


Sine3Generator is a sound generator - and yes, I've done them before, and this is another one. Currently in a 'light' version with purple trim, I will update it to a 'dark' version over the next few weeks, and I may be unable to resist making a few tweaks too. 


This sound generator does not respond to MIDI inputs - it just sits there and makes noises continually...

What seems like a long time ago now, I wrote a series of 15 generators in 'Reaktor', and this represents a revisiting and updating of those ideas in M4L. There is lots of history to this type of stand-alone 'sound generator'. Modular synthesisers lend themselves quite well to this type of FM chaining, particularly if there are only a few VCOs... Back in the 1970s I built cascaded relaxation oscillators using injunction transistors, and discovered that frequency ability and tuning were very important, which is very apparent in some synthesisers of the time - the vernier dials on the EMS VCS3 are a good example, and the VCS3's matrix interconnection panel lends itself very well to complex chains of devices... 

More recently, Noisedrone .1 and Noisedrone2 have used Max For Live (M4L) to make sounds using cascaded chains of oscillators, and these have been popular downloads on the MaxForLive.com web-site. Another popular generator is my Noise Generator 0.4... So with 15 designs languishing on my hard drive, it seemed like a good time to blow the dust off them and try publishing them again.

The basic idea is very simple. A sine wave oscillator with LFOs that can modulate the pitch and the output is frequency modulated by another similar oscillator, which is modulated by another similar oscillator. It's a simple FM generator with a lot of controls, and a flexible output stage. The output allows mixing of three harmonically-diverse outputs: the third modulated oscillator itself ('Sine'), the ring modulated output of the third and second oscillators ('Ring') and the output of the second oscillator 'sample & hold' processed by the third oscillator, with LFO modulation of the mixing, plus LFO panning as well. 

A good way to start is to turn all the controls to the leftmost minimum position (and save this as a preset of course!), and then to select the Sine button, adjust the volume to your preference, and choose the pitch you want in Oscillator 3 (there's just a Pitch control there, so it is easy to find!). This is a good place to learn the output options: LFO modulation of volume, plus LFO panning. A lot of my M4L has similar approaches to things, so if you've seen one of my 'Pan' sections, then you will recognise the same controls across many of my devices. One variant here is that my 'usual' LFO has the ability to free-run or to sync with the Live timing, but for Sine3Generator, then you only get free running LFOs. 

Once you have the basic Oscillator 3 under your control (some ping-pong echo is very often applied to the output of this type of generator...) then there is the LFO modulation of the pitch of the oscillator to try out. 'Under control' is an interesting phrase. When I worked in a music shop we used to do listening exercises: someone would play a chord and the rest of us would say what it was, or someone would make a sound on a synth and everyone would have to recreate it from scratch. Rick Wakeman was famous for being able to set up a sound on a MiniMoog just by adjusting the knobs, and then playing it without the incremental audition/edit cycle that you often see, and of which I'm often a big user, particularly for FM synthesis. Which neatly brings me back onto the topic...

When you are comfortable with all of the controls for Oscillator 3, then you can try moving to the left and try exploring the pitch and modulation controls for Oscillator 2, then the LFO pitch modulation for that oscillator, and so on. (There's a bit of a theme here too - my devices often start in the middle and move outwards, but just to keep your awake, some of them start on the left and move to the right. Which format I use usually depends on the workflow...)

Because Oscillator 1 is at the top of a stack of FM then it can cause big changes to the oscillators underneath it, so be cautious at first with the pitch and modulation controls. If everything gets too much, then just go back to the 'all leftmost' preset that you saved and start again from Oscillator 3.

There's a lot to explore in Sine3Generator, and a lot of sounds waiting to be created. Recording the output and processing it further is thoroughly encouraged! Audacity is my editor of choice here, although mine is very customised...



(As always, my M4L stuff is a 'work in progress', so it may not be perfect (in fact, it probably won't be, because perfection is a rare thing indeed!), and early versions tend not to have very much help on controls included in the M4L. I know that this is a good thing to have, but I'm short on time an speed gets you fun things quickly, and none of my stuff is supposed to be professional, with timely support and detailed help inside. But please feel free to report bugs via the comments on MaxForLive.com, and I will try to fix them when I can find time. )


There is now also a 'dark' version...
Related articles


Sunday, 22 November 2015

ModeAudio Articles on MIDI Velocity

There are now two additional ModeAudio interviews with me available on the ModeAudio web site. This time the topic is MIDI Velocity, and there's a free MaxForLive plug-in that makes working with velocity much easier.

The articles:
The VeloView M4L plug-in MIDI effect takes MIDI Velocity messages and shows them as vertical lines in a sideways scrolling window. Simple but very effective - suddenly velocity is visible!

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 maxforlive.com 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 maxforlive.com 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 maxforlive.com

Suprisingly...

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 maxforlive.com 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 maxforlive.com website. Enjoy.

Saturday, 27 June 2015

ModeAudio Magazine articles

I've recently done four interviews for the ModeAudio online Magazine about how I explore the more unusual side of sample use, mis-use and manipulation in Ableton Live. Here's a quick index to all of the articles:

Exploring 'Found Percussion Bundle': Part 1     

Exploring 'Found Percussion Bundle': Part 2

Exploring Float's Guitar Samples: Part 1

Exploring Float's Guitar Samples: Part 2

There are accompanying blog entries here as well:

Winning was only the beginning...   

Drums - using layers in a rack...

When is a guitar not a guitar?

The DAW as synthesizer...

I'd like to thank Niall from ModeAudio for all of his support, help and enthusiasm for this project.

The DAW as synthesizer...

The fourth part of my 'playing with samples and loops' series has now been published in ModeAudio's online magazine. As always, I'm fascinated by the way that finding alternative ways to look at things is a two way process - a new loop triggers an idea, or a 'what happens if I do this?' turns into an interesting variation that opens up different possibilities. But this time, I managed to put into words something that I've been trying to express for some time - the way that modern DAWs, sequencers, host software, audio workstations, or whatever else you call them, are more than just digital tape recorders.


The blurring of the distinction between sound generation as in synthesis, and performance capture as in a recording, has been ongoing for a long time. A modern DAW now allows me to change the pitch of a synthesizer by modifying the MIDI data at its input, or by processing the audio output of the synthesizer through a frequency shifter - or both. And any of these can be captured, edited and replayed, or even added live. Effectively, the synthesis engine is the whole of the sound production chain, from sound generation, through performance capture, to live playback and interaction.

In one example in the ModeAudio article, I take a guitar-based audio loop, separate out the individual notes and stack them together, into a big, gorgeous-sounding bass synth sound. Actually, there's quite a bit more fine detail involved to do this, and this is where it gets interesting. I'd argue that the facilities that a modern DAW like Ableton Live give you to work with sound are a lot like a modular synthesizer, but with a few freedoms that modulars don't have, plus faster trying out of ideas (sometimes). The downside is that it can be just as difficult to figure out exactly what someone has done when they've stacked samples, edited them, added effects, velocity switching, and more, as it can be to work out what is happening in a modular synthesizer patch.



In the spirit of making ideas and tips more widely available (4 parts so far for ModeAudio!), then here's another one that arises from this. Why don't software modular synthesizers provide an alternative 'straightened-out' view of a patch? Instead of showing all those patch-cords linking modules, why not shorten the patch-cords, remove the detail and just show the linkages, and move the modules into a sensible order, so that you can see the generation and then the flow of the audio through the processors, and the way that the controlling modules (LFOs and Envelopes, etc.) are influencing things.



Kind of like the way that the London Underground map doesn't actually show where the lines go, but abstracts the lines so that you can understand how to get to Mornington Crescent without worrying about where it is, or how the lines bend and twist on the way. This doesn't just apply to a modular synth - it could be a complex Rack in Ableton Live as well. This type of 'abstracted view' could make it lots easier to comprehend how a sound is produced and controlled, and I'd say that that's a new feature that we should all be clamouring for! 

Why not ask your current DAW manufacturer if they are planning to do this type of view in their next release? You can always tell them I sent you!

Sunday, 21 June 2015

When is a guitar not a guitar?

One answer could be: 'When it's a sample of a guitar!' Samples, or their 'here's one I prepared earlier' cousins: loops, can be rich sources of inspiration, new sounds, and more. Previously, I talked to the nice people at ModeAudio about mis-using a percussion pack. but since then, they offered me a chance to look at another of their packs.

The ModeAudio 'Float' pack contains 'Chillwave' guitar samples and loops, and so it isn't what you might immediately associate with a synthesist like me, but exploring something 'out of your comfort zone' is often very good at nudging you into making new discoveries.

As you might expect these days, this is an idea that is also available in a formalised form on the 'Interweb': http://www.oblicard.com/ (Olique Strategies: originally a set of cards by Brian Eno and Peter Schmidt, but now available via browsers and mobile apps too.)

In my case, taking some guitar loops and playing with them yielded some very interesting results - and in many of the cases, I worked with the samples as if they were raw material for synthesis, not specifically as 'guitar' loops. As a result, I didn't do much in the way of realistic guitar sounds, but instead I found a lot of very unusual and interesting sounds. One synth bass sound, made by reverse engineering a loop and then stacking the individual notes, is a sound that I'd pay good money for - just that one sound! 

I'm increasingly aware of the lowering of the barriers between synthesis and production in modern DAWs (sequencers, host applications, whatever your favourite term is!), and my whole experience with 'Float' reinforced this view. Back in the days of analogue tape, people experimented a lot (using tiled bathrooms or big suspended metal sheets as ways of creating reverb spaces is just one example), and whilst the technology may have changed, the scope for going 'outside the box' seems to be undiminished, and if anything, better than ever. 

You can see the first part of my 'guitar sample-based synthesis in ModeAudio's magazine.