f. 'em - a new FM synth from Tracktion

VST, AU, AAX, etc. plug-in Virtual Instruments discussion
RELATED
PRODUCTS
F.'em
User avatar
aMUSEd
KVRAF
33662 posts since 14 Sep, 2002 from In teh net

Post Thu Aug 11, 2022 6:53 am

KBSoundSmith wrote: Thu Aug 11, 2022 6:34 am
aMUSEd wrote: Thu Aug 04, 2022 5:28 am
kobal wrote: Thu Aug 04, 2022 5:24 am this synth is very good i don t know why you feel it s bad, maybe the Ui, sonically it s not really special or like a old yamaha sound but the possbilities can lead to plenty of great sounds
It's interesting though how most of the patches don't make use of the 11 ops - makes me wonder is it just that many are not really needed or more the level of complexity that many OPs entails is challenging for sound designers to really make full use of (which I can relate to)
It's a mix, certainly.

Often, only a few operators are needed for a patch. For most patches, 11 ops is overkill. Part of it is also philosophical -- economy of means is one of the interesting aspects of FM. Small changes yield large results, so there's an enjoyable challenge to using as little as possible to get a desired sound.

That said, the extra operators are very desirable because when you DO need them, there's no substitute for having them available -- some patches just need the extra operator to push the sound that last 5%. Sometimes it's also nice just to have something available for experimentation.

It is also true that many people have a hard time programming FM. It is, in all fairness, not as straightforward as a subtractive synth. Knowing the variety of effects achievable with different configurations of operators requires study and experimentation, and for a lot of people that is more of a time commitment than they can reasonably justify.
Yes all of that tallies with my own experiences

Toward_Star
KVRer
5 posts since 4 Sep, 2020

Post Sun Aug 14, 2022 3:47 am

This synth is strangely best in class given how little talk there is about it. I thought the GUI is amazing. Almost everything is laid out for you right in the same spot. There's just little annoyances I have that hold it back like the Q on the low and high pass filters not doing anything to the resonance, it could use some more waveforms, and especially it could use wavetable FM which I haven't been able to live without ever since phase plant. Yeah sampler operators blah blah this is just a personal preference based on my setup.

To do a filter sweep you'd have to set up a band pass filter in the spot the resonance would be and modulate both filters in the mod matrix to move at the same rate. You lose a whole extra filter just to add resonance.

KBSoundSmith
KVRian
908 posts since 6 Jul, 2009

Post Sun Aug 14, 2022 7:01 am

Toward_Star wrote: Sun Aug 14, 2022 3:47 am This synth is strangely best in class given how little talk there is about it. I thought the GUI is amazing. Almost everything is laid out for you right in the same spot. There's just little annoyances I have that hold it back like the Q on the low and high pass filters not doing anything to the resonance, it could use some more waveforms, and especially it could use wavetable FM which I haven't been able to live without ever since phase plant. Yeah sampler operators blah blah this is just a personal preference based on my setup.

To do a filter sweep you'd have to set up a band pass filter in the spot the resonance would be and modulate both filters in the mod matrix to move at the same rate. You lose a whole extra filter just to add resonance.
I'm not experiencing that issue with the filters here. Is f'em buggy on your computer? They're working as expected on my machine. Which filters models were you trying to use?

As for extra waveforms and wavetables, part of the reason they're not there is that they aren't really needed. Regarding the extra waveforms available in FM8 for example, most of them are fast to recreate with an additional operator (you get 4 sets of 8 for a total of 32 per patch, so this is a non-issue in my book). Regarding wavetables, you can achieve the morphing effects most people are looking for by programming separate modulator stacks to have time-varying output levels into a common carrier.

Of course, I would never say "no" to additional waveforms if they wanted to include them in a future update, but part of the charm of FM programming is learning how to make any waveform you want starting with simpler waveforms.

User avatar
zerocrossing
KVRAF
12324 posts since 26 Jun, 2006 from San Francisco Bay Area

Post Sun Aug 14, 2022 7:07 am

I broke down and got it. I’m away, so shopping is my substitute for playing. :lol:
Zerocrossing Media

4th Law of Robotics: When turning evil, display a red indicator light. ~[ ●_● ]~

KBSoundSmith
KVRian
908 posts since 6 Jul, 2009

Post Sun Aug 14, 2022 7:09 am

bnz wrote: Wed Aug 10, 2022 9:10 pm
KBSoundSmith wrote: Wed Aug 10, 2022 8:33 pm After reading the past few pages, I'm a bit mystified about the negativity. This synth is ridiculously powerful. The GUI isn't the most elegant (with the name f'em, should it be?), but the functionality is plenty clear. And as far as finding options, it doesn't really require much effort -- it seems people are making a mountain out of a molehill. Spend an evening learning the synth and there won't be any problems navigating its options.
I fully agree. It's a great synth and it's really awesome that it was developed given the whole everything is wavetable synth landscape (well, more or less). It's pretty much the VST plugin I have always wanted as somebody who still has a SY77 on the keyboard stand right next to the computer.
If I was ever going to go pick up older tech, an SY77 would probably be it. Somehow I can't make myself do it though, haha. As a refresher, how is the FM architecture in the SY77 similar/different to f'em? I've heard some people mention their similarities, but not having first-hand experience with an SY77, I'm not sure what details they are alluding to.

Ou_Tis
KVRian
1002 posts since 10 Jul, 2018

Post Sun Aug 14, 2022 7:15 am

KBSoundSmith wrote: Sun Aug 14, 2022 7:01 am
Toward_Star wrote: Sun Aug 14, 2022 3:47 am This synth is strangely best in class given how little talk there is about it. I thought the GUI is amazing. Almost everything is laid out for you right in the same spot. There's just little annoyances I have that hold it back like the Q on the low and high pass filters not doing anything to the resonance, it could use some more waveforms, and especially it could use wavetable FM which I haven't been able to live without ever since phase plant. Yeah sampler operators blah blah this is just a personal preference based on my setup.

To do a filter sweep you'd have to set up a band pass filter in the spot the resonance would be and modulate both filters in the mod matrix to move at the same rate. You lose a whole extra filter just to add resonance.
I'm not experiencing that issue with the filters here. Is f'em buggy on your computer? They're working as expected on my machine. Which filters models were you trying to use?

As for extra waveforms and wavetables, part of the reason they're not there is that they aren't really needed. Regarding the extra waveforms available in FM8 for example, most of them are fast to recreate with an additional operator (you get 4 sets of 8 for a total of 32 per patch, so this is a non-issue in my book). Regarding wavetables, you can achieve the morphing effects most people are looking for by programming separate modulator stacks to have time-varying output levels into a common carrier.

Of course, I would never say "no" to additional waveforms if they wanted to include them in a future update, but part of the charm of FM programming is learning how to make any waveform you want starting with simpler waveforms.
Any good primers or tutorials on these (adding one operator to reproduce specific waveform, time-varying modulator stacks to reproduce specific wavetable morphing effect)?...

Even better might be: "Hey AI, do it for me..." :hihi: Maybe not before too long... but it's probably better to actually learn. (At least until we can have more thorough, rapid, and intelligent integration of AI with our brain functions. To the extent that cognition is modular and dependent on unconscious chunking, rapid search, concatenated routines...)

bnz
KVRist
93 posts since 12 Mar, 2004

Post Sun Aug 14, 2022 7:37 am

The main things back then about the SY77 (mainly in comparison to the DX7) are as far as I can recall:
1) the ability to modulate fm operators with samples (they called this RCM "realtime convolution and modulation"),
2) a few more fm waveforms than sine,
3) Each operator has two inputs which can be modulated by feedback from any other operator, noise generator or sample
4) freely programmable algorithms (when using sysex only),
5) multi-segment envelopes with loops,
6) digital filters,
7) effects,
8 ) Layering FM with sample-based sounds (AWM2)

Most boxes are actually checked by f.em. There will probably be deviations in the details. I already thought about doing a small challenge to recreate some classic SY77 sounds in f.em.

The most important downsides of the SY77/99 are in my opinion too few voices (16 voices) and that a lot of parameters are not properly realtime controllable (only through sysex hacks that only work when sent slowly over midi).

KBSoundSmith
KVRian
908 posts since 6 Jul, 2009

Post Sun Aug 14, 2022 7:22 pm

Ou_Tis wrote: Sun Aug 14, 2022 7:15 am
KBSoundSmith wrote: Sun Aug 14, 2022 7:01 am
Toward_Star wrote: Sun Aug 14, 2022 3:47 am This synth is strangely best in class given how little talk there is about it. I thought the GUI is amazing. Almost everything is laid out for you right in the same spot. There's just little annoyances I have that hold it back like the Q on the low and high pass filters not doing anything to the resonance, it could use some more waveforms, and especially it could use wavetable FM which I haven't been able to live without ever since phase plant. Yeah sampler operators blah blah this is just a personal preference based on my setup.

To do a filter sweep you'd have to set up a band pass filter in the spot the resonance would be and modulate both filters in the mod matrix to move at the same rate. You lose a whole extra filter just to add resonance.
I'm not experiencing that issue with the filters here. Is f'em buggy on your computer? They're working as expected on my machine. Which filters models were you trying to use?

As for extra waveforms and wavetables, part of the reason they're not there is that they aren't really needed. Regarding the extra waveforms available in FM8 for example, most of them are fast to recreate with an additional operator (you get 4 sets of 8 for a total of 32 per patch, so this is a non-issue in my book). Regarding wavetables, you can achieve the morphing effects most people are looking for by programming separate modulator stacks to have time-varying output levels into a common carrier.

Of course, I would never say "no" to additional waveforms if they wanted to include them in a future update, but part of the charm of FM programming is learning how to make any waveform you want starting with simpler waveforms.
Any good primers or tutorials on these (adding one operator to reproduce specific waveform, time-varying modulator stacks to reproduce specific wavetable morphing effect)?...

Even better might be: "Hey AI, do it for me..." :hihi: Maybe not before too long... but it's probably better to actually learn. (At least until we can have more thorough, rapid, and intelligent integration of AI with our brain functions. To the extent that cognition is modular and dependent on unconscious chunking, rapid search, concatenated routines...)
Sure. Let's start by replicating a very simple waveform from FM8. This is going to be a beginner-friendly 101 to demonstrate thought patterns, nothing fancy, something someone who has never programmed an FM synth before can learn from.

WAVEFORM TO BE REPLICATED

In the waveform selection of FM8, I've chosen the "1+3+5 Square" for Operator F. What I want to do is get some detailed information about what makes up this waveform (now obviously the name of the waveform itself tells me its composition BUT since such information rarely presents itself so easily, we'll ignore it). In order to get the composition, I've entered a note on the piano roll, a G that is roughly 100 Hz, to generate some audio. When audio is output into SPAN, we get the following graphic (accompanied with a short sound):
FM8 1 3 5 Square.png
Sound: FM8 135 Square https://app.box.com/s/qh5xhm31f1f2fzqskrzzrjpb8ek08jda

Notice that there are three partials, the fundamental at 100 Hz, the third harmonic at 300 Hz, and the fifth harmonic at 500 Hz. What you see above 10 kHz is evil sonic junk from FM8 being old. We will not replicate evil sonic junk.

REPLICATED WAVEFORM

In order to replicate this in f'em, we have to arrange operators in such a way as to create partials at 100 Hz, 300 Hz, and 500 Hz. Since we're keeping things simple and straightforward for this example, we'll use three separate operators set to Sine waves.

The first partial, the fundamental, is 100 Hz. To keep it short, we want to press a note on the keyboard which is roughly 100 Hz and have the output of the operator be 100 Hz. 100 Hz : 100 Hz is a 1:1 ratio, which we will write as a 1.000 ratio. So we will assign the value 1.000 to Operator 8. The next partial is 300 Hz, which is in a 3:1 ratio to the fundamental (300 Hz : 100 Hz); so, the next operator (Operator 7) will be set to a ratio of 3.000. The last partial is 500 Hz; following the same logic, the last operator is set to a ratio of 5.000 (Operator 6).

When audio is output into SPAN, we get the following graphic (accompanied with a short sound):
F-em 1 3 5 Square.png
Sound: F-em 135 Square https://app.box.com/s/vpel045x2bk4axmskb1mmnv9ud1bbrig

No doubt someone is upset we haven't done any FM -- "Hey, what you did is ADDITIVE SYNTHESIS!!" -- Yes, it is. Again, just demonstrating thought patterns to solve a problem without being attached to particular technique. But let's do some FM synthesis with the waveforms we've just made to quell the rage.

FM WITH ORIGINAL WAVEFORM

Going back to FM8, we are no longer going to send the output of Operator F as an audible signal. Instead, we are going to direct the output of Operator F into the Input of Operator E (Operator E by itself will be a Sine wave). The resulting output of Operator E will be sent out as an audible signal. The result of this will appear as follows in FM8:
FM8 1 3 5 Square into Sine.png
For those unfamiliar with FM programming, Operator F is acting as what is called a Modulator. Operator E is acting as what is called a Carrier. If Operator F was not affecting (modulating) Operator E, the only thing we would hear is a Sine wave of 100 Hz (notice Operator E is set to a ratio of 1.000). (To be clear, a Carrier is an Operator you actually hear; a Modulator is an operator you do not hear directly, but that Modulator affects the ultimate output of a Carrier). Since Operator E is being modulated by Operator F, we instead get a more complex output, seen in the following instance of SPAN (with an audio example):
FM8 Spectrum.png
Sound: FM8 135 Square into Sine https://app.box.com/s/6tl2awup2geo5bqbyw6lyr6ua2cv6ll1

(Note that the evil sonic junk is also being modulated and spreading its evil throughout the audible spectrum.)

FM WITH REPLICATED WAVEFORM

Now let's turn to f'em. In this case, since we used three separate operators to create the waveform, all three of these operators are going to be modulators. And they will all modulate the exact same carrier. In the FM8 example, there was one modulator stack (one stack, one modulator deep). In this case, there are three modulator stacks (three stacks, one modulator deep). Operators 8, 7, and 6 are modulators being routed into the input of Operator 5, which is acting as the Carrier, as seen in the following picture:
F-em 1 3 5 Square into Sine.png
Just like Operator E in the FM8 example, here in f'em Operator 5 is a Sine wave with a ratio of 1.000 (set to the fundamental). The resulting output, as seen in an instance of SPAN (with an audio example):
F-em Spectrum.png
Sound: F-em 135 Square into Sine https://app.box.com/s/fu37l3lsh4mzsyv3afsojbn6w7qhoz3i

And there we have it: a replication of everything we did in FM8, minus the evil sonic junk.

SUMMARY/WTF WAS THE POINT OF THIS?

A couple things to take away.

First, replicating waveforms is not as scary as you might think. In this case, all we did was use SPAN to see the spectral content of the waveform and then mapped out a simple method for obtaining the same spectral content with another synth. By doing so, we learned that we don't have to have a bunch of discrete waveforms to choose from, we can make them on our own.

Second, we've eliminated the evil sonic junk polluting our audio (no knock against FM8 btw, one does have to remember that it was engineered to work in real-time on much weaker hardware -- within such constraints, FM8 has obviously done its job well for years). Plus, by getting the waveform into a new synth, we can now take advantage of its different (and in this case more powerful) architecture.

But there's another advantage in the approach we've taken here: flexibility. In FM8, the waveform was ultimately static -- all of its component parts were baked into the cake. With what we've done in f'em, we can have each operator change parameters over time to create variations and interest.

And on that note, this is where we turn to using different modulator stacks to make up for not having wavetable morphing.

TIME-VARYING WAVEFORMS

Let's leave behind the previous example and start with a blank slate in f'em. However, in order to build off of something familiar, we are going to use the same modulator and carrier setup as we used in f'em in the previous example: one carrier, three modulator stacks (one modulator deep each).

What we're going to do is very simple. Each modulator is going to take a turn sending output to the Carrier, then will be quiet when it is the turn of a different modulator to send output. Each modulator will fade in, then fade out, followed by the next modulator in turn. We'll do this by editing the Level Envelopes of each modulator (in the picture below, you'll see them as three triangles, one following after another) (Note: Heads up, this is where I discovered some jankiness in f'em; if an envelope stage goes all the way down to 0.0%, f'em might interpret it as the end of the envelope and screw up timing -- the envelopes in this example are always changing and never fully hit 0.0 %, instead changing from 0.3 - 0.6% over time when it isn't their turn. Strange, but there you go. Just saved you a lot of time trouble-shooting.).

Now, if each modulator had the same settings, what would happen is nothing interesting. It would sound like the exact same sound fading in and out. So, let's introduce some basic FM recipes to make this more interesting. We'll go through this quickly. For all of the following, remember that the Carrier (Operator 8 in this case) is set to a 1.000 ratio.

The first modulator (Operator 7 ) will be set to a 1.000 ratio. When a Modulator is the same frequency as the Carrier, what you get is the building blocks of a Sawtooth wave (even and odd harmonics).

The second modulator (Operator 6 ) will be set to a 2.000 ratio. When a Carrier is modulated by an operator twice its frequency, what you get is the building blocks of a Square wave (odd harmonics).

The third modulator (Operator 5 ) will be set to a 3.500 ratio. Because why not, no particular reason. But to note, the farther you stray from using simple whole number ratios (4:1, 3:1, 2:1, etc), the resulting sound will be increasingly dissonant and harsh.

After entering all of that into f'em, we get the following (with a sound example):
F-em Fade In and Out.png
Sound: F-em Fade In and Out https://app.box.com/s/9qsj8q7ixnrpl3w2k5cmkd26u2c9euz4

Again, these different sounds are all coming from the same Carrier.

WRAP-UP

I'll keep this short, since this post is already gigantic. What we've seen are some basic building blocks which let us build our own waveforms and vary them over time. These concepts can be extended to achieve increasingly radical results. For example, each of the modulators could have their own modulators. Or modulate each other. Feedback could be introduced -- and likewise could be varied overtime (not using the Sample Operator? Use its envelopes to change the feedback!). You could experiment with having some modulators set to ratios lower than the carrier or modulator that it is modulating, etc. The essence of FM is f'ing around with as much as you can... in f'em (yeah, I'll stop typing).

Last thing I'll leave you with, a simple patch using some techniques mentioned in the last paragraph (plus some not mentioned, study the image). Note: the filters are NOT used in this patch (with sound example):
F-em Bass.png
Sound: F-em Bass https://app.box.com/s/2igckt5pwyz54vrtyn5d0nyzjg2udzdb
You do not have the required permissions to view the files attached to this post.

User avatar
Dirtgrain
KVRAF
2720 posts since 12 Jan, 2019

Post Sun Aug 14, 2022 8:30 pm

Rock on KBSoundSmith.
"Have you ever noticed how anyone driving faster than you is a [jerk] and anyone driving slower than you is a moron?" - George Carlin

Toward_Star
KVRer
5 posts since 4 Sep, 2020

Post Mon Aug 15, 2022 2:03 pm

KBSoundSmith wrote: Sun Aug 14, 2022 7:01 am
Toward_Star wrote: Sun Aug 14, 2022 3:47 am This synth is strangely best in class given how little talk there is about it. I thought the GUI is amazing. Almost everything is laid out for you right in the same spot. There's just little annoyances I have that hold it back like the Q on the low and high pass filters not doing anything to the resonance, it could use some more waveforms, and especially it could use wavetable FM which I haven't been able to live without ever since phase plant. Yeah sampler operators blah blah this is just a personal preference based on my setup.

To do a filter sweep you'd have to set up a band pass filter in the spot the resonance would be and modulate both filters in the mod matrix to move at the same rate. You lose a whole extra filter just to add resonance.
I'm not experiencing that issue with the filters here. Is f'em buggy on your computer? They're working as expected on my machine. Which filters models were you trying to use?

As for extra waveforms and wavetables, part of the reason they're not there is that they aren't really needed. Regarding the extra waveforms available in FM8 for example, most of them are fast to recreate with an additional operator (you get 4 sets of 8 for a total of 32 per patch, so this is a non-issue in my book). Regarding wavetables, you can achieve the morphing effects most people are looking for by programming separate modulator stacks to have time-varying output levels into a common carrier.

Of course, I would never say "no" to additional waveforms if they wanted to include them in a future update, but part of the charm of FM programming is learning how to make any waveform you want starting with simpler waveforms.
Fair enough I do like that mentality. Everything else works fine, just the resonance is giving me trouble. I just checked it now and it's still that way. I recorded a gif but I'm not sure how to upload it. Kick ass synth btw that will hopefully get the recognition it deserves.

morphex
KVRian
679 posts since 30 Oct, 2003 from Pacific NW, USA

Post Mon Aug 15, 2022 2:08 pm

Dirtgrain wrote: Sun Aug 14, 2022 8:30 pm Rock on KBSoundSmith.
Agreed. EPIC post!!! :tu:

User avatar
ATS
KVRAF
7390 posts since 21 Dec, 2002 from MD USA

Post Mon Aug 15, 2022 6:46 pm

I just bought this from Audiodeluxe and Tracktion's system won't accept the code I got. Sort of frustrating.
my music: http://www.alexcooperusa.com
"It's hard to be humble, when you're as great as I am." Muhammad Ali

vertibration
KVRian
803 posts since 11 Nov, 2010 from ny

Post Mon Aug 15, 2022 7:13 pm

Im not understanding how to set up looping envelopes correctly. For instance, I want Op 7 to mod Op 8, and the envelope to loop, so the looping env affects op 7 volume. FM8 can easily do this, F-em I dont seem to know how. I can create a curve LFO, but I cant assign it to op7 volume so its modulation affects op8.

vertibration
KVRian
803 posts since 11 Nov, 2010 from ny

Post Mon Aug 15, 2022 7:36 pm

nevermind figured it out

Toward_Star
KVRer
5 posts since 4 Sep, 2020

Post Mon Aug 15, 2022 11:43 pm

KBSoundSmith wrote: Sun Aug 14, 2022 7:22 pm
Ou_Tis wrote: Sun Aug 14, 2022 7:15 am
KBSoundSmith wrote: Sun Aug 14, 2022 7:01 am
Toward_Star wrote: Sun Aug 14, 2022 3:47 am This synth is strangely best in class given how little talk there is about it. I thought the GUI is amazing. Almost everything is laid out for you right in the same spot. There's just little annoyances I have that hold it back like the Q on the low and high pass filters not doing anything to the resonance, it could use some more waveforms, and especially it could use wavetable FM which I haven't been able to live without ever since phase plant. Yeah sampler operators blah blah this is just a personal preference based on my setup.

To do a filter sweep you'd have to set up a band pass filter in the spot the resonance would be and modulate both filters in the mod matrix to move at the same rate. You lose a whole extra filter just to add resonance.
I'm not experiencing that issue with the filters here. Is f'em buggy on your computer? They're working as expected on my machine. Which filters models were you trying to use?

As for extra waveforms and wavetables, part of the reason they're not there is that they aren't really needed. Regarding the extra waveforms available in FM8 for example, most of them are fast to recreate with an additional operator (you get 4 sets of 8 for a total of 32 per patch, so this is a non-issue in my book). Regarding wavetables, you can achieve the morphing effects most people are looking for by programming separate modulator stacks to have time-varying output levels into a common carrier.

Of course, I would never say "no" to additional waveforms if they wanted to include them in a future update, but part of the charm of FM programming is learning how to make any waveform you want starting with simpler waveforms.
Any good primers or tutorials on these (adding one operator to reproduce specific waveform, time-varying modulator stacks to reproduce specific wavetable morphing effect)?...

Even better might be: "Hey AI, do it for me..." :hihi: Maybe not before too long... but it's probably better to actually learn. (At least until we can have more thorough, rapid, and intelligent integration of AI with our brain functions. To the extent that cognition is modular and dependent on unconscious chunking, rapid search, concatenated routines...)
Sure. Let's start by replicating a very simple waveform from FM8. This is going to be a beginner-friendly 101 to demonstrate thought patterns, nothing fancy, something someone who has never programmed an FM synth before can learn from.

WAVEFORM TO BE REPLICATED

In the waveform selection of FM8, I've chosen the "1+3+5 Square" for Operator F. What I want to do is get some detailed information about what makes up this waveform (now obviously the name of the waveform itself tells me its composition BUT since such information rarely presents itself so easily, we'll ignore it). In order to get the composition, I've entered a note on the piano roll, a G that is roughly 100 Hz, to generate some audio. When audio is output into SPAN, we get the following graphic (accompanied with a short sound): FM8 1 3 5 Square.png
Sound: FM8 135 Square https://app.box.com/s/qh5xhm31f1f2fzqskrzzrjpb8ek08jda

Notice that there are three partials, the fundamental at 100 Hz, the third harmonic at 300 Hz, and the fifth harmonic at 500 Hz. What you see above 10 kHz is evil sonic junk from FM8 being old. We will not replicate evil sonic junk.

REPLICATED WAVEFORM

In order to replicate this in f'em, we have to arrange operators in such a way as to create partials at 100 Hz, 300 Hz, and 500 Hz. Since we're keeping things simple and straightforward for this example, we'll use three separate operators set to Sine waves.

The first partial, the fundamental, is 100 Hz. To keep it short, we want to press a note on the keyboard which is roughly 100 Hz and have the output of the operator be 100 Hz. 100 Hz : 100 Hz is a 1:1 ratio, which we will write as a 1.000 ratio. So we will assign the value 1.000 to Operator 8. The next partial is 300 Hz, which is in a 3:1 ratio to the fundamental (300 Hz : 100 Hz); so, the next operator (Operator 7) will be set to a ratio of 3.000. The last partial is 500 Hz; following the same logic, the last operator is set to a ratio of 5.000 (Operator 6).

When audio is output into SPAN, we get the following graphic (accompanied with a short sound): F-em 1 3 5 Square.png
Sound: F-em 135 Square https://app.box.com/s/vpel045x2bk4axmskb1mmnv9ud1bbrig

No doubt someone is upset we haven't done any FM -- "Hey, what you did is ADDITIVE SYNTHESIS!!" -- Yes, it is. Again, just demonstrating thought patterns to solve a problem without being attached to particular technique. But let's do some FM synthesis with the waveforms we've just made to quell the rage.

FM WITH ORIGINAL WAVEFORM

Going back to FM8, we are no longer going to send the output of Operator F as an audible signal. Instead, we are going to direct the output of Operator F into the Input of Operator E (Operator E by itself will be a Sine wave). The resulting output of Operator E will be sent out as an audible signal. The result of this will appear as follows in FM8: FM8 1 3 5 Square into Sine.png

For those unfamiliar with FM programming, Operator F is acting as what is called a Modulator. Operator E is acting as what is called a Carrier. If Operator F was not affecting (modulating) Operator E, the only thing we would hear is a Sine wave of 100 Hz (notice Operator E is set to a ratio of 1.000). (To be clear, a Carrier is an Operator you actually hear; a Modulator is an operator you do not hear directly, but that Modulator affects the ultimate output of a Carrier). Since Operator E is being modulated by Operator F, we instead get a more complex output, seen in the following instance of SPAN (with an audio example): FM8 Spectrum.png
Sound: FM8 135 Square into Sine https://app.box.com/s/6tl2awup2geo5bqbyw6lyr6ua2cv6ll1

(Note that the evil sonic junk is also being modulated and spreading its evil throughout the audible spectrum.)

FM WITH REPLICATED WAVEFORM

Now let's turn to f'em. In this case, since we used three separate operators to create the waveform, all three of these operators are going to be modulators. And they will all modulate the exact same carrier. In the FM8 example, there was one modulator stack (one stack, one modulator deep). In this case, there are three modulator stacks (three stacks, one modulator deep). Operators 8, 7, and 6 are modulators being routed into the input of Operator 5, which is acting as the Carrier, as seen in the following picture: F-em 1 3 5 Square into Sine.png

Just like Operator E in the FM8 example, here in f'em Operator 5 is a Sine wave with a ratio of 1.000 (set to the fundamental). The resulting output, as seen in an instance of SPAN (with an audio example): F-em Spectrum.png
Sound: F-em 135 Square into Sine https://app.box.com/s/fu37l3lsh4mzsyv3afsojbn6w7qhoz3i

And there we have it: a replication of everything we did in FM8, minus the evil sonic junk.

SUMMARY/WTF WAS THE POINT OF THIS?

A couple things to take away.

First, replicating waveforms is not as scary as you might think. In this case, all we did was use SPAN to see the spectral content of the waveform and then mapped out a simple method for obtaining the same spectral content with another synth. By doing so, we learned that we don't have to have a bunch of discrete waveforms to choose from, we can make them on our own.

Second, we've eliminated the evil sonic junk polluting our audio (no knock against FM8 btw, one does have to remember that it was engineered to work in real-time on much weaker hardware -- within such constraints, FM8 has obviously done its job well for years). Plus, by getting the waveform into a new synth, we can now take advantage of its different (and in this case more powerful) architecture.

But there's another advantage in the approach we've taken here: flexibility. In FM8, the waveform was ultimately static -- all of its component parts were baked into the cake. With what we've done in f'em, we can have each operator change parameters over time to create variations and interest.

And on that note, this is where we turn to using different modulator stacks to make up for not having wavetable morphing.

TIME-VARYING WAVEFORMS

Let's leave behind the previous example and start with a blank slate in f'em. However, in order to build off of something familiar, we are going to use the same modulator and carrier setup as we used in f'em in the previous example: one carrier, three modulator stacks (one modulator deep each).

What we're going to do is very simple. Each modulator is going to take a turn sending output to the Carrier, then will be quiet when it is the turn of a different modulator to send output. Each modulator will fade in, then fade out, followed by the next modulator in turn. We'll do this by editing the Level Envelopes of each modulator (in the picture below, you'll see them as three triangles, one following after another) (Note: Heads up, this is where I discovered some jankiness in f'em; if an envelope stage goes all the way down to 0.0%, f'em might interpret it as the end of the envelope and screw up timing -- the envelopes in this example are always changing and never fully hit 0.0 %, instead changing from 0.3 - 0.6% over time when it isn't their turn. Strange, but there you go. Just saved you a lot of time trouble-shooting.).

Now, if each modulator had the same settings, what would happen is nothing interesting. It would sound like the exact same sound fading in and out. So, let's introduce some basic FM recipes to make this more interesting. We'll go through this quickly. For all of the following, remember that the Carrier (Operator 8 in this case) is set to a 1.000 ratio.

The first modulator (Operator 7 ) will be set to a 1.000 ratio. When a Modulator is the same frequency as the Carrier, what you get is the building blocks of a Sawtooth wave (even and odd harmonics).

The second modulator (Operator 6 ) will be set to a 2.000 ratio. When a Carrier is modulated by an operator twice its frequency, what you get is the building blocks of a Square wave (odd harmonics).

The third modulator (Operator 5 ) will be set to a 3.500 ratio. Because why not, no particular reason. But to note, the farther you stray from using simple whole number ratios (4:1, 3:1, 2:1, etc), the resulting sound will be increasingly dissonant and harsh.

After entering all of that into f'em, we get the following (with a sound example): F-em Fade In and Out.png
Sound: F-em Fade In and Out https://app.box.com/s/9qsj8q7ixnrpl3w2k5cmkd26u2c9euz4

Again, these different sounds are all coming from the same Carrier.

WRAP-UP

I'll keep this short, since this post is already gigantic. What we've seen are some basic building blocks which let us build our own waveforms and vary them over time. These concepts can be extended to achieve increasingly radical results. For example, each of the modulators could have their own modulators. Or modulate each other. Feedback could be introduced -- and likewise could be varied overtime (not using the Sample Operator? Use its envelopes to change the feedback!). You could experiment with having some modulators set to ratios lower than the carrier or modulator that it is modulating, etc. The essence of FM is f'ing around with as much as you can... in f'em (yeah, I'll stop typing).

Last thing I'll leave you with, a simple patch using some techniques mentioned in the last paragraph (plus some not mentioned, study the image). Note: the filters are NOT used in this patch (with sound example): F-em Bass.png
Sound: F-em Bass https://app.box.com/s/2igckt5pwyz54vrtyn5d0nyzjg2udzdb
how do you control the feed back with sampler envelope? I can't seem to find the routing

Return to “Instruments”