Sunday, May 8, 2011

FM Synthesis: A short beginner's guide



As many of you know, the Yamaha DX7 is often one of the first synthesizers you come across while searching for a well known, cheap vintage synth. The DX7 is not a usual synth, however; it uses a different form of programming called Frequency Modulation. FM synthesis is not the type of thing you can learn from just by fiddling with knobs, especially since the DX7 uses only one knob for a data input. Last summer I owned a DX7 for a couple of months and purchased a used book on how to program it from someone online. While I eventually sold the DX7 because I found the user interface for programming too difficult, I still use FM synthesis on my computer using Native Instrument's FM8, a solid program that offers visual representations of the waves you're using and a spectrogram of the different frequencies and their harmonic content. For tutorial purposes, I will be demonstrating on a browser based FM synth from Angry Octopus (who's more recently created the famous Webotribe, a browser based version of the soon to be released Monotribe).


First, I'll explain the layout as clearly as I can, and what happens with FM synthesis. Open this page and you will see the browser based FM synth MiniFM. Unfortunately, the page won't let me save my pages and post the links to them directly here, so you will have to follow my directions. On the right side, we have 4 oscillators, each a sine wave. The graphic shows the ADSR aspect of the wave, which can be changed by dragging the white squares. The ratio knob to the right changes what ratio the freqency of the sine wave is. Detune is used for a slight change in the frequency of the wave. ModA, modF, and Vel are all modulation parameters from the left side. The last item on the right is a slider, called level, which is very important in FM synthesis. On the left, we have the feedback volume, which I will explain later, and the routing diagram. This routing technique can be changed to try to emulate different sounds or instruments. Below that is the modulation knobs, and the effect knobs, which I won't be using in the tutorial. Below that is a patch bank that can be flipped through. Feel free to flip through and see and hear the different sounds MiniFM has to offer, but for this tutorial you will need to start on the original demo1 patch.

FM synthesis works by having one or more oscillators modulating other oscillators that have an output. This is easily demonstrated on a synthesizer that has a fast LFO. By turning the LFO up while modulating the pitch of a wave, we can enter the audio range, meaning the LFO is moving at more than about 70Hz which is where the audio rage starts. This forces the original sound that was being modulated to become even higher and become a harmonic. This will be easier to see once you start playing with the app.

First and foremost, turn down feedback, all the modulation parameters, and all the effect parameters. These will cloud your judgement of the sound you are using, and should almost always be added at the end of your programming. On the right, take the level of oscillators 3 and 4 down to 0 on the right side. Take the ADSR envelopes of 1 and 2 and make them box-like so that the have no envelope, they only turn on and turn off. Set the ratio of oscillator 1 to 1.00 and 2 to 1.00, set their detunes to 0.0, and turn off modA, modF, and vel. Turn down the level of oscillator 2 to 0 for now, but we will soon change this. Oscillator 1 should be at full level.



When you press a key, you should only hear a sinewave, which is very dull and warm. This is becase oscillator 1 is the oscillator out, as we can see on the bottom of the routing algorithm. Nothing is happening to this oscillator so it is a rather boring sound. Now, we see that oscillator 2 is modulating oscillator 1 by looking at the algorithm chart. If the 2 box is above and connected to the 1 box, it is modulating it. If we raise the level of oscillator 2, we start to hear added harmonics to oscillator 1. Because the oscillators are the same ratio, we hear all the harmonics, which makes the output wave almost saw-like. Note that if you add the ratios that are not whole numbers, you get very rough, sometimes atonal sounds. If you raise the ratio of oscillator 2, we start to hear a square-like sound, because the output wave no longer has every harmonic, only the odd harmonics. This is the same characteristic as the wave found. Changing the parameters of the first oscillator, because it is the output oscillator, changes the sound output. For example, level on oscillator 1 is its volume, ratio is its pitch, detune is a total detune, and the envelope is the amplitude envelope.

Now, by changing the amplitude envelope of oscillator 2, we can change when the harmonics enter and exit the sound. We can also add oscillator 3 by turning up its level and changing its ratio and detune parameter. One interesting sound can be achieved by making oscillators 2 and 3 exactly the same amplitude and ratio wise, but then slightly detuning them in different directions. You will hear "beating" if you do this. Note that by adding oscillator 3 into the mix, we have to turn down both its level and oscillator 2's level in order to get the same effect as just oscillator 2 working. Finally, we can do even deeper by having oscillator 4, which is connected ot oscillator 3, gain in level. This adds harmonics to oscillator 3 which adds even more harmonics to oscillator 1, our output oscillator. Oscillator 4 also has a line connecting itself to itself, as seen in the algorithm diagram, which is the feedback symbol. If you turn up feedback, 4 will modulate itself, creating even more harmonics. The more harmonics you add, the brighter and harsher the sound will be.

It's important when using FM synthesis to consider what algorithm you are using, because changing the algorithm at the end will almost always ruin your sound if you are trying to recreate something. For example, a dull bass would not require large "stacks" of oscillators-- you do not need more than one modulating another. For a brighter, screechy guitar, you would need a stack of at least 3-- 3 modulating 2 modulating 1. Also, try looking through some of Angry Octopus's presets on the page-- he offers many inspiring ways to try to program.

FM8 by Native Instruments offers infinite routing, as the user can decide what modulates what. They also have a huge patch bank and a simple section that allows you to change the amplitude envelope and use an arpeggiator.

I hope you enjoyed this short tutorial, and if you have any questions, feel free to email me at thesynthesizersympathizer@gmail.com, and I'll add an addendum.

47 comments:

  1. Just wanted to say, this really helped me get going. Great tutorial, great writing, very easy to understand.

    ReplyDelete
    Replies
    1. The development of artificial intelligence (AI) has propelled more programming architects, information scientists, and different experts to investigate the plausibility of a vocation in machine learning. Notwithstanding, a few newcomers will in general spotlight a lot on hypothesis and insufficient on commonsense application. machine learning projects for final year In case you will succeed, you have to begin building machine learning projects in the near future.

      Projects assist you with improving your applied ML skills rapidly while allowing you to investigate an intriguing point. Furthermore, you can include projects into your portfolio, making it simpler to get a vocation, discover cool profession openings, and Final Year Project Centers in Chennai even arrange a more significant compensation.

      Data analytics is the study of dissecting crude data so as to make decisions about that data. Data analytics advances and procedures are generally utilized in business ventures to empower associations to settle on progressively Python Training in Chennai educated business choices. In the present worldwide commercial center, it isn't sufficient to assemble data and do the math; you should realize how to apply that data to genuine situations such that will affect conduct. In the program you will initially gain proficiency with the specialized skills, including R and Python dialects most usually utilized in data analytics programming and usage; Python Training in Chennai at that point center around the commonsense application, in view of genuine business issues in a scope of industry segments, for example, wellbeing, promoting and account.

      The Nodejs Projects Angular Training covers a wide range of topics including Components, Angular Directives, Angular Services, Pipes, security fundamentals, Routing, and Angular programmability. The new Angular TRaining will lay the foundation you need to specialise in Single Page Application developer. Angular Training

      Delete
  2. Very helpfull, but If you consider a free vst, FMMF bv delaMancha is als a great cool and unique instrument for creating Interesting sounds. Thanks for s haring your insight intocht FM .This post made it so much easier to understand.

    ReplyDelete
  3. If you can wrap your head around it - I'm trying to - Dexed's the ultimate FM synth freebie! It comes with a TON - many hundreds - of presets too. But it IS a beast to try to understand.
    If you can't find the presets, ask me on samspazz1@gmail.com and I'll give a legit. free link to them.

    ReplyDelete
  4. on the off chance that you are not wearing a watch or need to change the time on your framework you should simply tune in to the radio and it will give you a point by point time refresh!radio shqiptare online

    ReplyDelete
  5. This particular papers fabulous, and My spouse and i enjoy each of the perform that you have placed into this. I’m sure that you will be making a really useful place. I has been additionally pleased. Good perform! PANZER ARMSPANZER ARMS AR12panzer arms bp-12

    ReplyDelete
  6. ExcelR is the best institute for digital marketing certification course in Singapore known for the highest placements in top companies across the world. data science course syllabus

    ReplyDelete
  7. Thanks for posting the best information and the blog is very informative.Data science course in Faridabad

    ReplyDelete
  8. Thanks for posting the best information and the blog is very helpful.Data science course in Varanasi

    ReplyDelete
  9. i am glad to discover this page : i have to thank you for the time i spent on this especially great reading !! i really liked each part and also bookmarked you for new information on your site.
    best data science courses in bangalore

    ReplyDelete
  10. i am glad to discover this page : i have to thank you for the time i spent on this especially great reading !! i really liked each part and also bookmarked you for new information on your site.
    cyber security training in bangalore

    ReplyDelete
  11. i am glad to discover this page : i have to thank you for the time i spent on this especially great reading !! i really liked each part and also bookmarked you for new information on your site.
    best data science courses in bangalore

    ReplyDelete
  12. I want to leave a little comment to support and wish you the best of luck.we wish you the best of luck in all your blogging enedevors.
    data science course fees in bangalore

    ReplyDelete
  13. This post is very simple to read and appreciate without leaving any details out. Great work!
    best data science institute in hyderabad

    ReplyDelete
  14. I need to thank you for this very good read and i have bookmarked to check out new things from your post. Thank you very much for sharing such a useful article and will definitely saved and revisit your site...

    DevOps Training in Hyderabad

    ReplyDelete
  15. I am glad to discover this page. I have to thank you for the time I spent on this especially great reading !! I really liked each part and also bookmarked you for new information on your site.
    Data Science Course Syllabus

    ReplyDelete
  16. I want to leave a little comment to support and wish you the best of luck.we wish you the best of luck in all your blogging enedevors.
    business analytics courses

    ReplyDelete
  17. Extremely overall quite fascinating post. I was searching for this sort of data and delighted in perusing this one. Continue posting. A debt of gratitude is in order for sharing. data scientist course in delhi

    ReplyDelete
  18. Great to become visiting your weblog once more, it has been a very long time for me. Pleasantly this article i've been sat tight for such a long time. I will require this post to add up to my task in the school, and it has identical subject along with your review. Much appreciated, great offer. data science course in nagpur


    ReplyDelete
  19. I was basically inspecting through the web filtering for certain data and ran over your blog. I am flabbergasted by the data that you have on this blog. It shows how well you welcome this subject. Bookmarked this page, will return for extra. data science course in jaipur

    ReplyDelete
  20. I am glad to discover this page. I have to thank you for the time I spent on this especially great reading !! I really liked each part and also bookmarked you for new information on your site.
    Data Scientist Course in Delhi

    ReplyDelete
  21. I see some amazingly important and kept up to length of your strength searching for in your on the site
    data science training

    ReplyDelete
  22. I feel very grateful that I read this. It is very helpful and very informative and I really learned a lot from it.
    Best Refrigerator Repair Service in Hyderabad

    ReplyDelete
  23. Nice site, this is very nice mini FM. amazing design and features. Thanks for sharing these posting with all of us. whatsapp mod

    ReplyDelete
  24. Thank you so much for ding the impressive job here, everyone will surely like your post. best data science training institute in gurgaon

    ReplyDelete
  25. Thank you so much for doing the impressive job here, everyone will surely like your post.
    full stack development course

    ReplyDelete
  26. Amazingly by and large very interesting post. I was looking for such an information and thoroughly enjoyed examining this one. Keep posting. An obligation of appreciation is all together for sharing.data analytics course in rohtak

    ReplyDelete
  27. Thanks for the informative and helpful post, obviously in your blog everything is good..
    cyber security course in malaysia

    ReplyDelete
  28. It is perfect chance to make a couple of game plans for the future and the opportunity has arrived to be sprightly. I've scrutinized this post and if I may I have the option to need to suggest you some interesting things or recommendations. Perhaps you could create next articles insinuating this article. I have to examine more things about it!

    ReplyDelete
  29. 360DigiTMG, the top-rated organisation among the most prestigious industries around the world, is an educational destination for those looking to pursue their dreams around the globe. The company is changing careers of many people through constant improvement, 360DigiTMG provides an outstanding learning experience and distinguishes itself from the pack. 360DigiTMG is a prominent global presence by offering world-class training. Its main office is in India and subsidiaries across Malaysia, USA, East Asia, Australia, Uk, Netherlands, and the Middle East.

    ReplyDelete
  30. This is really very nice post you shared, i like the post, thanks for sharing..
    full stack development course

    ReplyDelete
  31. I finally found great post here.I will get back here. I just added your blog to my bookmark sites. thanks.Quality posts is the crucial to invite the visitors to visit the web page, that's what this web page is providing.data science course in rohtak

    ReplyDelete
  32. Extremely overall quite fascinating post. I was searching for this sort of data and delighted in perusing this one.
    Continue posting. A debt of gratitude is in order for sharing.data science course in warangal

    ReplyDelete
  33. I was basically inspecting through the web filtering for certain data and ran over your blog. I am flabbergasted by the data that you have on this blog. It shows how well you welcome this subject. Bookmarked this page, will return for extra.digital marketing training malaysia

    ReplyDelete
  34. Truly, this article is really one of the very best in the history of articles. I am a antique ’Article’ collector and I sometimes read some new articles if I find them interesting. And I found this one pretty fascinating and it should go into my collection. Very good work! data scientist course in surat

    ReplyDelete
  35. İnstagram takipçi satın al! İnstagram takipçi sitesi ile takipçi satın al sende sosyal medyada fenomen olmaya bir adım at. Sende hemen instagram takipçi satın almak istiyorsan tıkla:

    1- takipçi satın al

    2- takipçi satın al

    3- takipçi satın al

    ReplyDelete
  36. The blog and data is excellent and informative as well your work is very good and I appreciate well hopping for some more informative posts.
    Business Analytics Course in Gurgaon

    ReplyDelete
  37. Extremely overall quite fascinating post. I was searching for this sort of data and delighted in perusing this one.
    Continue posting. A debt of gratitude is in order for sharing.
    business analytics course in warangal

    ReplyDelete
  38. I was basically inspecting through the web filtering for certain data and ran over your blog. I am flabbergasted by the data that you have on this blog. It shows how well you welcome this subject. Bookmarked this page, will return for extra.https://360digitmg.com/course/certification-program-on-digital-marketing

    ReplyDelete
  39. Informative Post. The information you have posted is very useful and sites you have referred was good. Thanks for sharing.
    Data Science Course with Placement

    ReplyDelete
  40. I just got to this amazing site not long ago was actually captured with the piece of resources you have got here and big thumbs up for making such wonderful blog page!
    Data Scientist Course

    ReplyDelete
  41. I want to thank you for your time in this wonderful read which is really appreciable and put you in your favorites to see new things on your blog, a must-have blog!
    Business Analytics Course in Noida

    ReplyDelete
  42. Well done for this excellent article. and really enjoyed reading this article today it might be one of the best articles I have read so far and please keep this work of the same quality.
    Data Analytics Course in Noida

    ReplyDelete
  43. Really this article is truly one of the best in article history and am a collector of old "items" and sometimes read new items if i find them interesting which is one that I found quite fascinating and should be part of my collection. Very good work!
    Data Scientist Course in Gurgaon

    ReplyDelete