I needed some noise, and whilst there are many ways to create noise of various colours, none of them quite met my need (I wanted '11' and the noise I got only went up to '10'!). Instead of exploring the available resources further, I decided to think about my ideal noise source...
In the past, I've been guilty of using the very predictable 'noise with LFO'd filtering' patches that are often used to make surf and train noises. In my defence, whilst some of the synths in question were obvious examples like a MiniMoog and 'white-top' ARP Odyssey, I've also done much the same on slightly more unusual examples like the Oberheim OB-1, Synton Syrinx, Korg PS-3300, even a Yamaha GX-1 (I also repaired it) and others. But enough of the past...
Adding a phaser and some panning and you get a pretty versatile surf, wind, rain generator. As with Comber V0.3, I had the intention to make some sort of complex multi-filter section, and maybe add this to the phaser in Comber.
But then I stumbled upon fffb~ in a quiet backwater of the Max Help pages, and I realised that with a bit of tweaking, it could make a pretty useful dynamic filter bank. The Max Help pages tauntingly say: 'This object is more efficient than using a number of reson~ objects, but for the sake of speed does not accept signals for parameter changes.'. Well that was it, it looked like I'd found my versatile filter and I just needed to find a way round the control limitation.
fffb~ is quite a monster of a filter. You get 8 resonant filters by default, but you can go up to 50 if you want to, and I decided that 16 was probably enough for a first attempt. You can control the centre frequency of the lowest frequency filter (F in the diagram above), and then the spacing between the other filters as you go along the frequency axis (I've called this 'Spread', S in the diagram above). The Q of the filters is global, but still a useful control, and the F, S and Q all duly got separate LFOs to control them. The individual Gains (G) of each filter can be set individually - so I used a conventional multi-slider controller for that. Although you can't drive everything directly with signals, you can update the parameters in real-time, and this has much the same effect.
The Q control has some problems at low values, and whilst the jerkiness that this produces in the output audio can surprise you the first time, it can also be used to provide exactly the sort of chaotic uncertainty that you get with wind sounds. There's a red indicator to warn you as you go into this mode.
The Spread control is best left near the middle (= '1') at first. This keeps the filter stable - and NOTE the 'Reset' button for when things get out of control!
Because two noise sources are better for doing wind and rain, or surf and wind, or rustling leaves and howling wind, then I doubled everything, and added LFO-modulated panning too (that's 8 LFOs in total). There are colour-coded White/Pink noise selection buttons as well.
The three LFOs provide lots of control over the filtering, and you can make lots of wind, rain and surf effects - use a phaser after it ini the chain for better surf sounds. I recommend that you use the excellent built-in 'Spectrum' display to see the output of the filter, and turn it off when you don't need it to save processing power. I've included the Spectrum display in the screenshot below as a 'serving suggestion'.
So that's the mundanely named 'Noise Generator mr 0v01'. As usual, you can download it for free from MaxForLive.com. Enjoy!
Related articles
Monday, 12 January 2015
Refined Combing...
Things don't always go the way you intend. I had an idea for a phaser effect that was driven from a filtered noise source, and the end result was something rather different. Here's the story...
'Phasers' are just comb filters where the notch frequencies are modulated up and down in frequency by an LFO. (My previous Comber effect was nothing more than a few of these in one place.)
The audible effect for typical 'vibrato/tremolo' LFO rates sounds a bit like detuned oscillators, and so can be used as a simple 'chorus' effect (there are other ways of doing chorus effects as well). At slow LFO rates then the effect is more like several resonant filters sweeping up and down, which is exactly what is going on!
But whilst sine wave shaped LFOs are all very nice, there are many other possible alternative waveforms, and repetition can get a bit boring. So my idea was to got most of the way to the opposite extreme from the pure predictability of a boring sine wave and use noise instead. Filtered noise seemed like the right thing, and so I envisaged an array of resonant high-pass, band-pass and low-pass filters, and perhaps some sort of neat GUI control to create a final 'noisy' modulation for the comb filter.
Unfortunately, the end result was not as interesting as I hoped. High-pass filtered noise just gave a rapid tremolo effect, and not a particularly nice or useful one. Band-pass filtered noise was still too busy. The only really useful noise was heavily low-pass filtered noise, containing exactly the sort of frequencies that you would use for tremolo, vibrato or a phaser! After a bit of experimentation, it turned out that I didn't need any conventional filtering at all, and that just a bit of sample averaging (OK, primitive filtering) produced nice random wobbling that sounded ok - but it wasn't anywhere near as impressive as I'd been hoping.
So I wondered if something combining the LFO and the noise was a better idea, and I added a DJ cross-fade type control to mix between the LFO sine wave and the noise waveform. This seemed to liven up the result and make it a bit more interesting and unpredictable...
Related articles
'Phasers' are just comb filters where the notch frequencies are modulated up and down in frequency by an LFO. (My previous Comber effect was nothing more than a few of these in one place.)
The audible effect for typical 'vibrato/tremolo' LFO rates sounds a bit like detuned oscillators, and so can be used as a simple 'chorus' effect (there are other ways of doing chorus effects as well). At slow LFO rates then the effect is more like several resonant filters sweeping up and down, which is exactly what is going on!
But whilst sine wave shaped LFOs are all very nice, there are many other possible alternative waveforms, and repetition can get a bit boring. So my idea was to got most of the way to the opposite extreme from the pure predictability of a boring sine wave and use noise instead. Filtered noise seemed like the right thing, and so I envisaged an array of resonant high-pass, band-pass and low-pass filters, and perhaps some sort of neat GUI control to create a final 'noisy' modulation for the comb filter.
Unfortunately, the end result was not as interesting as I hoped. High-pass filtered noise just gave a rapid tremolo effect, and not a particularly nice or useful one. Band-pass filtered noise was still too busy. The only really useful noise was heavily low-pass filtered noise, containing exactly the sort of frequencies that you would use for tremolo, vibrato or a phaser! After a bit of experimentation, it turned out that I didn't need any conventional filtering at all, and that just a bit of sample averaging (OK, primitive filtering) produced nice random wobbling that sounded ok - but it wasn't anywhere near as impressive as I'd been hoping.
So I wondered if something combining the LFO and the noise was a better idea, and I added a DJ cross-fade type control to mix between the LFO sine wave and the noise waveform. This seemed to liven up the result and make it a bit more interesting and unpredictable...
But then I realised that I had an alternative source of variation, and so I added a second LFO to drive a Sample/Hold circuit that sampled the original sine wave LFO. Sample/Hold circuits have always fascinated me, right from the days when you put high-input impedance op-amps on Teflon PCBs with polycarbonate capacitors and used reed-relays as input sampling switches, all in the analogue quest for long-term voltage storage (and you still got droop over time!). In the digital domain, things are different (and you add imperfections if you want to model the real world) and so a quick bit of M4L'ing later, I had an LFO with sine waves for high sample rates, and repeated complex patterns for lower sample rates. (The S/H samples when the indicator lights up yellow, btw.)
The DJ slider became a 'Randomness' control, and I added a red indicator to provide visual feedback for when the 'Freq' and 'Depth' controls needed to be adjusted (up and down respectively), and Comber V0.3 was born! I hope you find it a more versatile and inspirational effect for your music.
Comber V0.3 is available, as always, for download from MaxForLive.com.
Related articles
Labels:
Ableton Live,
Audio effect,
Comb filter,
Controlled Randomness,
Filtered Noise,
LFO,
S/H,
Sample/Hold,
Sine wave
Monday, 8 September 2014
Waveshaping with a wavetable
Having tested a simple waveshaper with Squarer, I wondered if I could take the audio processing part and add it to the Wavetable Creator and make a more flexible wave-shaping utility. As it turned out, doing this went a lot faster than I expected and I rapidly had it working. So please welcome ShaveWapery 0v04.
ShaveWapery uses the same user interface as Wavetable Creator, but changed to the more fashionable 'dark' look, and using my standard lilac as the key color (there's now no chance of mixing the two utilities up!). You choose source waveforms from the on/off boxes at the top, set their amplitude and other parameters, and then press the 'Generate' button. The resulting waveshape appears in the box on the left and its spectrum is displayed underneath. But instead of just allowing you to export the wavetable, in ShaveWapery, it immediately becomes available as a transfer function for a waveshaper.
As always with transfer functions, starting off with a linear input/output relationship is always a good idea. In this case, a sawtooth produces a linear transfer function:
and any audio should pass through mostly unaffected. Moving the 'Sharpen' control anti-clockwise should give a very similar 'squaring' of the sound to Squarer. And unlike the 'Saturator' built-in effect in Live, ShaveWapery allows you to add randomness to the transfer function:
which can produce some very interesting effects that are noise-like but also structured. There is an enormous range of things to try here, so explore away. As with all such waveform-based processing, if you input monophonic audio, then you will get monophonic output, but if you input polyphonic audio, then you will get distortion. I did thinking about calling this the Intermodulator, but I prefer ShaveWapery!
I'm currently working on improving the user interface - I'm not happy with the 'Generate' button, for instance. But this is just the first iteration.
As usual, ShaveWapery can be downloaded from MaxForLive.com .
ShaveWapery uses the same user interface as Wavetable Creator, but changed to the more fashionable 'dark' look, and using my standard lilac as the key color (there's now no chance of mixing the two utilities up!). You choose source waveforms from the on/off boxes at the top, set their amplitude and other parameters, and then press the 'Generate' button. The resulting waveshape appears in the box on the left and its spectrum is displayed underneath. But instead of just allowing you to export the wavetable, in ShaveWapery, it immediately becomes available as a transfer function for a waveshaper.
As always with transfer functions, starting off with a linear input/output relationship is always a good idea. In this case, a sawtooth produces a linear transfer function:
I'm currently working on improving the user interface - I'm not happy with the 'Generate' button, for instance. But this is just the first iteration.
As usual, ShaveWapery can be downloaded from MaxForLive.com .
Sunday, 7 September 2014
Square Power!
Dopplator, the audio effects M4L device that I featured in the last blog, takes its sine-wave shape processing from an older Wavetable tool, and I've been playing with the Max For Live 'pow~' object quite a lot. By changing the exponent of the power law, you can do simple waveshaping, which is good for LFO applications, but I wanted to try using it for more direct audio processing.
I really like Ableton Live's 'Saturator' effect. It's a powerful way to add extra harmonics to sounds, but I'm not a huge fan of the way that you control the transfer function. So I've taken the 'pow~' function and used it as a simple transfer function to give a 'single-control' harmonics adding device, by using the power law function to 'square' the incoming audio. Compression at the waveform level is one way of thinking about it, although this has the side effect of causing distortion if the input contains more than one set of harmonically related frequencies. But distortion is often useful as well, and this is only a first trial run at an audio waveshaper.
Using an M4L object like 'pow~' on an audio signal isn't quite as straightforward as it appears. 'Pow~' only accepts positive inputs, and so you need to split the audio signal into the positive half and the negative half, and then invert the negative half, then do the processing, reverse the inverted half, and put the two halves back together again. So there's lots of processing around the 'pow~' object, just to enable it to get the right audio signals. Waveshapers can also be very sensitive to input levels, and so I've chosen to restrict the exponent to values less than 1 - higher than 1 and the curve acts like an expander, which increases the sensitivity to input level.
So, Squarer has a single control, which passes the audio waveform through mostly unchanged for a setting of 0%, and adds even harmonics as the percentage increases, with 100% just on the point of instability. If you take a sine wave and look at the output of Squarer with the M4L 'Scope' device, then as you increase the percentage , the waveform changes shape just like the Dopplator LFO control waveform.
And if you play more than one note, then you get intermodulation distortion... (This is why my preference is to put waveshaping just after the VCOs in a synthesizer, where you only get 'one note' at once.)
Squarer can be downloaded from MaxForLive.com , as usual. I know it is very simple, but you may find it useful, and who knows where it will lead me to next...
I really like Ableton Live's 'Saturator' effect. It's a powerful way to add extra harmonics to sounds, but I'm not a huge fan of the way that you control the transfer function. So I've taken the 'pow~' function and used it as a simple transfer function to give a 'single-control' harmonics adding device, by using the power law function to 'square' the incoming audio. Compression at the waveform level is one way of thinking about it, although this has the side effect of causing distortion if the input contains more than one set of harmonically related frequencies. But distortion is often useful as well, and this is only a first trial run at an audio waveshaper.
Using an M4L object like 'pow~' on an audio signal isn't quite as straightforward as it appears. 'Pow~' only accepts positive inputs, and so you need to split the audio signal into the positive half and the negative half, and then invert the negative half, then do the processing, reverse the inverted half, and put the two halves back together again. So there's lots of processing around the 'pow~' object, just to enable it to get the right audio signals. Waveshapers can also be very sensitive to input levels, and so I've chosen to restrict the exponent to values less than 1 - higher than 1 and the curve acts like an expander, which increases the sensitivity to input level.
So, Squarer has a single control, which passes the audio waveform through mostly unchanged for a setting of 0%, and adds even harmonics as the percentage increases, with 100% just on the point of instability. If you take a sine wave and look at the output of Squarer with the M4L 'Scope' device, then as you increase the percentage , the waveform changes shape just like the Dopplator LFO control waveform.
And if you play more than one note, then you get intermodulation distortion... (This is why my preference is to put waveshaping just after the VCOs in a synthesizer, where you only get 'one note' at once.)
Squarer can be downloaded from MaxForLive.com , as usual. I know it is very simple, but you may find it useful, and who knows where it will lead me to next...
Labels:
Ableton Live,
Audio signal,
Max for Live,
Sine wave,
Sound effect,
Waveshaper
Sunday, 3 August 2014
Glitches in time...
Right from the first releases some years ago, I've always liked Korg's Electribe series of sequencer-based hardware modules or 'grooveboxes'. In these increasingly virtualised times, I'm not surprised that there's an Electribe for the iPad, although I do have a great weakness for physical controllers. (and there are a few projects coming up along these lines...)
One of my favourite tricks on the Electribe is to turn the delay depth all the way up, and then to turn the delay time knob anti-clockwise so that the delay line starts to feed-back, and then to 'ride' the delay time rhythmically whilst dipping the delay depth to stop the feedback going unstable. It's a kind of dopplery, fluttery, accelerando, decelerando effect that is very effective on drums, and the technique has been widely used in lots of contexts, and it set me thinking about using multiple controls simultaneously. (The series of blog articles on Limiting is really about how you 'condense' several controls into one.) You can do this type of feedback, flutter echo stuff on most delay line devices, of course...
The 'doppler flutter' effect (for want of a better name) is a perfect example of using two controls at once to achieve a single effect, and it requires one control to be increased whilst the other is decreased, and vice-versa. Doing this in Max For Live took me longer than I expected because I quickly realised that when I moved the controls, I was not doing simple linear rotations with abrupt stops, nor was I doing the eased sine movements that I have been using for almost all of my LFO-driven effects so far. No, I was listening to the resulting sound and modifying the control knob movement in response, and so it seemed like the rate of change of rotation was a major contributor to the final sound. A bit of experimentation quickly showed that this was the case, and so I re-used the power-law sine shaper from the Wavetable Creator to give me a variable shape of LFO control pulse for the two oppositely driven controls.
The results are very interesting. The 'Shape' control provides very detailed control over the shape of the LFO control pulse that peaks the delay depth/feedback and dips the delay time, and yet minor changes to the way that the controls change can have very marked effects on the resulting rhyhmic patterns. When I analysed this a bit deeper, then it became obvious that having the controls inside the delay feedback loop was going to affect the sound considerably.
To emulate the 'riding' of a human being tweaking controls, I added a conventional 'Swing' timing control, and this works very nicely with the 'Shape' control. Separate depth controls for the feedback delay time and the left and right inputs provided very strong delay-based stereo imaging as a bonus.
And so Dopplator was born. In sync mode, a simple bassline or drum pattern can be glitched very nicely with a wide variety of rhythmic echo-based additions, whilst in the free-run mode then the arthythmic variations can be long and complex. All from a very small number of controls... The process of exploring the options has resulted in an effect which has moved on considerably from the source of the inspiration, so this is different to the 'doppler flutter' effect in my Electribe S, but it is an interesting addition to the genre!
As always, Dopplator is available from the maxforlive.com website. Enjoy!
Audio demos:
Labels:
Ableton Live,
Drum machine,
Electribe,
iPad,
LFO,
Low-frequency oscillation,
Sound effect
Sunday, 6 July 2014
Limiting inspiration...
Sometimes the spark of an idea can come from a chance comment, and can tip your mind into thinking about something from a different viewpoint. One of the comments on Maxforlive.com for one of my comb-filter-based audio effects set me thinking, because it warned against using limiting because it could change the sound...
Now changing the sound is what audio effects are all about, and every time that I think there isn't any room for anything even remotely new, then up pops something that you hadn't considered before. So after a run of filter-based audio effects, I now had a nagging suspicion that there must be something that hadn't been explored with limiting (or its cousins, compression and expansion, and the evil twin, noise gating). Which is when a crazy idea popped into my head, and resulted in a series of limiter-based effects that reaches its natural conclusion in SyncLimiter.
It is often said that there is nothing new. So I'm cautious about suggesting that this might be new, so I will caveat this with 'new to me'. I've never seen anything that deliberately mis-uses limiting with LFOs setting the threshold, but then I'm a very conventional user of limiters (as in keeping something with lots of time-varying gain stable, as in a swept comb filter) and so I may well merely be revealing my blinkered knowledge.
So with all that out of the way, I present SyncLimiter, an audio effect that has two independent limiters whose thresholds and compression ratios can be modulated by sample-and-hold captured sine waveforms from two independent synch-able LFOs.
I've chosen the 'mirror' look for the UI, so the left and right hand sets of controls are reflected in the vertical axis. The first control to reach is the 'Limiter' control, which is just a lift from previous projects, and which does a complex mapping of threshold and ratio to give a single control that 'feels' right to me. At zero, there's only a slight effect, whilst at 100 there is maybe just a bit too much effect on the sound, and so the place to start is at a setting of about 50. (This is the default). After that, the 'LFO Depth' controls how much the LFO affects the Limiting, and the overall modulation is shown in the dark grey indicator. The 'S&H Freq' control alters the rate at which the LFO sine waveform is sampled (and held), and so at high frequencies (10 Hz) it has little effect, whilst at lower frequencies it chops the sine wave into a 'stepped' waveform. There's lots of scope for exploration here, with the relative ratios between the four frequencies, resulting in a wide variety of stereo changes to the sound. Some of the changes are subtle, others less so.
SyncLimiter works well on drums and rhythmic material like choppy comping. You may even like the way that it can muddle up pads, but using it on vocals is probably limited in its appeal. And actually, there are no rules - and any that you are given are probably interesting to try breaking. I'd be very interested to see in what ways this is mis-used!
I also apologise here to anyone who is offended by this flagrant exploitation of limiting, and I also have to warn users that there may be clicks present in the output of this effect, despite my best efforts with Max's 'line'. This is a dirty and crude effect - you have been warned!
As usual, SyncLimiter can be found at Maxforlive.com (One of these days I hope to make something different enough to get onto the Ableton 'Friday' blog entries!)
Now changing the sound is what audio effects are all about, and every time that I think there isn't any room for anything even remotely new, then up pops something that you hadn't considered before. So after a run of filter-based audio effects, I now had a nagging suspicion that there must be something that hadn't been explored with limiting (or its cousins, compression and expansion, and the evil twin, noise gating). Which is when a crazy idea popped into my head, and resulted in a series of limiter-based effects that reaches its natural conclusion in SyncLimiter.
It is often said that there is nothing new. So I'm cautious about suggesting that this might be new, so I will caveat this with 'new to me'. I've never seen anything that deliberately mis-uses limiting with LFOs setting the threshold, but then I'm a very conventional user of limiters (as in keeping something with lots of time-varying gain stable, as in a swept comb filter) and so I may well merely be revealing my blinkered knowledge.
So with all that out of the way, I present SyncLimiter, an audio effect that has two independent limiters whose thresholds and compression ratios can be modulated by sample-and-hold captured sine waveforms from two independent synch-able LFOs.
I've chosen the 'mirror' look for the UI, so the left and right hand sets of controls are reflected in the vertical axis. The first control to reach is the 'Limiter' control, which is just a lift from previous projects, and which does a complex mapping of threshold and ratio to give a single control that 'feels' right to me. At zero, there's only a slight effect, whilst at 100 there is maybe just a bit too much effect on the sound, and so the place to start is at a setting of about 50. (This is the default). After that, the 'LFO Depth' controls how much the LFO affects the Limiting, and the overall modulation is shown in the dark grey indicator. The 'S&H Freq' control alters the rate at which the LFO sine waveform is sampled (and held), and so at high frequencies (10 Hz) it has little effect, whilst at lower frequencies it chops the sine wave into a 'stepped' waveform. There's lots of scope for exploration here, with the relative ratios between the four frequencies, resulting in a wide variety of stereo changes to the sound. Some of the changes are subtle, others less so.
SyncLimiter works well on drums and rhythmic material like choppy comping. You may even like the way that it can muddle up pads, but using it on vocals is probably limited in its appeal. And actually, there are no rules - and any that you are given are probably interesting to try breaking. I'd be very interested to see in what ways this is mis-used!
I also apologise here to anyone who is offended by this flagrant exploitation of limiting, and I also have to warn users that there may be clicks present in the output of this effect, despite my best efforts with Max's 'line'. This is a dirty and crude effect - you have been warned!
As usual, SyncLimiter can be found at Maxforlive.com (One of these days I hope to make something different enough to get onto the Ableton 'Friday' blog entries!)
Labels:
Ableton,
Ableton Live,
Dynamics,
LFO,
LFO Depth,
Limiting,
Low-frequency oscillation,
Sine wave
Sunday, 23 March 2014
Wavetables as sound effect sources
I've always been a fan of wavetables. The direct relationship between a block of memory holding waveform information and the resulting sound is useful in lots of ways, particularly if you go beyond the basic 'linear read'.
Previously, I've released some of my early experimentation in M4L with wavetables, and the latest revision is now available: Wavetable Sound Effects 0v04. (from Maxforlive.com) Compared to the previous versions, there are more wavetables, more control over the scanning through the table, and a better user interface that makes it very clear where the LFOs are and what they do. Each wavetable is just 2 seconds in length, but the sound making possibilities are much wider than this might suggest.
As usual with most devices, start off by turning the LFO modulation levels down to zero. In this case there are three: Vibrato for frequency modulation, Rangato (range-ato) for the modulation of the range of table scanning, and Timbrato (timbre-ato) for the modulation of the centre of the table scan. Once you are familiar with the basic operation, then you can return to the LFO modulation and explore how it affects the sound.
Basic operation centres around the main controls, which are in the dark backgrounded area. The Table selection chooses between ten very different sets of audio files (hand-crafted from scratch in Audacity). The Start and Finish controls adjust the region of the wavetable that will be scanned and turned into audio, and the triangle sets the centre of the region - if the white area is outside of the window, then nothing happens (the limits are hard-coded), so there's no need to explore what happens if you do this.
The Freq (uency) control sets the rate at which the region is scanned and thus turned into audio, and the High/Low button on the right controls how quickly this happens. underneath the Freq control is the Shift control, which enables the output pitch to be changed independently of the scanning rate. The sound sometimes vanishes if you set the Shift control too high, so explore the left hand side of the dial first...
The Range control provides more scanning control, and the indicator bar next to it shows the total modulation being applied to the scanner.
That's about it really. Explore and enjoy!
Previously, I've released some of my early experimentation in M4L with wavetables, and the latest revision is now available: Wavetable Sound Effects 0v04. (from Maxforlive.com) Compared to the previous versions, there are more wavetables, more control over the scanning through the table, and a better user interface that makes it very clear where the LFOs are and what they do. Each wavetable is just 2 seconds in length, but the sound making possibilities are much wider than this might suggest.
As usual with most devices, start off by turning the LFO modulation levels down to zero. In this case there are three: Vibrato for frequency modulation, Rangato (range-ato) for the modulation of the range of table scanning, and Timbrato (timbre-ato) for the modulation of the centre of the table scan. Once you are familiar with the basic operation, then you can return to the LFO modulation and explore how it affects the sound.
Basic operation centres around the main controls, which are in the dark backgrounded area. The Table selection chooses between ten very different sets of audio files (hand-crafted from scratch in Audacity). The Start and Finish controls adjust the region of the wavetable that will be scanned and turned into audio, and the triangle sets the centre of the region - if the white area is outside of the window, then nothing happens (the limits are hard-coded), so there's no need to explore what happens if you do this.
The Freq (uency) control sets the rate at which the region is scanned and thus turned into audio, and the High/Low button on the right controls how quickly this happens. underneath the Freq control is the Shift control, which enables the output pitch to be changed independently of the scanning rate. The sound sometimes vanishes if you set the Shift control too high, so explore the left hand side of the dial first...
The Range control provides more scanning control, and the indicator bar next to it shows the total modulation being applied to the scanner.
That's about it really. Explore and enjoy!
Related articles
Labels:
Ableton,
Ableton Live,
M4L,
Max for Live,
Sound effect,
Wavetable,
Wavetable synthesis
Subscribe to:
Posts (Atom)





















