Fluidsynth was redefining a properly-defined macro to null based on an
apparently flawed assumption. Add a condition to check if the macro is
defined before redefining.
This modified patch may fix more than just DragonFly.
Fixes and changes
Handle MIDI End of track events, ticket #101 (Matt Giuca)
Prevent broken rendering after an voice overflow, ticket #100 (diwic)
Enable long arguments where available (plcl)
Windows: Install fluidsynth.pc (pkg-config spec), ticket #102 (plcl)
Mac OS X Lion: Fix build failure, ticket #105 (twobits)
Linux: Prevent libdbus crash (diwic)
pkgsrc: Not switched to cmake, no libaudiofile dependency.
1.1.5:
* Autotools build resulted in the wrong version number for libfluidsynth.so (reported by plcl, Takashi Iwai)
* One symbol was dropped from libfluidsynth.so - this symbol was not part of the public API though. (reported by Alessio Treglia)
* Windows 64 bit: Wrong prototype declaration for MIDI (reported by Graham Goode)
* JACK: Using jack_free instead of free when needed. Note that this might require a later version of JACK than previously. (reported
by Graham Goode)
* Update Free Software Foundation address (reported by ogetbilo)
1.1.4:
* Several improvements and fixes to the CMake build system, especially for Mac OS X
* Several bug fixes to the engine, notably quite a few which could cause FluidSynth to sound bad in some cases.
* API additions, that make it possible to
* load MIDI files from memory
* to inspect/modify MIDI events as they are being played from a MIDI file
* to change channels between melodic and drum mode
* and to silence all notes in one command.
* Improvements to the CoreAudio driver
1.1.3:
* Compilation with LADSPA enabled was broken in 1.1.2 - fixed (plcl, diwic)
* Multichannel output broken when double precision was used - fixed (plcl, diwic)
* Doxygen settings (plcl)
* Mac OS X build system fixes (plcl, Benjamin Reed, Jean-Franc,ois Mertens)
* Fix build problem with scummvm (Alexander Hansen, Ebrahim Mayat)
* Optimize by not starting unused threads with multicore rendering (diwic)
* Window handle creation/destruction in Windows dll version (Andy Fillebrown)
* Race condition in alsa_seq / alsa_raw drivers caused them not to quit (diwic)
1.1.2:
Big changes:
* New CMake build system [plcl]
* Winbuild and Macbuild directories dropped
* Autotools build system is deprecated, but is still working
* Rewriting of thread safety [diwic]
* Two new settings control the thread safety mode. The default is to be backwards compatible.
Smaller changes:
* Voice overflow settings [diwic]
* Possible to update polyphony, up to 65536 (and beyond initial setting) [diwic]
* Possible to update sample rate (jack driver updates sample rate correctly) [diwic]
* MIDI Bank Select handling fixed [plcl]
* Source files moved into different subdirectories [diwic]
* Can use RealTimeKit (on Linux) to get real-time priority [diwic]
* Shell commands for pitch bend and pitch bend range [monk]
* PulseAudio driver: specify media role, and allow pulseaudio to adjust latency [diwic]
* Bug fixes [diwic, plcl, KO Myung hun, Felix Krause, laurent, nshepperd]
1.1.1:
Bug fixes
* Recommit fix for voice stealing algorithm (David Henningsson)
* Update deltatime on midi file load, ticket #59 (David Henningsson and Josh Green, reported by Hans Petter Selasky)
* Build fix on OS X 10.4 (David Fang and Ebrahim Mayat)
* Fixed most asynchronous assignment/query regressions affecting QSynth (chorus, reverb, polyphony, MIDI CCs and presets) (Josh Green,
reports and testing by Rui Nuno Capela)
* Reverted queuing of chorus and reverb assignments which fixes real-time performance issues when changing values (Josh Green)
* Fixed issue with audio thread changes affecting CoreAudio on OS X (Josh Green, reported by Ebrahim Mayat)
* Improved SMP safety with CC MIDI controls, polyphony, modulators and synth gain (Josh Green)
* Fixed crash bugs in fluid_timer functions (Josh Green)
* Reverted char * -> const char * changes to function prototypes (Josh Green, reported by Rui Nuno Capela)
* Fixed TCP server build issue where WITHOUT_SERVER was still being set on win32 (Josh Green)
* Fixed crash when Jack driver was re-created (Josh Green)
* Fixed unknown macro warning in FluidSynth man page (David Henningsson)
Misc
* Return queue process is now a thread instead of a timer and more responsive (Josh Green)
* Added missing dist files in doc/ (Josh Green)
* Updated README-OSX (Ebrahim Mayat)
1.1.0:
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.name, 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).
Features and improvements
* New PulseAudio? driver (Josh Green)
* New Jack MIDI driver (Josh Green)
* New CoreMIDI driver (Pedro Lopez-Cabanillas)
* Portaudio driver re-written for Portaudio 19 (Josh Green)
* Support for OS/2 including Dart audio driver (KO Myung-Hun)
* RPN GM MIDI messages now handled for Bend Range, Fine Tune
and Coarse Tune (Josh Green)
* MIDI channel pressure now handled (Bernat Arlandis i Mañó)
* MIDI Program/Bank instrument fallback selection logic (Josh
Green and thanks also to Jimmy)
* Added midi.portname setting to ALSA sequencer, -p command
line switch (Nicolas Boulicault)
* Added midi.winmidi.device setting to winmidi driver (Pedro
Lopez-Cabanillas)
* Updated Max/MSP FluidSynth binding (Norbert Schnell)
Synthesis Changes
* Volume attenuation SoundFont generator now behaves more like
EMU10K1 (S. Christian Collins)
* Stop forcing velocity based filtering (S. Christian Collins)
* Fixes to linear/bipolar/positive and convex/bipolar/positive
modulator functions (S. Christian Collins)
* Added fix to properly search for percussion instrument (Josh
Green)
* Force velocity envelope value to be that of the previous
stage when switching from decay to sustain (S. Christian Collins)
* Filter calculation now uses synthesizer sample rate rather
than fixed at 44100 (S. Christian Collins)
Bug fixes
* Fixed Jack driver in "audio.jack.multi=yes" mode and Jack
audio driver cleanup (Bernat Arlandis i Mañó and Pedro
Lopez-Cabanillas)
* Wrong tempo changes (ticket #22 - Pedro Lopez-Cabanillas)
* Crash bug fix related to using certain modulators in a preset
(S. Christian Collins)
* Fix to non-option command line argument processing when not
using readline (Pedro Lopez-Cabanillas)
* dsound device can't be selected (Ticket #16 - Pedro
Lopez-Cabanillas)
* Minor build fixes (Josh Green)
* Fixed compilation under MSVC 2008 and older (Pedro
Lopez-Cabanillas)
Misc. stuff
* Updated README-OSX build instructions (Ebrahim Mayat)
* FluidSynth fink package accepted for Mac OS X (Ebrahim Mayat)
* Minor fixes to FluidSynth man page (Sven Hoexter)
Uploaded FluidSynth 1.0.7a with a bug fix for the build error that
occurred when neither LASH or LADCCA were enabled. Also contains an
updated README-OSX from Ebrahim Mayat.