| Version | Change log |
| FluidSynth 2.5.1 Oct 31, 2025 |
Previous versions have incorrectly exposed private C++ and inline symbols; they are now hidden from the library Fluidsynth now resets DataEntry values when it receives (N)RPN MSB/LSB to prevent off-tuned channels It is now possible to install the library, header and executable independently from each other Add a CI pipeline for iOS and publish precompiled iOS binaries for each release Fix the precompiled Windows binaries lacking dependency libraries Fix a regression introduced in 2.5.0, that could have caused a NULL pointer deref when playing AWE32 NRPN MIDIs Fix a regression introduced in 2.5.0, that caused convex unipolar modulators to use a concave mapping Fix a regression introduced in 2.4.6, which in rare cases could have caused the cutoff frequency of the IIR filter to get stuck or change abruptly Fix a build issue where fluidsynth was trying to find glib even when it shouldn't Fix typos in ALSA log messages |
| FluidSynth 2.5.0 Oct 5, 2025 |
New Features: Add a C++11-based OS abstraction layer as a replacement for glib, bringing these minor limitations when C++17 is unavailable (#1570, thanks to @mmlr) Add native support for Downloadable Soundfont Format (#1626, thanks to @rsp4jack) Fluidsynth now recognizes the DMOD INFO-subchunk (#1582, thanks to @spessasus) A new positional flag has been introduced: -b, --bank-offset, (#1538, refer to UserManual for details) Fluidsynth now natively supports the long CLI option flags on Windows (#1544) Fluidsynth now supports native Android logging (#1621, thanks to @neoharp-dev) Breaking Changes: Support for SDL2 has been removed - pls. use SDL3 instead (#1594) The processing order of fluidsynth's configuration files has been changed (#1573, refer to wiki for details) The legacy shell commands for reverb and chorus have been removed (#1659, refer to UserManual for details) Musically Breaking Changes: It was discovered that fluidsynth was mapping some modulators slightly inaccurately into their normalized range (#1651, thanks to @baskanov) Some Roland GS NPRN Params are now mapped to CC numbers (#1519, refer to wiki for details) Fluidsynth now auto-detects whether Portamento Time is 7bit or 14bit wide - this fixes the infamous Descent Game08 tune (#705, #1232, #1311, #1456, #1495, #1517, see synth.portamento-time for details) Previously, fluidsynth's default behavior was to use portamento only for those notes, that were played in a successive / legato manner; to further improve the portamento experience, this was changed and fluidsynth now plays portamento for all notes by default (#1656) Other Changes: Fix drum kits not always being selected after SysEx GS Rythm Part (#1579) The LGPL license now uses the remote-only FSF address (#1568, thanks to @musicinmybrain) The logic for parsing INFO chunks has been revised to improve handling of unknown INFO-subchunks (#1644) Fix a race condition in fluid_synth_alloc_voice() public API function (#1664) Fix installing static and |
| FluidSynth 2.4.6 May 4, 2025 |
Fix inconsistent library naming for MSVC vs. MinGW builds Fix MIDI player skipping some events when seeking A regression introduced in 2.4.5 could have caused a heap-based buffer overrun Fix several issues when generating API docs with recent versions of Doxygen |
| FluidSynth 2.4.4 Mar 16, 2025 |
Support for SDL3 has been added, support for SDL2 has been deprecated (#1485, #1478, thanks to @andyvand) Soundfonts that are not respecting the 46 zero-sample padding-space previously sounded incorrect when synth.dynamic-sample-loading was active (#1484) Allow drum channels to profit from Soundfont Bank Offsets by no longer ignoring MSB Bank changes (#1475) Revise the preset fallback logic for drum channels (#1486) A regression introduced in 2.4.1 may have caused interrupted real-time playback when voices were using the lowpass filter (#1481) Improve multi-user experience when running fluidsynth as systemd service (#1491, thanks to @andrew-sayers) Fix ordering and dependencies of fluidsynth's systemd service (#1500, thanks to @fabiangreffrath) Revise fluidsynth's man page (#1499, thanks to @fabiangreffrath) |
| FluidSynth 2.4.3 Jan 25, 2025 |
It was discovered, that exclusive class note terminations were too slow (#1467, thanks to @mrbumpy409) Fix a regression introduced in 2.4.0 that allowed the amplitude of a voice playing in delay phase to rise infinitely (#1451) MSGS drum-style note-cut has been converted to an opt-in setting synth.note-cut (#1466) Support for SDL2 has been disabled by default* (#1472) Fix a regression introduced in 2.4.1 that could have caused infinite audio gain output for some MIDI files under certain configurations (#1464) Silence a warning issued by Systemd v254+ (#1474, thanks to @andrew-sayers) |
| FluidSynth 2.4.1 Dec 1, 2024 |
Enable libsndfile to use filename with non-ASCII characters on Windows (#1416, thanks to @pedrolcl and @stardusteyes) Fix a few commandline encoding related issues on Windows (#1388, #1421, thanks to @pedrolcl) Fix build errors on Windows (#1419, #1422, thanks to @carlo-bramini) Fix clicks and pops caused when changing parameters of the lowpass filter (#1415, #1417, #1424) Minor adjustment to AWE32 NRPN behavior (#1430) |
| FluidSynth 2.4.0 Oct 31, 2024 |
New Features: Implement MSGS-style Drum Note Cut (#1199) Support KAI audio driver on OS/2 (#1332, thanks to @komh) Add support for AWE32 NRPNs (#1346) Add support for Polyphone's sample loop mode release (#1398, thanks to @spessasus) Add support for SF2.04 absolute value modulators (#1391, thanks to @spessasus) Breaking Changes: LASH support has been removed (#1285) Musically Breaking changes: The default settings for reverb and chorus have been tuned to provide a more natural perception (#1282, thanks to @es20490446e) The behavior of the volume envelope's delay phase was previously incorrect (#1312) The ModLfoToVolume generator was not able to increase the volume (#1374) Fluidsynth's default device-id was changed, allowing it to process (most) SysEX events without further configuration (#1382) Previously, some modulators were treated in a non-standard way (#1392, #1389, #1068) Bug Fixes: The former linear interpolation of IIR filter coefficients could have caused audible clicks and cracks (#1345) - yet there is still a potential for clicks and cracks, see #1415 |
| FluidSynth 2.3.7 Oct 20, 2024 |
Fix SF3 decoder producing crackling sound for loud samples MIDI Format 2 is now rejected correctly since it was never supported Fix UTF8 encoding issues on Windows Fix a regression introduced in 2.3.2 causing fluidsynth to fail discovering Oboe Other minor bugs |
| FluidSynth 2.3.6 Aug 3, 2024 |
Fix a build issue on OS/2 (#1320, thanks to @komh) Fix various encoding issues on Windows related to device names (#1322, thanks to @pedrolcl) Fix discovery of gobject by CMake Fix a numerical instability that caused the chorus effect to stop working correctly when fluidsynth was compiled in single precision mode (affected all precompiled binaries, #1331, thanks to @jjceresa) Fix timing issues in MIDI player related to incorrect handling of running status (#1351) Fix ignoring LSB for RPN Pitch bend range events (#1357, thanks to @spessasus) |