The first widespread technology to be used in sound cards was Frequency Modulation, or FM , which was developed in the early 1970s by Dr John Chowning of Stanford University. FM synthesisers produce sound by generating a pure sine wave, known as a carrier, and mix it with a second waveform, known as a modulator. When the two waveforms are close in frequency, a complex waveform is produced. By controlling both the carrier and the modulator its possible to create different timbres, or instruments.
Each FM voice requires a minimum of two signal generators, commonly referred to as "operators". Different FM synthesis implementations have varying degrees of control over the operator parameters. Sophisticated FM systems may use 4 or 6 operators per voice, and the operators may have adjustable envelopes which allow adjustment of the attack and decay rates of the signal.
Yamaha was the first company to research and invest in Chowning's theory, which led to the development of the legendary DX7 synthesiser. Yamaha soon realised that mixing a wider range of carriers and modulators made it possible to create more complex timbres, resulting in more realistic sounding instruments. Their OPL3 synthesiser hardware is the de facto standard for games cards, and uses parameters downloaded from the driver software to control cascaded FM oscillators to generate a crude analog of acoustic and electronic musical instruments.
Although FM systems were implemented in the analogue domain on early synthesiser keyboards, more recent FM synthesis implementations are done digitally. FM synthesis techniques are very useful for creating expressive new synthesised sounds. However, if the goal of the synthesis system is to recreate the sound of some existing instrument, this can generally be done more accurately with digital sample-based techniques, such as WaveTable Synthesis
A common method for generating sound electronically on a PC. Output is produced using a table of sound samples -actual recorded sounds - that are digitised and played back as needed. By continuously rereading samples and looping them together at different pitches, highly complex tones can be generated from a minimum of stored data without overtaxing the processor.