FluidSynth is a popular open-source software music synthesizer. It is written in C and highly portable. This project aims to provide a very easy to use .NET wrapper around FluidSynth's C APIs that allow one to put sound synthesis in their program without a hassle. The wrapper is written in Managed C++, allowing it to be linked with the FluidSynth DLL at compile-time and to use the C APIs effortlessly. And of course, it can be referenced by any .NET language whether VB.NET, C#, or F#.

Note that since Mono does not currently have an implementation of Managed C++ and from the fact that C++ is more tied to the Windows platform, FluidSynth for .NET cannot currently be used on platforms besides Windows. Another project that seeks to implement a complete wrapper in C# is in the works by someone else and can be used for that purpose. A link will be provided when there is more information.


  • Synthesizer - Well tested in a commercial software package (Z-Maestro)
  • Shared SoundFonts - Well tested, see Special Features below for more information
  • Audio Driver - Well-tested
  • Player (MIDI file player) - Not well tested
  • Sequencer - Not well tested

Special Features

  • SoundFont Sharing - Automatically handles SoundFont loading such that loading the same SoundFont into multiple synthesizer objects does not use more memory
  • Peak Data - Access real-time volume peak data


Last edited Dec 7, 2010 at 9:17 PM by zhuman, version 9