Author Topic: why fm and not pm  (Read 6804 times)

lokki

  • Sr. Member
  • ****
  • Posts: 383
    • View Profile
why fm and not pm
« on: October 11, 2016, 12:13:35 AM »
hi, this is more of a general question, out of interest...

why was there true fm choosen for the preenfm and not pm as on most other "fm" synthesizers? true fm is generally harder to implement, no?


Xavier

  • Administrator
  • Hero Member
  • *
  • Posts: 2259
    • View Profile
Re: why fm and not pm
« Reply #1 on: October 11, 2016, 09:01:43 AM »

Because the preenfm1 started as a simple hobbyist project, and i first coded an FM algo  ;)

FM is a little harder because it adds a frequency shift as soon as you have 3 or more operators in a row.
That requires low a pass filter between them to get rid of that.
I think that's the main problem manufacturers had in the 80s, which make the FM harder to implement on their hardcoded chips.

Xavier

mmontag

  • Team member
  • *
  • Posts: 10
    • View Profile
    • https://www.mattmontag.com
Re: why fm and not pm
« Reply #2 on: January 22, 2017, 01:21:52 AM »
Hey Xavier, would you mind elaborating on this a little more?

What is the frequency shift you speak of? And how does a low pass filter fix it?...

Xavier

  • Administrator
  • Hero Member
  • *
  • Posts: 2259
    • View Profile
Re: why fm and not pm
« Reply #3 on: January 22, 2017, 10:23:15 AM »
There's a good explanation here :
http://www.musicdsp.org/showone.php?id=160

In the preenfm2 ALGO5 here is how the low pass filter is simply implemented :
https://github.com/Ixox/preenfm2/blob/master/src/synth/Voice.cpp#L677
Only usefull where 3 or more operators in cascade.
The low pass filter gets rid of the DC offset and so gets rid of the pitch shifting in the following operator.