SoundFont ou AWE SoundFont est un format de fichier de fonte sonore mise au point par la société E-mu pour Creative Labs, permettant de stocker dans un fichier au format .sbk
(pour SoundFont Bank) puis .sf2
(pour SoundFont Bank Version 2) ou .sfark
(fichier d'archive obsolète de Melody Machine, remplacé par sf2), des échantillons sonores, au format WAV ou FLAC (compression sans perte), puis de les organiser sous forme d' « instruments » pilotables en MIDI, le tout étant géré au sein même de l' ordinateur.
Le format .sf3
pour la version 3, utilise des échantillons sonores compressés au format Ogg Vorbis[1].
Le format .sfz
, qui existe en 2 versions, ont des spécifications ouvertes sur le site SfzFormat[2].
Le format SoundFont requiert un matériel ou un environnement logiciel compatible avec ce format. Creative Labs le considère comme étant public et favorise son adoption en tant que standard ouvert, en proposant de la documentation et des outils aux développeurs et musiciens souhaitant s'investir dans l'utilisation de ce format[3].
Certaines cartes son sophistiquées et onéreuses utilisent des « tables d'ondes » (wavetables en anglais) pour la lecture des fichiers MIDI (lesquels ne contiennent aucun son, mais uniquement des instructions de lecture de chaque note ou sonorité). Contrairement à une synthèse classique (additive, soustractive...), ce type de synthèse utilise des formes d'ondes numérisées codées en qualité CD et le plus souvent issus d'instruments réels. La banque contient, en plus des sons, des informations sur le comportement du son en fonction de la durée (lecture en boucle, effets de vibrato, diminution progressive du volume…).
Les banques peuvent se conformer au standard General MIDI ou aller plus loin et offrir plus de liberté en incluant toutes sortes de sons (par exemple du chant, des boucles de batterie, etc.).
Différents formats existent :
Le format SoundFont étant une propriété de Creative Labs, la plupart des solutions matérielles compatibles SoundFont sont issues de la gamme de cartes sons SoundBlaster de la marque. Voici une liste non exhaustive des périphériques ou séries de périphériques matériels désignés comme étant compatibles avec le format SoundFont 1.x ou 2.x :
Il existe des logiciels permettant de lire des fichiers MIDI avec des banques de sons SoundFont ou autres. Ceux-ci utilisent la puissance de calcul du processeur de l'ordinateur, peu importe si le périphérique audio supporte ou non le format SoundFont.
QuickTime peut exécuter des fichiers MIDI en utilisant des fichiers SoundFont (.sf2) ou DLS. Il est alors nécessaire de déplacer ou recopier les fichiers SoundFont (extension .sf2 ou .dls) sous C:\Windows\system32\Quicktime (pour Windows, sous ~/Library/Audio/Sounds/Banks pour Mac OS X). Dans le menu Edition / Préférences / Préférence de Quicktime / Musique, il suffit de choisir le fichier SoundFont à utiliser en cliquant sur un des boutons ronds à gauche du nom. Les changements ne sont pris en compte qu'au prochain démarrage de QuickTime.
Dans le monde du logiciel libre, il existe un lecteur très populaire permettant de jouer des fichiers MIDI à partir de fichiers SoundFont, DLS ou même de patches issus de la carte son Gravis Ultrasound. Lors de sa création par Tuukka Toivonen, ce lecteur open-source se nommait TiMidity, pour devenir ensuite TiMidity++ lorsque le projet a été repris par une équipe de développeurs bénévoles. Le lecteur est disponible sur plusieurs plates-formes, dont Linux et Windows. On peut également citer le logiciel FluidSynth (qui fonctionne sous Mac OS X, FreeBSD, Linux et Windows).
Il existe également d'autres alternatives permettant de lire des fichiers MIDI à l'aide de SoundFonts sans disposer d'une carte son compatible SoundFont, comme « SynthFont »[5] ou encore rgc:audio sfz, qui est un plugin VSTi plutôt destiné à la création musicale.
En freeware, le logiciel VirtualMIDISynth (utilisant la bibliothèque BASSmidi) est un « synthétiseur » utilisant des SoundFonts, implémenté en tant que pilote multimédia Windows et accessible en tant que port MIDI Out standard[6].
Les cartes son supportant les SoundFonts de manière physique (matérielle) ont une latence très faible. Elles permettent de jouer avec un clavier maître MIDI, sans nécessiter de pilotes ASIO. Tous les logiciels émulant les SoundFonts ont une latence plus importante, y compris ceux de dernière génération (type E-mu Emulator X). Cette latence génère un décalage (retard) perceptible qui peut être gênant dans le jeu.
En shareware, l'éditeur de partitions Harmony Assistant permet d'importer des fichiers .sf2 dans son échantillonneur. Cela se fait instrument par instrument pour compléter ou remplacer les échantillons de la banque de sons fournie dans le logiciel. Il n'y a alors aucune latence lors du jeu de la musique, et une carte son compatible n'est pas requise.
Plusieurs logiciels d'édition sont disponibles :
Les fichiers SoundFont contenant des sons non compressés au format WAV, leur taille varie énormément en fonction de ces sons, stockés au sein même du fichier.
Si la plupart des SoundFonts ne contenant que quelques instruments ne sont pas très gourmandes en mémoire, d'autres sont beaucoup plus volumineuses, surtout lorsqu'il s'agit de banques complètes d'instruments organisés selon la norme General MIDI, comportant pour la plupart 128 instruments, sans compter les kits de batterie. De telles banques peuvent faire très facilement 8 Mo, la plupart atteignent ou dépassent les 32 Mo, certaines peuvent même aller jusqu'à 128 voire 256 Mo, et même au-delà (voir ci-dessous).
Afin de réduire le poids des fichiers SoundFont en vue d'en faciliter la distribution sur Internet, différents formats ont été créés avant l'apparition du format sf2. Les sociétés ayant défini ces formats n'étant pas toujours pérennes et les spécifications n'étant pas toujours ouvertes, il est aujourd'hui difficile de les décompresser. Le format sfArk créé par Melody Machine peut encore être converti en format sf2 grâce au logiciel libre sfarkxtc et sa bibliothèque spécialisée sfarklib[11]. La société ayant créé le format sfPack n'existe plus, mais on peut encore trouver l'archive du logiciel pour Windows sur internet. Enfin sfzip est une archive zip comportant le fichier de description et les sons[12].