Another FM thread
  • Hi,

    I'm new here and while I have started to understand the very basics of Audulus, I'm really stuck when it comes to FM synthesis. I intuitively built a simple synth with vibrato but that's all. I'd like to do audio rate FM modulation. I have gone through several pathches and searched the forum, and while I've read several threads, it's still not clear.

    I would desperately love to see a patch where there is a clear focus on only FM, featuring the bare minimals, one modulator and one carrier, using two oscillator modules, and expression modules. It's been confusing for me when I have seen patches where FM is mixed with other forms of synthesis and there is a ton of routing going on, switches etc and I don't know where to start deciphering what's actually relevant for the FM synthesis.

    Would be very grateful for help!
  • Here's a very simple phase modulation demo, which I believe mathematically works out to be equivalent to FM (I think, could be wrong).
    demo phase modulation.audulus
    71K
  • Thank you so much! It's late here so I'll go through it carefully tomorrow but at first glance it seems to be exactly what I have been looking for.
  • @Plurgid That's a great demo patch! I will be saving that middle C module as well, great stuff hidden in there.

    Mathematically they are equivalent, but sonically they have different characteristics. Phase modulation of a sine wave with itself comes very close to morphing it into a sawtooth wave, creating a pseudo lopass filter sort of a sound that is distinctive to the phase distortion casio and yamaha dx series. Regular frequency modulation has all sorts of fun sidebands, huzzah for side bands!

    You can contrast the difference between pm and fm when you look at two LFO signals being modulated by a square wave. One is being phase modulated, the other is being frequency modulated.image
    Screen Shot 2017-08-06 at 5.46.18 PM.png
    644 x 687 - 97K
    PM vs FM.audulus
    52K
  • Thank you very much @RobertSyrett. Very nice illustration.

    I made the simplest outline I could, even skipping an envelope. Is there an expression that would make FM work in this outline (I don't have a good grasp of the Phasor module, so I'm not sure whether I'm using it correctly)?
    IMG_0494.PNG
    2048 x 1536 - 118K
  • @Miur So you can actually open up the illustration and copy/paste the parts inside.

    image

    There is a little module in front of the oscillator designed to facilitate FM

    image


    Exponential FM expression is: exp2(o)*RefHz

    Linear FM iexpression is: Modulation*exp2(16*x-8)+RefHz

    Hope that helps :)
  • @RobertSyrett Thanks!

    I made this patch. Does it seem to be correct?

    Edit: Nvm the question about your module, I had misunderstood the syntax of conditional statements.
    Frequency Modulation test.audulus
    4K
    IMG_0496.PNG
    2048 x 1536 - 155K
  • @miur - I think you forgot to attach it?
  • @biminiroad, I was just in the middle of editing my post and exchange the patch/image for the updated versions :-).
  • @Miur Yep! You got the basic patch down, now you can customize it into your own module. You can chain these together to create complex algorithms and make far out overtones!
  • @RobertSyrett Thanks a lot for your help! I wonder about the expression. I'm used to seeing FM defined like this:

    x_c(t): carrier signal
    x_m(t): modulator signal

    x_c(t)=A*sin(2*pi*f+x_m(t))t

    Then of course you will get the sum of sidebands which can be calculated with the Bessel function and then I guess you should just be able to add those sidebands together, I think.

    1) Where does the part of the expression 2^(16*x-8) above come from?

    2) Also, if you increase the modulation index above 1 with your expression, you get more extreme results, until you end up with just noise.
  • 1) That 2^(16*x-8) is just exponential scaling for the index of the frequency modulation. It's not strictly required, but it seems to have a nice sweet spot. You should check out the @stschoen Linear FM oscillator, that's where I got that.

    2) Yeah, in digital systems you get aliasing above the nyquist frequency and it devolves into noise. Personally I don't mind so much, but there are limitations imposed by the standard sample rate when it applies to frequency modulation.
  • @RobertSyrett I'm very grateful for all the help I've received. And in addition I now have a very clear layout for PM synthesis as well!

    I found the thread where you and stschoen are discussing FM. Very informative! I had missed that thread previously.