Synth Forum

Notifications
Clear all

How Does FM-X use Polyphony?

24 Posts
4 Users
0 Reactions
1,214 Views
Antony
Posts: 745
Prominent Member
Topic starter
 

Dear All,

I would like to understand How FM-X uses the available 64 Note Polyphony.

To be clear, I do not want or need to know what to do if I run out of FM-X Polyphony (e.g. substitute an AWM2 Part).

I see that ALL FM-X Parts/Algorithms are 8 Operators, whether those Operators are used (Level > 0) or not (Level = 0).

If I used a basic Algorithm (8 Carriers) and only used Operator 1 as a basic Sine Wave sound, and all other Operators (2 through 8) were Level = 0.

How much Polyphony would be used on one Key On?

Would it be 1 use of Polyphony? Or would it still be 8 uses of Polyphony (Carriers 2 through 8 still generating Sine Waves even though you can't hear them)?

To Expand....

I have an FM Algorithm... 2 Carriers, and 3 Modulators per Carrier.

The First Carrier is Modulated by all 3 of its Modulators.
The Second Carrier is Modulated by Only One of its Modulators (The Other two are Level = 0).

One Key On....

Is this 2 Uses of Polyphony (One for each Carrier... since that is all that is "sounding" ) ?

6 Uses of Polyphony (2 Carriers + 4 Modulators where Level > 0).

8 Uses of Polyphony (8 Operators in the Part, regardless of their Level ) ?

Thanks in advance for your assistance.

 
Posted : 15/12/2021 10:41 am
Bad Mister
Posts: 12303
 

How much Polyphony would be used on one Key On?

1

 
Posted : 15/12/2021 11:51 am
Posts: 1715
Noble Member
 

Anthony are you noticing strange behaviour long before you get to/near 64 notes?

I am, and have.

There's definitely something quite taxing of the MODX about FM-X when using all operators/carriers in a heavily controlled manner, such that all manner of lags and oddities start surfacing.

 
Posted : 15/12/2021 12:14 pm
Jason
Posts: 8238
Illustrious Member
 

When I setup Part 1 with 8 carriers in use - each carrier detuned a bit (or fine adjusted for wider detuning) - I found I was able to play a low note that never cut off even when I laid my arm down pressing down white and black keys >20. If each carrier takes away from polyphony - I would expect to hear the low note cut off but it didn't. I need a more controlled test though - probably employing note scaling so higher notes have a lower level such that these will not really sound but I can really focus on if the low note is changing any (if any operators are cutting out). And I would probably change this to be a chord with extensions so I can better hear if any operator(s) are dropping out.

Sorry not much real information above. Just early testing.

I was curious if FM-X had the >4 same note drop-out. It does. With the same "Init Normal (FM-X)" described above (algorithm with 8 carriers, all 8 carriers at level 99, velocity/level set to +7) I change this slightly to set the hold level to 99 so the note will automatically sustain forever. With no note sounding I press one key aggressively which creates a loud note. Then I softly press the same key 4 more times. After the 4th keypress - the notes cut out. Like the AWM2 experiment done in another thread - FM-X appears to have this non-polyphony-related note limit of no more than 4 simultaneous "superimposed" same notes. The >4 same note will sound similar to polyphony dropouts but this will occur without any reaching this count. I have a Montage so the polyphony for FM-X is 128.

Even if we pretend like carriers each contribute to 1 unit of polyphony - then each key press here is 8 units. 5 presses of the same note is 8x5 oscillators running at once (with infinite hold) and this would be 40 units - well below the 128.

It appears both AWM2 and FM-X have this not-polyphony-but-something-else behavior where a single MIDI note cannot overlap itself more than 4 times.

If you're noticing unexpected note drop-outs by running the numbers and think you're well below the 64 or 128 limit (depending on your keyboard) - then look into if all oscillators running simultaneously were triggered by a shared MIDI note (and how many times the same note was triggered) or if all oscillators were triggered by a different note.

In order to satisfy the polyphony specs it appears the asterisk next to this claim would read: "* Assuming each note is triggered by a different MIDI note".

Current Yamaha Synthesizers: Montage Classic 7, Motif XF6, S90XS, MO6, EX5R

 
Posted : 15/12/2021 5:22 pm
Antony
Posts: 745
Prominent Member
Topic starter
 

Regarding Subsequent Coincident Key Presses....

From Memory... there is a Parameter that governs behaviour on "Multiple" single key presses. I think it is called "Multi" and may be in the Part-Common Edit or the Element/Op Edit Screens.

I haven't paid much attention to it, but it is there. I believe it ensures that each new key press will sound (example for trilling) at the expense of older "lingering" notes which will be cut off.

This is reminiscent of the behaviour of many modern digital delays I own. If high Repeats are set, then eventually the real time buffers can fill up with relics of old notes (debris) and new note repeats glitch out.

To counter this, each new repeat applies "ducking" to older Repeats, meaning the "older note" decay curve is steeper than if just a single note was played and left to ring out alone.

This is a compromise, compared to vintage Tape "Echoes", where older note echoes will keep ringing out, saturating and contribute to a "harmonic soup" backdrop.

Anyways.... back to my OP.

I am not suffering any problems. I would just like to understand the operational boundaries (Polyphony) for FM-X.

It ocurred to me that 8 Parts x 8 Operators = 64, therefore (possibly) reducing an homogenous 8 Part FM-X Performance to 1 Note Polyphony.

The reason is that I have been trying to make "Multi Part" single performances that cover a gamut of sounds for a single song... such was the nature of Richard Wright in Pink Floyd.

He did it by layering multiple recordings on the Albums. Live, he had multiple keyboards and hired session players.

I have found there are a lot of "accurate" sounding FM Parts that can be used in Preference to AWM2. Add to this, I have learned how to make easy tweaks to Timbre on FM parts, such that I am preferring them in some cases (I still don't like those "baked in" modulations on many AWM samples).

Richard Wright nearly always had Full Organ parts in any given song... these chew up polyphony (AWM or FM) if you want to maintain full draw bar control... which I do. The "Draw Bars" help you "tune in" the organ sounds.

Finding an exact "Single Element, Fixed draw bar" AWM Part is difficult. I have found that FM into INS effects (Phasers, Delays, Reverbs etc) can be "enough" particularly when the Organ is only "Backing". Loosing the B3 Rotor Grind, Key Click etc is not such an issue.

That is the "Why" explained.

I would still like to understand HOW FM Polyphony is used.

 
Posted : 15/12/2021 8:42 pm
Jason
Posts: 8238
Illustrious Member
 

It ocurred to me that 8 Parts x 8 Operators = 64, therefore (possibly) reducing an homogenous 8 Part FM-X Performance to 1 Note Polyphony.

For me, I setup 8 Parts of 8 Carriers (8x8) and seemed - in a very unscientific test - to get way more than two notes. A whole arm full. I would have expected FIFO where the 1st note played would drop out first and I did not detect this was happening (the first note played did not drop out).

As I said, this wasn't the best test - I can do better.

Regarding "Multi" ...

Key Assign (Key Assign Mode)
Determines the playing method when the same notes are received continuously, and without
corresponding note off messages. For details, refer to the Synthesizer Parameter Manual PDF document.

Settings: Single, Multi

Single: Double or repeated playback of the same note is not possible. The first note will be stopped, then the next
note will be sounded.

Multi: All notes are sounded simultaneously. This allows playback of the same note when it is played multiple times
in succession (especially for tambourine and cymbal sounds that you would want to ring out to their full decay).

This parameter is available in both AWM2 Normal Parts and Drum Parts. FM-X doesn't have the "Multi" setting. The observation is that with the AWM2 mode set to "Multi" or an FM-X Part without this option both have 4 simultaneous same MIDI note presses max before the first note will cutoff upon the 5th same note note-on.

For AWM2 and Drums setting this to "Single" would give you a single note max and "Multi" appears to be 4 max.

... even though multiple presses of the same note, by definition, does not necessarily belong in a polyphony discussion (because it isn't) - I see previous discussions where it pops up and is tied to polyphony due to the outcome.

I'm still working on (re)figuring out FM-X polyphony.

Current Yamaha Synthesizers: Montage Classic 7, Motif XF6, S90XS, MO6, EX5R

 
Posted : 15/12/2021 9:34 pm
Posts: 1715
Noble Member
 

Despite the unusual brevity of Bad Mister's answer. It is the answer.

It's 64 Notes of FM-X polyphony.

An FM-X note is considered to be any of the algorithms. It's not a division of carriers/operators.

However... as I've mentioned, there's some funkiness that goes on when carrier and operators are getting heavily pushed around.

If you sculpt each operator/carrier, and animate a lot of FM-X parameters, and make a lot of them dynamically responsive to other events, it's not long before quite odd behaviours become noticeably erratic in terms of timing - like stutters or stepping. It's not a reduction in polyphony, this can be noticeable with very few notes playing. It's more akin to the code of individual voices getting a little stymied when it's gotta do more than it can from one allocated unit of samples to the next.

Anthony, if you're not noticing this kind of thing, plow on, your sound design sounds like it'll be immense and highly engaging. Crack on without fear that if one note isn't giving you issues, then you'll be able to get 64 notes doing it without any trouble. How things happen at 65 notes, I don't know... might be interesting to create a Pattern Sequence to test this. Two patterns, one doing 64 long notes of one FM-X sound, and then another that very quickly dumps 63 notes of a new, very short sound, would isolate one aspect of what's going on.

I suspect each "voice" of the FM-X polyphony is allocated Job-like portions of time to gets its contents ready, rather than it being (the much more difficult to code) dynamic load balancing, for one simple reason other than the coding challenge - avoiding hugely distracting, and potentially speaker blowing, FM pops and crackles if ALL voicing maths went awry between packets of frames.

This is how I code FM for engine/motor/exhaust sounds, to avoid blowing up speakers, and system wide audio glitches that'll ruin immersion, by building each voice (piston in my case) such that any failures to keep up with the real world time only result in some parts of some voices getting minor glitches between packets of frames.

 
Posted : 15/12/2021 11:13 pm
Jason
Posts: 8238
Illustrious Member
 

With 8 carriers active on 8 Parts I only saw polyphony dropouts when I pressed a 16th key.

Again, I have a Montage with 128 units of polyphony.

I had a piece of paper stuck in the first low key and laid my hand across 10 white keys then used the other hand to press 4 black keys plus one white key (thumb below the 10 white keys pressed with the other hand). That's 16 notes at once on 8 Parts with 8 carriers running at once.

Seems like that should have not dropped anything (8 Parts x 16 notes = 128 polyphony units) but, roughly speaking, that one note of polyphony shortfall is within the margin of error of my manual triggering. This is always best done with MIDI to get rid of the human error.

Part 8 was the only Part that had notes stolen and it was the original held low note that was "stolen" (FIFO - w/high Part as lowest priority).

FM-X is a lot less expensive polyphony-wise since carriers do not add up.

I simple single algorithm organ (with 8 "draw bars" ) can be created much more efficiently than the equivalent AWM2 organ. There's probably no reason to use anything but FM-X for certain drawbars in order to save on polyphony.

Current Yamaha Synthesizers: Montage Classic 7, Motif XF6, S90XS, MO6, EX5R

 
Posted : 15/12/2021 11:50 pm
Posts: 1715
Noble Member
 

"FM-X is a lot less expensive polyphony-wise since carriers do not add up."

Does this mean that Elements add up? I didn't think they did.

 
Posted : 16/12/2021 12:15 am
Jason
Posts: 8238
Illustrious Member
 

Source BM @ Yamaha describing AWM2 polyphony

I'm not aware of any way to reserve polyphony. If you study the large multi-Part Performances available in the Factory Presets you can see how rarely if ever are all Parts sounding simultaneously - the math is really easy to understand. If you layer sounds so that, say for example, all eight Parts have 8 Element sounds. With 64 Oscillators triggering per note, you run out of polyphony very rapidly.

Sounds that are polyphony hogs - that use polyphony in a crazy way - are the organ sounds where you attempt to recreate all the drawbars. Layering a drawbar organ with other sounds might be the least efficient use ever of polyphony.

A unit of polyphony in AWM2 is a single oscillator (element) that is triggered (sounding) and the sum of all triggered (sounding) by different MIDI notes is the polyphony count with the 128 count ceiling.

Current Yamaha Synthesizers: Montage Classic 7, Motif XF6, S90XS, MO6, EX5R

 
Posted : 16/12/2021 5:59 am
Posts: 1715
Noble Member
 

So is that a "yes" ?

 
Posted : 16/12/2021 7:18 am
Posts: 1715
Noble Member
 

If that's the case, that an Element is a voice in terms of polyphony as per Yamaha's counting, it's a bit stunning.

We don't, for example, consider a Novation Summit to have a polyphony of 48 because it has 16x3 oscillators, we call it a 16 voice synth, and say that is has a polyphony of 8 x two timbres.

Yamaha claiming 128 note polyphony by this means of Elements inside Parts is, at best, naively deceptive.

 
Posted : 16/12/2021 7:25 am
Antony
Posts: 745
Prominent Member
Topic starter
 

I haven't ran out of Polyphony yet.

I'm working on an "all in one" Performance for Shine On You Crazy Diamond.

As it turns out, I have Six Parts with two Slots remaining (for the Organs). By luck, rather than planned design, 5 of those current 6 parts are FM-X.

Still working on it. But I'm liking the sound of the FM Organs... particularly that Second drawbar (a 5th above the fundamental?). I am also playing with the "All 9 Bars" (the first AWM preset in the Category list) but can't get it to sit right (I am probably doing something wrong). RW had a B3. The AWM2 B3 on its own sounds great (like a Hammond). But, I'm trying to sound like RW... I'm not sure how he got his B3 to sound like it does on the record.

Anyways... it would be interesting to know the FM Polyphony equation if anyone can find/confirm it.

 
Posted : 16/12/2021 11:12 am
Posts: 1715
Noble Member
 

it's 64 algorithms running at the same time.

This is typical of how Polyphony Voices are described, and another of the reasons I'm quite stunned to discover that an Element of AWM2 = a single voice of polyphony rather than being one of 8 possible oscillators in a single voice of polyphony.

This really does mean that the LFO for each voice (Element) should be tempo synced rather than have an arbitrary rate. I'd given them a pass on this in the past as I thought an AWM2 Part was a unit of polyphony, not the Elements that make up a Part - and each Part does have a tempo synced LFO, even if it is extremely limited in what it can reach.

Further, and more explicitly, on FM:

1 unit of FM-X Polyphony = 8 operators in a Part, regardless of how each carrier/oscillator is used - as they're all always being used, even when you set them to 0.

There is no OFF for a carrier or operator in an algorithm. Even if you set it to zero, it's still being multiplied into the algorithm. This is how low level coding is done - it's faster to do cheap operations and use them as mutes in many key ways, than it is to create branching based on a value that might be zero. Especially within DSP focused chip designs wherein everything is optimised for vectorisation.

As stated elsewhere, I'd imagine there's a manager-type system that's responsible for distributing each note's workload, such that there's no chance for a calamitous encounter with a processing limit - instead each note is sufficiently bucketed that some kind of result is added to the output, and its data built up in such a manner as to avoid the worst types of glitching between the portions of samples that need to be sounded each block of audio that's processed and output.

Furthermore... the fact that Bad Mister has both stated it's 1, and not corrected me tends to indicate that I'm just repeating him in a more verbose manner.

Not nearly as well as he'd write, granted. But approaching his verbosity 😉

 
Posted : 16/12/2021 11:59 am
Bad Mister
Posts: 12303
 

Each FM-X Note you play uses one note of polyphony — it does not take an elaborate explanation. It matters not how many Operators are active, nor does it depend on how many Operators are Carriers, nor how many are Modulators (and it certainly does not have anything to do with 64 Algorithms running at the same time (?)).

When I think it will help others who are researching a subject - there is no such thing as too verbose. Most users wish the manuals were a bit more so.

An Algorithm is a recipe - in this case it refers to the configuration that shows each Operator and how it is set to interact with its neighbors.
There are 88 different configurations of the 8 Operators - each contains 8 Operators. Each FM-X Part has one Algorithm.

AWM2
AWM2 is based on audio samples. Samples are digital audio recordings (mono or stereo recordings)… you can have a maximum of 128 stereo audio recordings playing simultaneously. At maximum, 256 mono audio samples or 128 stereo audio samples can be assigned to an Element. The samples are mapped to the keyboard into entities called KeyBanks. A KeyBank is a Note Range and Velocity Range that when requested will playback it’s audio.

This means you could map a stereo audio recording to each Key across the entire range, C-2 through G8
This means you could map a stereo audio recording to each Velocity value 1-127 (with one leftover).
Neither of these extremes is ever done… most instrument sounds are made up of a combination of horizontal (Note) and vertical (Velocity) mapping.

The polyphony of the MONTAGE/MODX is, for all intents, doubled because it can handle 128 Stereo Keybanks. For simplicity, we state it this way - the AWM2 engine’s polyphony is 128, all day long

Extra Credit:
An Element only uses polyphony when it is asked to respond. You can see the Element usage in any Part as follows:
Select the AWM2 PART
Press [EDIT]
The Element access is along the bottom of the screen. 8 Element slots per AWM2 Part.
The bright blue Elements are active. Tap one of them. The little radio button will fill with a green dot when an Element is receiving a request for polyphony. Tap “All” to the far right to review the Oscillator Waveform assigned to each Element and the details on when it will use polyphony.

This includes the Note Range, the Velocity Range, the XA Control requirements…

Just because a sound has 8 Elements it is unlikely they will all be requesting polyphony simultaneously. Tone Wheel organs are the exception where Parts can wind up using an Element per ‘drawbar’. When you press a note on a ‘drawbar’ organ Part that is setup for individual ‘drawbar’ control, all Elements will respond to each note-on even if the Element Level is 0… it is ‘silently’ using polyphony… waiting for you to draw the bar (raise the Element Level). So if you’re not doing what is referred to as “working the drawbars” during your performing, on a synthesizer you will want to build your Tone Wheel organs using just the footages you need. The Preset Waveforms include each footage, and the most common combinations.

The typical Gospel Organ setting 8000 0000 8 could be extremely expensive or you could create it with just a 16’ Element, and a 1’ Element… much more efficient— both will sound exactly the same!

An Element is capable of being a complete standalone synth sound. Each has an Oscillator waveform, it’s own Pitch EG, it’s own Filter, it’s own Filter EG, it’s own output and panning, it’s Amplitude EG, it’s own LFO, and it’s own Routing through the two available Insertion Effects. Not like a synth where all the oscillators share that stuff (completely different). A typical analog synth, say a MiniMoog had 3 Oscillators, all of which go through the same Filter, all of which share the same AEG. Of course if you wanted an LFO, you could re-task Osc3 to be the LFO. When making comparisons to other synthesizers — as you can see it can vary greatly. Apples, oranges and bananas! Each has a different method (recipe) for making the sound… vive la difference! It why they can all sound gloriously different.

It’s a simple enough concept… an AWM2 Element only uses polyphony when you have satisfied the requirements set to make it respond.
An FM-X Part - all the frequency sources (called Operators) combine to make the resulting tone. 1 Key pressed uses 1 note of its polyphony..

Once you understand how polyphony works you begin to respect it and you’ll find that you run out of polyphony less and less.
It’s when you don’t understand it that you run out of polyphony — no matter how much you are given (at least that has been finding).

 
Posted : 16/12/2021 2:27 pm
Page 1 / 2
Share:

© 2024 Yamaha Corporation of America and Yamaha Corporation. All rights reserved.    Terms of Use | Privacy Policy | Contact Us