[Search for users] [Overall Top Noters] [List of all Conferences] [Download this site]

Conference napalm::commusic_v1

Title:* * Computer Music, MIDI, and Related Topics * *
Notice:Conference has been write-locked. Use new version.
Moderator:DYPSS1::SCHAFER
Created:Thu Feb 20 1986
Last Modified:Mon Aug 29 1994
Last Successful Update:Fri Jun 06 1997
Number of topics:2852
Total number of notes:33157

30.0. "FM Synthesis" by SAUTER::SAUTER () Wed Sep 26 1984 14:51

After some research and much patience I have finally obtained a reprint of
John Chowning's original article on FM Synthesis.  This is a technique
which uses only a few time-varying parameters to produce a rich variety of
musical sounds.  It's advantage over Additive Synthesis is the much smaller
number of parameters required to specify a complex sound.  Much has been
written about this technique, but unless you've read the original article
the later ones are hard to understand.  The microfiche printer in ZKO is
broken (it has apparently been broken for at least six months) so I can't
offer anybody hardcopy, but if you'll send me mail I'll loan you the
microfiche.  What I have is actually volume 1 of the Computer Music
Journal; the reprint of John's article is on page 46 of the second issue. 
    John Sauter
T.RTitleUserPersonal
Name
DateLines
30.1BARNUM::JWALTONWed Oct 03 1984 16:1516
	I would be VERY interested in the material. I don't know
	what FM synthesis is, but any thing that only requires a
	few parameters to specify a sound, thats what I'm looking
	for.
	I'm trying to design a sampled sound driver for guitar
	that I could use on stage, but
	with the system I've come up with it would take 6 sec's
	(give or take a few mil's) to change sounds, pretty long
	huh?? that's wit a 19.6Kb serial bus from floppies.
	Any process that uses small data packets is worth looking
	into. For that matter ANY-thing is worth looking into
	before you build, in case there is a better idea!


	john...
30.2So what is it?VFOVAX::BELLTue Jun 12 1990 13:2810
    	I couldn't seem to find this anywhere, so at least I used a valid
    base note (won't have to move it!).
    
    	What is FM synthesis?  Really?  What exactly do the ops do, how do
    they modify each other, and how can you predict what the sound will be
    using a particular algorithm?  How do you read an algorithm chart?  I'm
    interested particularly in the FB01 class (4 op) but explanations
    including 6 are fine, too.  Thanks!
    
    Mike
30.3credentials, pleaseMILKWY::JANZENTom 228-5421 FXO/28Tue Jun 12 1990 13:472
    Please list any classes in math and engineering you have taken. Thanks
    Tom
30.4NutshellWEFXEM::COTEAs seen on TV!Tue Jun 12 1990 13:4747
    Trying to explain FM synthesis without graphics is like trying to
    explain what a trombone is without moving your arms, but here goes...
    
    An operator is, for all practical purposes, an oscillator. In early
    FM machines the only wave an operator would produce was a sine. The
    programmer can set the amplitude and/or the level of the operator.
    Today, the programmer can also choose from a variety of alternative
    waveforms; saw-up, triangle, S&H, etc.
    
    Yamaha (THE name in FM) uses "algorhythms" to determine how multiple
    operators interact with each other. Algorhythms are graphically
    represented like this...
    
                   2   4
                   |   |        or     
                   1   3                1  2  3  4
    
    ...or in a variety of other configurations.
    
    Only those operators on the bottom of the stack can be heard. They are
    called carriers. Any operator not on the bottom is a modulator and
    cannot be heard. Only it's effect on a carrier can be heard. Any
    operator can be either a carrier or a modulator depending on the 
    algorhythm.
    
    The rightmost example above could be considered analogous to 4 drawbars
    on a hammond. Pull out one drawbar and you get a single tone. Pull out
    another and you'll have 2 tones, etc. All the drawbars are "carriers".
    
    But now suppose you want to have the output of one operator modulate
    a second? The first op is now a modulator, and the second is a carrier.
    The mod changes the wave form, NOT THE FREQUENCY, of the carrier. By
    modulating the frequency or amplitude of the modulator you can change
    the waveform of the carrier. By stacking modulators as such....
    
            4->3->2
                  |
                  1
    
    ...you can have 1 modulator acting as the input to another which in
    turn modulates a third which in turn modulates a carrier. The waveform
    can become incredibly complex.
    
    Since each operator can have it's own envelope, not only can you
    develope complex waveforms, but they can change over time....
    
    Edd
30.5Guten Dealin! I think it's underrated...VFOVAX::BELLTue Jun 12 1990 15:0216
    	RE: .3
    		Geometry
    		Algebra I, II, III
    		Trigonometry
    		Analytic Geometry
    		Calculus I, II, III
    		Differential Equations
    
    	O.K.?
    
    	RE: .4  
    		Thanks, Edd.  Good synopsis.  I still wonder, though, how
    	(this is where the above comes in) the waveform is modified. 
	Added?  Subtracted?  etc.
    
    	Mike
30.6exVFOVAX::BELLTue Jun 12 1990 15:178
    RE: .3
    
    	Also:
    
    	Statics
    	Particle Dynamics (w/ waves)
    
    Mike
30.7CongratulationsMILKWY::JANZENTom 228-5421 FXO/28Tue Jun 12 1990 15:346
    Good news! your education qualifies you to use FM synthesis!
    I will try to list a couple references later.  One has the original FM
    journal article in it.
    However, other later books at pro music stores will have more practical
    advice for FM MIDIots.
    Tom
30.8How the math worksKOBAL::DICKSONTue Jun 12 1990 15:3568
    No, it is worse than that.  Much worse.
    
    The modulator changes the instantaneous frequency of the carrier.
    It does this so fast that the effect is not perceived as a variation
    in frequency like a tremolo, but in a rearrangement of the frequency
    spectrum of the carrier.  To get a tremolo you vary the frequency
    very slowly, say 10 times per second.  In FM the modulator is typically
    running at the frequency of the carrier or higher.
    
    Restricting the discussion to sine waves for the moment (the math is
    much easier to follow), the effect of a modulator is to cause the
    carrier to shift energy out of its center frequency and into sidebands.
    The amount of energy thus shifted is controlled by the AMPLITUDE of
    the modulator.  If the modulator is at the same amplitude as the
    carrier essentially ALL of the energy squishes out into the sidebands.
    The more enegry that goes into the sidebands, then the more sidebands
    there are, and the louder each of them is.
    
    The sidebands are spaced symmetrically on either side of the carrier.
    The spacing (in frequency) between the carrier and the sidebands is
    controlled by the FREQUENCY of the modulator.
    
    Say the carrier is at 1000 Hz.  If the modulator is off you get a
    single tone at 1000Hz.  If the modulator is going at 250 Hz, then
    you get the carrier at 1000 (slightly less loud than before) plus
    two additional tones at 1000-250 = 750Hz and 1000+250 = 1250 Hz.
    Plus two *more* tones at 1000-500 and 1000+500, and so on for further
    multiples of the modulator frequency.  Each additional set of sidebands
    is at lower volume than the previous.
    
    			|
    		    |	|   |
    		    |	|   |
    		|   |	|   |	|
          -----------------------------
    		       1K
    
    Now, if the modulator is itself being modulated, then the total effect
    is that the sidebands get their own sidebands, and amplitudes and
    spacing controlled by the modulator's modulator.
    
    			|
    		    |	|   |
    		    |	|   |
    	       .|. |||	|  ||| .|.
          -----------------------------
    		       1K
    
    Note when doing the math that if you get a negative frequency it wraps
    around with inverted phase.  So if your carrier is 1000 Hz and you are
    working on the 5th-order sideband at 1000 - 5*250 = -250Hz, what this
    means is that the signal is at 250 Hz but 180 degrees out of phase. 
    The effect of this is it SUBTRACTS from any signal that is already at
    250 Hz.  So again starting at 1000 the first lower sideband is at 750,
    the second at 500, the 3rd at 250, the 4th at zero (you can't hear this
    one), the 5th upside down at 250, the 6th upside down at 500, and so
    on.  Remember each gets lower in amplitude than the one before it.
    
    So while the 5th sideband actually subtracts energy from the 3rd in
    this case, it doesn't take all of it away, and the 6th takes even less
    from the from the 2nd.
    
    Going UP in frequency all this messy subtraction stuff doesn't happen.
    
    Now, everything I've said is for everything being a sine wave.  You
    make it be something else and it gets LOTS more complicated.  In a
    Yamaha FB01 all you get are sine waves to work with.  In a TX81Z you
    get a choice of 8 different waves for each of the 4 operators. 
30.9I have some of the picture...VFOVAX::BELLTue Jun 12 1990 15:5617
    	Is this right:
    
    	If I had a sine wave generator, and two pitch shifters, I could
    emulate FM synthesis as follows:
    
    	                 pitch up 250  
    		sine ---<               >----- out
    			 pitch down 250 
    
    
    	Was that right, just for one modulator?  I don't think so, 'cause
    the modulator and carrier make a single wave, right?  So, somehow, the
    modulator makes the carrier look like the fundemental plus all the
    harmonic (well, the banded, whatever) frequencies put together in one
    wave, right?
    
    Mike
30.10MIZZOU::SHERMANECADSR::SHERMAN 235-8176, 223-3326Tue Jun 12 1990 16:0410
    Keep in mind that "How does FM synthesis work?" and "How does
    Yamahahahaha do FM synthesis?" are almost mutually exclusive questions.
    Even the Y* FM theory does not quite hold true when you hook up a scope
    to the audio output.  There are other synths out there that hold
    closer to the "official" theory.  I think of it as another theory about
    how to create "any" sound using mathematical means.  Compare it to
    sampling, Fourier series applications, "LA" synthesis (and whatever
    new methods are being constantly dreamed up) and so forth.
    
    Steve
30.12doneWEFXEM::COTEAs seen on TV!Tue Jun 12 1990 16:181
    
30.13Now I'll say the B-wordGUESS::YERAZUNISGimme a donut.Tue Jun 12 1990 21:5533
    The preceding explanation of where the wave energies go is close to
    right but not quite.  As long as the modulator energy is low relative
    to the carrier and the modulator and carrier frequencies are
    harmonically related, it's correct, but as you whomp up the modulator
    to high values, or detune it relative to the carrier, it gets VERY weird.
    
    First weirdness: remember how all those little harmonics at +- the 
    modulator frequency were all spread out in a nice bell curve?  Well,
    as you increase the modulator energy, you start to get MORE energy 
    out in the sidebands than at the center frequency.  In fact, there
    is a level of modulator energy that has ALL of the energy in the side
    bands and none at the carrier frequency (it's called the first
    Bessel Null).  Just what the relative distribution of energy 
    between center frequency and sidebands is can be calculated by
    (guess what) Bessel functions.  
    
    Second Weirdness: if the carrier and modulator aren't harmonically
    related then the sidebands aren't single simple spikes, they are
    broad swaths that correspond to a distribution of energy across 
    all frequencies in the band, without any particular frequency 
    being dominant.  Back around .6, the example was for a 1000Hz
    carrier and a 250 Hz modulator- which are in tune, just 2 octaves
    apart.  If the situation had been a 1000 Hz carrier and a 924Hz
    (for example) modulator, the sidebands would have been swathlike
    areas, not simple spikes.
    
    At low levels of modulation, with carrier and modulator at
    non-related frequencies, the effect is very "metallic" or "bell-like".
    As you increase the modulation, it starts to sound more and more
    like untuned noise (which makes sense, in a way).
    
    	-Bill
                                                        
30.14Can you retrofit waves to ops and alg's?VFOVAX::BELLWed Jun 13 1990 09:228
    	Ok.  I've got a better idea.  But how do you go about trying to
    emulate more common analog waves?  For instance (on a sine wave FM
    only), how would you make a sawtooth (isn't that with only odd harmonic
    overtones)?  "Evolution" is a patch I've played around with on the
    DX-7.  How did they make that sound like strings?  Trial and error?  Or
    can you predict the noise?
    
    Mike
30.15VFOVAX::BELLWed Jun 13 1990 09:261
    	What I meant was, "I have a better idea of what's going on."
30.16Controlling Non-Harmonic SidebandsAQUA::ROSTI&#039;ll do anything for moneyWed Jun 13 1990 09:4215
    
    I have recently started mucking about with amplitude modualtion on my
    SQ-80.  The AM is pretty primitive, you can only use two of the three
    oscillators, and the envelopes are disabled.  Still, it's possible to
    create some, eh, interesting sounds....although if you attempt to use
    waveforms with much harmonic content, things get dissonant damn quick.
    I've already found waveforms like sine and "4 octs" (an ESQ waveform
    that has four octaves of a sine stacked) work well, but things like
    sawtooths just create too many non-harmonic sidebands.
    
    On FM machines that allow non-sine operators, can you actualy create
    non-dissonant sounds with them?  If so, how does this work?  Is the
    enveloping really important to make this work?
    
    						Brian
30.17the original intent was not prettyMILKWY::JANZENTom 228-5421 FXO/28Wed Jun 13 1990 10:0615
    You should keep in mind that FM was developed by a composer who was
    ineterested in non-harmonic sounds for the purposes of making thickly
    textured non-traditionally tuned music, not for doing string sweetening
    and horn fillers.
    
    The Synthesis of Complex Audio Spectra by Means of Frequency
    Modulation.  John Chowning. in "Foundations of Computer Music." ed. by
    C. Roads and J. strawn.  MIT press 1985.
    includes:
    Improved FM Audio Synthesis Methods for Real-Time Digital Music
    Generation.  The Simulation of Natural Instrument Tones using FM with a
    Complex Modulating Wave.  A derivation of the spectrum of FM with a
    Complex Modulating Wave.  Organizational Techniques for c:m Ratios in
    Frequency NModulation.  
    Tom
30.18work backwardsKOBAL::DICKSONWed Jun 13 1990 10:0910
    Yes, you can create non-dissonant sounds.
    
    As for how you make an FM synth sound like, say, a violin, what you
    do is first understand what a violin sounds like.  The easiest way to
    do this is run the sound of a real violin through a spectral anlysis
    program and look at where the harmonics go.  Then, understanding how FM
    works you work backwards to the proper configuration of ops that
    would generate something close to what the spectrum looks like.
    
    (MacRecorder for the Mac is a cheap way to do this analysis.  $160)
30.19Chaos is easyQUIVER::PICKETTDavid - $ cat &gt; | ccWed Jun 13 1990 12:2210
    re -.1
    
    Yes, but it's much easier to create radically dissonant sounds. ;^)
    
    Just try moving any of the freq ratios even just a little bit. Things
    go nuts fast. 
    
    dp (who loves what the TZ's non-sine carriers do to programs based
        originally on sine carriers)