FluidSynth is a real-time software synthesizer based on
the SoundFont 2 specifications. It can read MIDI events
from MIDI input devices or files and render them to an
audio device using SoundFont instrument banks. It can
also play MIDI files. Other features include real time
effect control and a powerful API for embedding
FluidSynth in other programs.