<< Chapter < Page Chapter >> Page >
John Chowning pioneered frequency modulation (FM) synthesis in the 1970s, and demonstrated how the technique could simulate a diversity of instruments such as brass, woodwinds, and percussion. FM synthesis produces rich spectra from only two sinusoidal oscillators, and more interesting sounds can be produced by using a time-varying modulation index to alter the effective bandwidth and sideband amplitudes over time. A LabVIEW VI is developed to implement the sound of a clarinet, and the VI can be easily modified to simulate the sounds of many other instruments.
This module refers to LabVIEW, a software development environment that features a graphical programming language. Please see the LabVIEW QuickStart Guide module for tutorials and documentation that will help you:
•Apply LabVIEW to Audio Signal Processing
•Get started with LabVIEW
•Obtain a fully-functional evaluation edition of LabVIEW

Overview

Frequency modulation synthesis ( FM synthesis ) produces incredibly rich spectra from only two sinusoidal oscillators; refer to FM Mathematics for a complete description of the spectral characteristics of FM synthesis. You can produce even more interestingsounds with a time-varying modulation index to alter the effective bandwidth and sideband amplitudes over time. This relatively simple modification to the basic FM equationcreates tones with time-varying spectra to emulate many types of physical musical instruments.

John Chowning pioneered FM synthesis in the 1970s and demonstrated how the technique could simulate instruments such as brass, woodwinds, and percussion. These techniques are the subject of this module.

Significance of time-varying spectra

Physical musical instruments produce audio spectra that evolve with time. A typical sound begins with some type of dynamic transient, for example, as pressure builds up within a brass instrument or when a percussion instrument is first struck.The sound continues with some type of quasi steady-state behavior when mechanical energy is continually applied, i.e., blowing on a flute, bowing a violin string, and repeatedly striking a gong. Once the mechanical energy input ceases, the soundconcludes by decaying in some fashion to silence.

Clearly the amplitude of the instrument's audio signal changes during the course of the tone, following the typical attack-decay-sustain-release (ADSR) envelope described in Analog Synthesis Modules . Even more important, the intensity of the higher-frequency spectral components changes as well. The high-frequency components are often more evident during the initialtransient. In fact, the dynamic nature of the spectra during the instrument's transient plays an important role in timbre perception.

Fm equation with time-varying modulation index

The basic FM equation with time-varying amplitude and modulation index is presented in :

y ( t ) = a ( t ) sin ( 2 π f c t + i ( t ) sin ( 2 π f m t ) )

You can easily model a physical instrument with this equation by causing the modulation index i ( t ) to track the time-varying amplitude a ( t ) . In this way, a louder portion of the note also has more sidebands, because the modulation index effectively controls the bandwidth of the FM spectra.

Chowning instruments

John Chowning's publication, The Synthesis of Complex Audio Spectra by Means of Frequency Modulation (Journal of the Audio Engineering Society, 21(7), 1973) , describes a basic structure to implement with the following parameters:

  • A MathType@MTEF@5@5@+=feaagaart1ev2aqatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLnhiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYb1uaebbnrfifHhDYfgasaacH8srps0lbbf9q8WrFfeuY=Hhbbf9v8qqaqFr0xc9pk0xbba9q8WqFfea0=yr0RYxir=Jbba9q8aq0=yq=He9q8qqQ8frFve9Fve9Ff0dmeaabaqaciGacaGaaeqabaWaaeaaeaaakeaacaWGbbaaaa@360D@ - peak amplitude
  • I max MathType@MTEF@5@5@+=feaagaart1ev2aqatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLnhiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYb1uaebbnrfifHhDYfgasaacH8srps0lbbf9q8WrFfeuY=Hhbbf9v8qqaqFr0xc9pk0xbba9q8WqFfea0=yr0RYxir=Jbba9q8aq0=yq=He9q8qqQ8frFve9Fve9Ff0dmeaabaqaciGacaGaaeqabaWaaeaaeaaakeaacaWGjbWaaSbaaSqaaiaab2gacaqGHbGaaeiEaaqabaaaaa@3910@ - maximum value of modulation index i(t)
  • I min MathType@MTEF@5@5@+=feaagaart1ev2aqatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLnhiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYb1uaebbnrfifHhDYfgasaacH8srps0lbbf9q8WrFfeuY=Hhbbf9v8qqaqFr0xc9pk0xbba9q8WqFfea0=yr0RYxir=Jbba9q8aq0=yq=He9q8qqQ8frFve9Fve9Ff0dmeaabaqaciGacaGaaeqabaWaaeaaeaaakeaacaWGjbWaaSbaaSqaaiaab2gacaqGPbGaaeOBaaqabaaaaa@390E@ - minimum value of modulation index i ( t ) MathType@MTEF@5@5@+=feaagaart1ev2aqatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLnhiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYb1uaebbnrfifHhDYfgasaacH8srps0lbbf9q8WrFfeuY=Hhbbf9v8qqaqFr0xc9pk0xbba9q8WqFfea0=yr0RYxir=Jbba9q8aq0=yq=He9q8qqQ8frFve9Fve9Ff0dmeaabaqaciGacaGaaeqabaWaaeaaeaaakeaacaWGPbGaaiikaiaadshacaGGPaaaaa@3887@
  • f c MathType@MTEF@5@5@+=feaagaart1ev2aqatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLnhiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYb1uaebbnrfifHhDYfgasaacH8srps0lbbf9q8WrFfeuY=Hhbbf9v8qqaqFr0xc9pk0xbba9q8WqFfea0=yr0RYxir=Jbba9q8aq0=yq=He9q8qqQ8frFve9Fve9Ff0dmeaabaqaciGacaGaaeqabaWaaeaaeaaakeaacaWGMbWaaSbaaSqaaiaadogaaeqaaaaa@3746@ [Hz] - carrier frequency
  • H MathType@MTEF@5@5@+=feaagaart1ev2aqatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLnhiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYb1uaebbnrfifHhDYfgasaacH8srps0lbbf9q8WrFfeuY=Hhbbf9v8qqaqFr0xc9pk0xbba9q8WqFfea0=yr0RYxir=Jbba9q8aq0=yq=He9q8qqQ8frFve9Fve9Ff0dmeaabaqaciGacaGaaeqabaWaaeaaeaaakeaacaWGibaaaa@3614@ - harmonicity ratio ( f m / f c MathType@MTEF@5@5@+=feaagaart1ev2aqatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLnhiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYb1uaebbnrfifHhDYfgasaacH8srps0lbbf9q8WrFfeuY=Hhbbf9v8qqaqFr0xc9pk0xbba9q8WqFfea0=yr0RYxir=Jbba9q8aq0=yq=He9q8qqQ8frFve9Fve9Ff0dmeaabaqaciGacaGaaeqabaWaaeaaeaaakeaacaWGMbWaaSbaaSqaaiaad2gaaeqaaOGaai4laiaadAgadaWgaaWcbaGaam4yaaqabaaaaa@3A0C@ )
  • duration [s] - duration of generated audio
  • w 1 ( t ) MathType@MTEF@5@5@+=feaagaart1ev2aqatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLnhiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYb1uaebbnrfifHhDYfgasaacH8srps0lbbf9q8WrFfeuY=Hhbbf9v8qqaqFr0xc9pk0xbba9q8WqFfea0=yr0RYxir=Jbba9q8aq0=yq=He9q8qqQ8frFve9Fve9Ff0dmeaabaqaciGacaGaaeqabaWaaeaaeaaakeaacaWG3bWaaSbaaSqaaiaaigdaaeqaaOGaaiikaiaadshacaGGPaaaaa@3986@ - prototype waveform for time-varying amplitude
  • w 2 ( t ) MathType@MTEF@5@5@+=feaagaart1ev2aqatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLnhiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYb1uaebbnrfifHhDYfgasaacH8srps0lbbf9q8WrFfeuY=Hhbbf9v8qqaqFr0xc9pk0xbba9q8WqFfea0=yr0RYxir=Jbba9q8aq0=yq=He9q8qqQ8frFve9Fve9Ff0dmeaabaqaciGacaGaaeqabaWaaeaaeaaakeaacaWG3bWaaSbaaSqaaiaaigdaaeqaaOGaaiikaiaadshacaGGPaaaaa@3986@ - prototype waveform for time-varying modulation index

The prototype waveforms are normalized in both dimensions, i.e., the range and domain are both zero to one. The prototype waveform w 1 ( t ) MathType@MTEF@5@5@+=feaagaart1ev2aqatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLnhiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYb1uaebbnrfifHhDYfgasaacH8srps0lbbf9q8WrFfeuY=Hhbbf9v8qqaqFr0xc9pk0xbba9q8WqFfea0=yr0RYxir=Jbba9q8aq0=yq=He9q8qqQ8frFve9Fve9Ff0dmeaabaqaciGacaGaaeqabaWaaeaaeaaakeaacaWG3bWaaSbaaSqaaiaaigdaaeqaaOGaaiikaiaadshacaGGPaaaaa@3986@ is converted to the time-varying amplitude as a ( t ) = A w 1 ( t ) . The prototype waveform w 2 ( t ) MathType@MTEF@5@5@+=feaagaart1ev2aqatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLnhiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYb1uaebbnrfifHhDYfgasaacH8srps0lbbf9q8WrFfeuY=Hhbbf9v8qqaqFr0xc9pk0xbba9q8WqFfea0=yr0RYxir=Jbba9q8aq0=yq=He9q8qqQ8frFve9Fve9Ff0dmeaabaqaciGacaGaaeqabaWaaeaaeaaakeaacaWG3bWaaSbaaSqaaiaaikdaaeqaaOGaaiikaiaadshacaGGPaaaaa@3987@ is converted to the time-varying modulation index as i ( t ) = ( I max I min ) w 2 ( t ) + I min .Representative Chowning FM instrument specifications are described in the PDF document chowning_instruments.pdf . The screencast video walks through the complete process to implement the Chowning clarinet instrument in LabVIEW.

Download the finished VI: chowning_clarinet.vi . Refer to TripleDisplay to install the front-panel indicator used to view the signal spectrum.

You can easily adapt the VI to create the remaining Chowning instruments once you understand the general implementation procedure.

[video] Implement a Chowning FM instrument in LabVIEW

Get Jobilize Job Search Mobile App in your pocket Now!

Get it on Google Play Download on the App Store Now




Source:  OpenStax, Musical signal processing with labview (all modules). OpenStax CNX. Jan 05, 2010 Download for free at http://cnx.org/content/col10507/1.3
Google Play and the Google Play logo are trademarks of Google Inc.

Notification Switch

Would you like to follow the 'Musical signal processing with labview (all modules)' conversation and receive update notifications?

Ask