Skip to content

Latest commit

 

History

History
45 lines (31 loc) · 3.36 KB

soundfonts.md

File metadata and controls

45 lines (31 loc) · 3.36 KB

Soundfonts

Soundfonts are a file format that contains audio samples and parameters that describe instruments based on those samples. The soundfont specification defines all the parameters and how synthesizers should interpret them, so that soundfonts will sound the same when used on different software/platforms.

The individual sounds that can be selected from a soundfont are called presets. Presets are organized into separate banks each containing up to 128 presets, with program numbers 0-127. Banks can be numbered from 0-16383, but generally only the first few banks are used for instruments, and bank 128 for percussion. Some soundfonts follow the General Midi (GM) specification, which defines a set list of instruments they should contain and their preset numbers. Other soundfonts have a random assortment of presets, or just one or two.

Adding Soundfonts

The soundfonts in the bankdir folder and its subfolders, defined in the config file, are those that will be available to FluidPatcher. You can add soundfonts by copying them to this folder, but to actually play the presets you must add them to a bank file.

Find the patches item in a bank file, such as the example below. Each patch begins with an indented name. For each preset you want to use, create a new patch and add the preset with the format <MIDI channel>: <soundfont file>:<bank>:<program>. Almost all keyboards will send notes on MIDI channel 1 by default. You can find the bank and program numbers of the presets in the soundfont by opening it with an editor such as the ones listed below. The fluidpatcher_gui.py script will list all the presets in a soundfont and let you hear what they sound like before adding them to a patch.

patches:
  Bright Piano:
	1: defaultGM.sf2:000:001
  Awesome Guitar Sound:
    1: coolguitars.sf2:000:099
  Spacey Synth:
	1: aliensounds.sf2:2:84

Obtaining Soundfonts

Many soundfonts, both free and paid, are available for download on the internet. A few sites are listed below, and many more can be found with a simple web search.

Soundfont editors such as those listed below can be used to modify existing soundfonts, or create them from scratch using audio samples.

The defaultGM.sf2 soundfont included with fluidpatcher is a small GM soundfont that is used in the example bank files included in this repository. If a user desires higher-quality GM sounds, it can be easily substituted with another (below are some examples) by simply renaming the new file. Better yet, create a symbolic link (on Unix-like systems) using the following commands:

mv defaultGM.sf2 liteGM.sf2
ln -s <new soundfont> defaultGM.sf2