And for the lazy, here're the release notes:
2016-10-22: 2.0.0 released.
The distribution include following components:
* libmt32emu - C/C++ sysnthesiser library
* mt32emu_qt - main sysnthesiser application
* mt32emu_win32drv - MIDI driver for Win32 with helper setup utility
* mt32emu_smf2wav - console tool for converting MIDI files to Wave files using the mt32emu library
Folders:
* Windows - Windows binaries
* Ubuntu-16.04 - .deb packages for the recent Ubuntu release
Files:
* munt-2.0.0.tar.gz - source distribution
Notable changes:
mt32emu
=======
* Introduced support for sound groups. Callback ReportHandler::onProgramChanged() now supply correct sound group name
instead of just the index of the timbre bank.
* Reworked ControlROMFeatureSet. MT-32 GEN0 quirk "Pitch Envelope Overflow" exploited in Colonel's Bequest timbre "Lightning"
is now emulated when loading one of control ROMs v.1.04-1.07.
* Improved current loose implementation of SysEx handshake communication. Specifically, disabled the check for partial
activity, as that caused SysEx messages to be ignored without any feedback.
* API and build changes:
- minimum required version of Cmake raised to 2.8.12;
- clarified existing C++ API, mt32emu.h no longer used internally but intended for clients;
- encapsulated MT32EMU_USE_FLOAT_SAMPLES definition, API provides rendering in both 16-bit signed integer and float
formats, sample conversion applies implicitly when needed;
- introduced C-compatible API as a facade, that allows using the library with programs written in other languages
as well as provides for consistent well-defined ABI for the library as a shared object;
- C-compatible API also involves COM-like interfaces to simplify usage of the library as a plugin loaded in run-time;
- three new build options libmt32emu_SHARED, libmt32emu_C_INTERFACE and libmt32emu_CPP_INTERFACE intended
to configure whether to build a statically or dynamically linked library, whether to include C-compatible API,
and whether to expose C++ classes (old-fashioned compiler-specific ABI).
mt32emu_qt
==========
* Updated mt32emu library to version 2.0.0.
* Added support of ALSA raw MIDI ports in ALSA MIDI driver. Configuration option mt32emu-qt_WITH_ALSA_MIDI_DRIVER
renamed to mt32emu-qt_WITH_ALSA_MIDI_SEQUENCER for consistency, and is now set to TRUE by default on Linux systems only.
* Added handling of fragmented SysExes in ALSA MIDI driver.
* Improved CoreAudio driver: CoreAudioStream no longer renders data in the GUI thread, a dedicated internal AudioQueue thread is used instead.
* Improved MIDI timing calculations. Introduced MIDI latency autodetection mode (initiated by setting MIDI latency to 0).
* Added build option mt32emu-qt_WITH_DEBUG_WINCONSOLE. It controls whether a debugging console is shown on Windows.
* Fixed a bug in LinearResampler that may cause incorrect output at beginning of each audio block.
* Introduced full-featured internal resampler. The intention is to make resampling less demanding than libsamplerate requires
yet to reduce the processing delay libsoxr introduces. That's achieved by taking advantage of oversampled output produced
by analog circuit emulation engine and using efficient elliptic low-pass filter instead of FFT-based FIR.
* Added build option mt32emu-qt_WITH_INTERNAL_RESAMPLER. It controls whether to use internal resampler or try to find an external library.
* Added support for Qt5.
* Improved support for 64-bit Windows.
* Improved support for Cygwin, enabled native Windows MIDI and wave audio API.
* Improved LCD emulation: when setting standard patches, proper sound group name is shown.
* Introduced pause function in MIDI player for convenience.
* Introduced a possibility to synchronously record audio output from a synth to a file along while listening.
* About window now shows target arch and used version of Qt library.
mt32emu_win32drv
================
* Fixed possible crashes when reloading settings to the internal synth upon MIDI port re-opening in some cases.
* Updated mt32emu library to version 2.0.0.
* Added support for mt32emu_qt settings version 2.