Varias muestras de onda (una por cada nota o grupo de notas) forman un instrumento. Los bancos agrupan uno o varios instrumentos. Dentro de cada banco, cada instrumento está asociado a un número denominado program number o patch number. Los bancos de SoundFont (archivos con extensión .sf2) pueden incluir definiciones desde 1 hasta 128 instrumentos y un conjunto de percusión.
ejemplo del contenido de un archivo .SF2:
..Banco SF2
.... Patch 1
........ Instrument 1=guitar clean (wav1, wav2 + wav3, ...)
........ Instrument 2=piano (wav1a+wav1b, wav1c+wav1f,...)
.... Patch 2
........ Instrument 2=saxofon (wav1a+wav1b, wav1c+wav1f,...)
.... Patch 127
........ Instrument 2=piano (wav1a+wav1b, wav1c+wav1f,...).
dentro de los soundfonts mas conocidos se encuentra FluidSynth, SGM, entre otros.
Instalacion de un Soundfont en Linux Ubuntu.
Como ya sabemos un soundfont esta compuesto por 1 archivo .sf2, el cual comunmente viene en un pack .zip, .rar o .sfark. El archivo .sf2 comunmente es guardado en /usr/share/sounds/sf2/. y puedes instalar cuantos archivos gustes.
Utilizando Soundfonts en Linux Ubuntu.
para utilizar los soundfonts es necesario instalar Timidity (sintetizador, reproductor midi).
sudo apt-get install timidity
Para configurar que timidity utilice uno de nuestros soundfonts, hay que modificar el archivo /etc/timidity/timidity.conf y agregar el soundfont que queremos utilizar:
# Instrument configuration file for timidity
# $Id: timidity.cfg,v 1.7 2005/09/03 19:26:03 hmh Exp $
# You can change just about every option in TiMidity++ using
# This config file. Please refer to the timidity.cfg(5) manpage
# for more details
## If you have a slow CPU, uncomment these:
opt EFresamp=d #disable resampling
opt EFvlpf=d #disable VLPF
opt EFreverb=d #disable reverb
opt EFchorus=d #disable chorus
opt EFdelay=d #disable delay
opt anti-alias=d #disable sample anti-aliasing
opt EWPVSETOZ #disable all Midi Controls
opt p32a #default to 32 voices with auto reduction
opt s32kHz #default sample frequency to 32kHz
opt fast-decay #fast decay notes
## If you have a moderate CPU, try these:
#opt EFresamp=l
#opt EFreverb=g,42
#opt EFchorus=s
#opt s32kHz
#opt p64a
# opt EFreverb=0
# opt EFchorus=0
# Disabling some of the Midi Controls can help with the CPU usage a lot.
# The same goes to the VLPF, sample anti-aliasing and effects such as
# reverb and chorus
# Include a configuration for the selected patchset or soundfont
# By default, try to use the instrument patches from freepats:
# source /etc/timidity/freepats.cfg
source /etc/timidity/fluidr3_gm.cfg
# soundfont /usr/share/sounds/sf2/SGM-V2.01.sf2 order=0
# soundfont /usr/share/sounds/sf2/Unison.SF2 order=0
# soundfont /usr/share/sounds/sf2/PC51f.sf2 order=0
# soundfont /usr/share/sounds/sf2/Ultimate.SF2 order=0
# soundfont /usr/share/sounds/sf2/Hollywood.SF2 order=0
En este caso queda habilitado Fluid3synth previamente instalado via apt-get. En caso de querer utilizar el Unison.SF2 solo basta con comentar la linea source /etc/timidity/fluidr3_gm.cfg y descomentar la linea del Unison.
Para que los cambios sean habilitados hay que reiniciar Timidity con el comando /etc/init.d/timidity restart.
fuentes:
http://www.myriad-online.com/en/sharedxp/sfonts/spindex.htm
http://www.yio.com.ar/musicapc/soundfonts/
...