Thursday, July 2, 2009

On Additive Synthesis

In working a great deal with additive synthesis, I have discovered why I believe that additive synthesis is ineffective based on a flawed premise.

First, let me explain that I have the mathematical background to understand the mathematical basis for additive synthesis so this is coming as much from a technical standpoint as a musical one.

The basis of additive synthesis and what is often called the "frequency domain" of sound is based on a mathematical idea called the fourier transform:

http://en.wikipedia.org/wiki/Fourier_transform

The basic idea of this transform is that an periodic waveform can be broken down into two infinite series of sin waves (or as they are called in acoustics) overtones each a multiple higher than the fundamental (the pitch that is heard). Each of the two series are seperated by 90 degrees. Some times this same idea can be expressed as a single series with each sin wave having a different phase. Synthesizers like Absynth use this principle.

There is a variation on this idea in the form of an algorhthm which is easily made into a computer program called the FFT or fast fourier transoform.

Now this idea works fine for a static waveform. However, without going into the boring mathematical detail, it does not work if the timbre changes which makes up just about every sound you find in the natural world. In fact, with a bit of thought, its not difficult to realize that determining the frequency of a waveform and its breakdown into frequencies are tradeoffs. As time periods get shorter either the frequency or the positioning of a sonic event in time become blurry (to use a visual analogy). This is why sonograms are blurry.

So to fix the problem the programer of an additive synthesizer uses what are called windows. These determining a fixed set of harmonics at a given point in time and then, much like connect the dots, the harmonics are joined by a curve that interpolates (guesses) the value between them. No problems right? Well, not really. There is a fine art to this because harmonics come in and drop out. It works well for the sustained part of a sound but not for the transient which is why some synthesizers (one in particular that I can't think of at the moment from Akai I believe) used a form of additive synthesis for the sustained part of a note but samples for the transient.

Tlo avoid making this post any longer than it is, this is the basis of the problem.

2 comments:

Andy Bridle said...

Agreed, but take a look at AdsynDX (http://andybridle.co.uk/adsyn.aspx). This uses a FFT, with the trade-offs you identify, but uses time-domain amplitude envelopes on the result. It can make a fair stab at resynthesis.

Vested interest - it's my program!

Lux_Seeker said...

Your wise to add time domain filters but in the end, does not that just end up getting you back to a subtractive model in the end?

There have been a few other methods in the past. Wave sequencing is one and while you can't re-synthesize, it sounds more dynamic. I have the software version of the Wavestation and while it might just be crossfading waveforms, I have experienced on a practical level its not all that different.

FM synthesis was of course the early was of creating dynamic partials.

A very smart synthesizer was the Kawai K-5000 which used samples for the transient and then additive synthesis for the sustain and release.

So there are ways of getting dynamic expression that don't involved morphing and additive synthesis.

Another promising type of synthesis is physical modelling. I don't see any fundamental flaws involved. Sure, the models may not be perfect but they are dynamic, they can sound close enough to the real thing to be muscially useful and they can also sound other worldly by using parameters that don't exist in real instruments.

Best of luck with your endeavors in the world of addtive synthesis. I certainly don't wan't to discourage yuo but all I am saying si that I have been down that road, all the way down it, and in the end, I just don't see much promise there. The fundamental flaw I mention is a real big on and cripples the method at a very fundamental level. To me, additive synthesis is a parlor trick, its sonic slight of hand and I just don't see a whole lot of promise in it but perhaps you can find a way to make it work.