# SoundFont

SoundFont is a brand name that collectively refers to a file format and associated technology that uses sample-based synthesis to play MIDI files. It was first used on the Sound Blaster AWE32 sound card for its General MIDI support.
SoundFont is a registered trademark of Creative Technology, Ltd., and the exclusive license for re-formatting and managing historical SoundFont content has been acquired by Digital Sound Factory.

## Specification

The newest version of the SoundFont file format is 2.04 (or 2.4). It is based on the RIFF format.

## History

The original SoundFont file format was developed in the early 1990s by E-mu Systems and Creative Labs. A specification for this version was never released to the public. The first and only major device to utilize this version was Creative's Sound Blaster AWE32 in 1994. Files in this format conventionally have the file extension of .SBK.
SoundFont 2.0 was developed in 1996. This file format generalized the data representation using perceptually additive real world units, redefined some of the instrument layering features within the format, added true stereo sample support and removed some obscure features of the first version whose behavior was difficult to specify. This version was fully disclosed as a public specification, with the goal of making the SoundFont format an industry standard. All SoundFont 1.0 compatible devices were updated to support the SoundFont 2.0 format shortly after it was released to the public, and consequently the 1.0 version became obsolete. Files in this and all other 2.x formats (see below) conventionally have the file extension of .SF2.
Version 2.01 (or 2.1) of the SoundFont file format was introduced in 1998, with an E-mu sound card product called the Audio Production Studio. This version added features allowing sound designers to configure the way MIDI controllers influence synthesizer parameters. It is bidirectionally compatible with 2.0, which means that synthesizers capable of rendering 2.01 format will also by definition render 2.0 format, and synthesizers that are only capable of rendering 2.0 format will also read and render the new format, but just not apply the new features.
SoundFont 2.04 was introduced in 2005 with the Sound Blaster X-Fi. The 2.04 format added support for 24-bit samples. The 2.04 format is bidirectionally compatible with the 2.01 format, so synthesizers that are only capable of rendering 2.0 or 2.01 format would automatically render instruments using 24-bit samples at 16-bit precision.

## Functionality

MIDI files do not contain any sounds, only instructions to play them. To play such files, sample-based MIDI synthesizers use recordings of instruments and sounds stored in a file or ROM chip. SoundFont-compatible synthesizers allow users to use SoundFont banks with custom samples to play their music.
A SoundFont bank contains base samples in PCM format (the audio data format most commonly used in WAV containers) mapped to sections on a musical keyboard. A SoundFont bank also contains other music synthesis parameters such as loops, vibrato effect, and velocity-sensitive volume changing.
SoundFont banks can conform to standard sound sets such as General MIDI, or use other wholly custom sound-set definitions like Roland GS and Yamaha XG.

## SoundFont creation software (.sf2 format)

Several .sf2 editors are available:
* Vienna from Creative Labs, requiring a particular sound card (such as Sound Blaster)
* Viena (with a single "n"), created in 2002
* Swami is a collection of free software for editing and managing musical instruments for MIDI music composition, used mainly under Linux
* Polyphone, free editor for Windows, Mac OS and Linux created in 2013