Element Green

FluidSynth 1.1.0 - "A More Solid Fluid"

Changes from previous version 1.0.9

Features and improvements

  • Extensive work on making [FluidSynth] more thread safe, resulting in better stability.
  • Audio file rendering for MIDI to audio file conversion, faster than realtime (#15).
  • Optional libsndfile support for file rendering in different audio file formats (wav, flac, ogg vorbis, etc) (#30).
  • Audio and MIDI are synchronized for MIDI file playback.
  • Server can be specified for Jack audio and MIDI drivers.
  • Jack audio and MIDI is now synchronized (when same Jack server used).
  • MIDI file playback is now timed correctly, even with large audio buffer sizes.
  • Fixed issue with missing percussion in MIDI files caused by very short notes, using synth.min-note-length setting (#1).
  • Improved support for MIDI tuning standard, including SYSEX support and realtime tuning activation.
  • Multi-core support for utilizing multiple CPUs for synthesis or increasing speed of file rendering.
  • Voices for a note-on event are started synchronously (#46).
  • TCP/IP shell server support for windows (#20).
  • Improved settings output (-o help) (alphabetically sorted and string options listed).
  • Audio driver (-a) and MIDI driver (-m) options now accept "help" and list available options (#41).
  • Added audio.realtime-prio and midi.realtime-prio for controlling realtime scheduling of some audio and MIDI drivers.
  • Default priority levels of audio and MIDI threads set to 60 and 50 respectively.
  • All yes/no string boolean settings converted to integer toggle settings (with backwards compatibility).
  • glib is now a required dependency.
  • Updated README-OSX
  • Added "voice_count" shell command for getting current number of active voices.

New command line options

  • -F, --fast-render=[file]
  • -T, --audio-file-type
  • -O, --audio-file-format
  • -E, --audio-file-endian

New or changed parameters

  • Audio file output settings: audio.file.endian, audio.file.format,, audio.file.type, audio.sample-format
  • Realtime scheduling settings: audio.realtime-prio, midi.realtime-prio
  • Jack settings: audio.jack.server and midi.jack.server
  • Other settings: player.reset-synth, player.timing-source, synth.cpu-cores (experimental), synth.min-note-length

Bug fixes and minor changes

  • Fixed enabling of high priority scheduling in many audio drivers.
  • Fixed bank selection logic
  • Build fixes for mingw and VC++ builds on Windows
  • Fix default values (after MIDI reset) to be more consistent with MIDI spec (#29).
  • Removed VintageDreamsWaves?-v2.sf2 since it wasn't under a free license.
  • Solaris build fix (#52)
  • Implemented fluid_player_set_loop (#33)
  • Fixed scaletune error (#26)
  • Fixed synth reset between songs (#31)
  • Fixed pitch bend error in Windows MIDI driver (#54)
  • Skip remaining track data in MIDI file after EOT (#53)
  • Bug fix in MIDI router where mutex was left locked with MIDI system reset message.
  • Help command now shows list of topics instead of General help.
  • Fixed non-blocking in alsa_raw, alsa_seq and OSS MIDI drivers.
  • Fixed segfault on config file load (#45).

Changes affecting developers

  • Developer API docs overhauled and now very complete.
  • Lots of code cleanup in fluid_synth.c, fluid_chorus.c, fluid_reverb.c and fluid_chan.c.
  • Improved use of settings hints for all settings.
  • char * arguments changed to const char * for many function prototypes.
  • Many new API functions.

See "Whats new in 1.1.0?" section in developer API documentation for more details:


  • Josh Green
  • David Henningsson
  • Pedro Lopez-Cabanillas
  • Ebrahim Mayat

And many others!


Wiki: FluidSynth

Get latest updates about Open Source Projects, Conferences and News.

Sign up for the SourceForge newsletter:

No, thanks