SynthMaker

FFT vocoder

Archive · 2010 2 old posts

From the original SynthMaker forum (2004–2014), with its members’ names and dates.

unkargherth ·

Hi all

Since the iFFT module appeared in SM, I dreamed to produce a "lot of bands vocoder" with a nightmare of options in SM

But once i Put my brain to work , i find again and again, that something rotten inside my head doesn't allow me to get the conceptually correct design

THe basic idea consists on two FFT modules, one for the modulator and one for the carrier. Then do an iFFT using the phase array from the carrier and the magnitude array from the modulator. Later you can add all sorts of trick to the sound ( band/bin displacement,etc)

Is this correct ? could somebody provide a very basic working example for it ? I tried very hard and only get an horrible LF noise

TIA

MyCo ·

Let's say your carrier has 5120 samples and your modulator, too

You have to split carrier and modulator into segments of let's say 512 samples, you end up with 10 segments for carrier and 10 segments for the modulator. Then generate a FFT on every segment. Now you have 10 spectra(Array C) for carrier and 10 spectra(array M)for the modulator. Now apply the vocoder functions eg. multiply each spectrum of C with each spectrum of M and you end up with a new array. now normalize each entry of the resulting array. Generate iFFT on each element of the resulting array Connect the results together...

To avoid clicks you propably need to apply windowing functions on the segments before you do FFTs

Actually it's not so easy, especially when carrier and modulator have different lengths. And in realtime it's actually impossible because S|M doesn't support this.

Wrote something here? To have a post removed or your name hidden, write to [email protected].

Before your first post

A few rules keep this a friendly place. You agree to them once.

Shown next to what you post, here and in the app. It doesn’t have to be your real name: 3–24 lower-case letters, digits or _ (capitals become lower case, spaces become _).

    Then your post goes up straight away.

    Delete this reply?

    Open it in SynthMaker?

    It goes on the track you’re editing there, in place of that track’s sound, and into My sounds. Your other tracks stay as they are.

    Want to keep that track’s sound? Start a new song in SynthMaker first (Song › New song), then open this.

    Report this reply?

    Only the developer reads reports. The person isn’t told who reported them.

    What’s wrong with it?

    Block this person?

    You won’t see their posts and replies here any more. They aren’t told, and you can unblock them at any time.

    People you’ve blocked

    Their posts and replies are hidden from you. Unblock someone to see them again.

    The community rules

    A few rules keep this a friendly place. Everyone agrees to them once, before their first post.