FluidSynth

FluidSynth, formerly named iiwusynth, is a free open source software synthesizer which converts MIDI note data into an audio signal using SoundFont technology without need for a SoundFont-compatible soundcard. FluidSynth can act as a virtual MIDI device, able to receive MIDI data from any program and transform it into audio on-the-fly. It can also read in SMF (.mid) files directly. On the output side, it can send audio data directly to an audio device for playback, or to a Raw or Wave file. It can also convert a SMF file directly to an audio file in faster-than-real-time. The combination of these features gives FluidSynth the following major use cases:
 * Synthesizing MIDI data from another application directly to the speakers,
 * Synthesizing MIDI data from another application, recording the output to an audio file,
 * Playing a MIDI file to the speakers,
 * Converting a MIDI file to a digital audio file.

The size of loaded SoundFont banks is limited by the amount of RAM available. There is a GUI for FluidSynth called Qsynth, which is also open source. Both are available in most Linux distributions, and can also be compiled for Windows. Windows binary installers are not distributed alone and are bundled with QSynth.

It features microtonal support and was used in the MicrotonalISM project of the Network for Interdisciplinary Studies in Science, Technology, and Music. A Max/MSP plugin is available from IRCAM.

The core synthesizer is written as a C library with a large application programming interface (API). Partial bindings for Python, Ruby, Haskell, and .NET Framework are available. It has also been converted into a LV2 plugin, which has enabled it to run in LV2 plugin-based open-source effects pedals such as Mod Duo and Zynthian