[:Team:]
Current development team

Tom Moebert


Former development team

Josh Green
Pedro Lopez-Cabanillas
David Henningsson


[:Idea:]

* Samuel Bianchini, Peter Hanappe and Johnathan Lee


[:Development:]

Many people contributed to FluidSynth, sent suggestions or bug
fixes. The project was started by Peter Hanappe who is the main
author. Josh Green is the current maintainer. Below you'll find a
summary of contributions.


* Peter Hanappe. Initiated the project. files: stuck his nose in all
  files.

* Josh Green is the former maintainer and contributed a lot of code
  directly or indirectly through the Swami and Smurf code base.
  The SoundFont loader is completely based on his code. He also wrote
  the alsa sequencer driver. He made many changes and bug fixes,
  but above all, he's one of the driving forces behind the synthesizer.
  He also created the current FluidSynth graphic logo with Blender
  (the blue waves with FluidSynth letters partially submerged).

* Markus Nentwig (re-)designed the resonant filter, the chorus, the
  LADSPA subsystem, the MIDI router, optimized for SSE, made many
  changes and bug fixes and got the synthesizer to actually work. Most
  importantly, he used it on stage to make music.

* S. Christian Collins did much testing of FluidSynth in regards to
  EMU10K1 compatibility and provided many synthesis fixes in that regard.

* Stephane Letz from Grame wrote most of the MidiShare driver, all of
  the PortAudio driver, ported iiwusynth to MacOS X, and sent in many
  fixes. files: iiwu_midishare.c, iiwu_portaudio.c

* Antoine Schmitt added the sequencer support, support for sample
  loading (RAM Sfont), developed the
  MacroMedia Director Xtra, and send in many many bug reports. Thanks
  to Antoine, the synthesizer finds its way to multi-media
  developers. files: in bindings/director/ and iiwu_seq.{c,h},
  iiwu_event.{c,h}, iiwu_event_priv.h, iiwu_seqbind.{c,h},
  iiwu_ramsfont.{c,h}

* Bob Ham added the code for "bank select" MIDI messages and send code
  to define the synth's ALSA sequencer client name. files:
  iiwu_midi.c, iiwu_alsa.c, iiwusynth.c, iiwusynth.h.

* Tim Goetze sent many patches and implemented the all_notes_off. He
  also sent his code for the new ALSA driver. files: iiwu_synth.c,
  iiwu_chan.c, iiwu_voice.c, iiwu_alsa.c

* Norbert Schnell from Ircam's jMax Team wrote most of the jMax/FTS
  interface in a record time. He also pointed me to the technique of
  using a lookup table for the interpolation coefficients.  file:
  iiwu_fts.c, iiwu_synth.c

* The initial alsa driver was based on the jMax alsa driver by
  Francois Dechelle and his Real-time Team at Ircam
  (https://www.ircam.fr/jmax). The jMax code was based upon Ardour's
  alsa_device.cc by Paul Barton-Davis.  file: iiwu_alsa.c

* Code was borrowed from the glib library to the smurf files. The goal was
  to make iiwusynth independent from any library for maximum
  portability.

* David Henningsson added code for fast rendering of MIDI files,
  rewrote the thread safety for 1.1.2, and fixed many bugs.

* The midi device uses code from jMax's alsarawmidi.c file and from
  Smurf's midi_alsaraw.c by Josh Green.  file: iiwu_alsa.c

* The reverb algorithm was written by Jezar
  (https://www.dreampoint.co.uk). His code is public domain. The code
  was translated to C by Peter Hanappe.  file: iiwu_synth.c

* The original code for the chorus effect was written by Juergen
  Mueller and sundry contributors.

* Bob Ham added LADCCA support.

* Ebrahim Mayat made big efforts for compiling and running FluidSynth
  on MacOS X. He also wrote the README-OSX file.

* Martin Uddén's midi package was used. His files are integrated into
  the iiwu_midi file. Martin Uddén <nanook@lysator.liu.se> file:
  iiwu_midi.c

* Ken Ellinwood send in a patch to add bank offsets to SoundFonts. An
  adapted version was integrated in the source code. files:
  fluid_cmd.c, fluidsynth/synth.h, fluid_synth.c.

* Some interpolation algorithms were used that were found in
  the music-dsp archives (http://www.smartelectronix.com/musicdsp).
  They were written by Joshua Scholar and others.  file: iiwu_synth.c

* Macros to {increment,decrement} the 64-bit fixed point phase were
  borrowed from Mozilla's macros to handle the Long-long type (64-bit
  signed integer type). Mozilla NSPR library, www.mozilla.org.  file:
  iiwu_phase.h

* KO Myung-Hun for OS/2 support with Dart audio driver.

* Pedro Lopez-Cabanillas wrote the CoreMIDI driver for MacOSX, the CMake based
  build system, revised the doxygen documentation, sequencer examples, fixes.

* Matt Giuca improved the midi player by letting it load midi files from RAM,
  and by making it handle EOT events.

* Tom Moebert (fluidsynth's maintainer since Jun 2017) cleaned up and refactored
  fluidsynth's API and revised its documentation, added support for 24 bit sample
  soundfonts, added support for DLS soundfonts, fixed various bugs, implemented
  unit tests and CI builds for Windows, Linux, MacOSX and BSD.

* Fabian Greffrath added initial support of vorbis-compressed sf3 sound fonts.

* Growing list of individuals who contributed bug fixes, corrections and minor features:
Nicolas Boulicault for ALSA sequencer midi.portname setting.
Werner Schweer
Dave Philips
Anthony Green
Jake Commander
Fernando Pablo Lopez-Lezcano
Raoul Bonisch
Sergey Pavlishin
Eric Van Buggenhaut
Ken Ellinwood
Takashi Iwai
Bob Ham
Gerald Pye
Rui Nuno Capela
Frieder Bürzele
Henri Manson
Mihail Zenkov
Paul Millar
Nick Daly
David Hilvert
Bernat Arlandis i Mañó
Sven Meier
Marcus Weseloh
Jean-jacques Ceresa
Vladimir Davidovich
Tamás Korodi
Evan Miller
