--- linuxsampler/trunk/ChangeLog 2015/08/23 06:14:00 2837 +++ linuxsampler/trunk/ChangeLog 2016/05/16 20:27:33 2911 @@ -1,7 +1,60 @@ Version SVN trunk (?) + * SFZ format engine: + - added support for , and #define (patch by Alby M) + * general changes: - fixed printf type errors (mostly in debug messages) + - use unique_ptr instead of auto_ptr when building with C++11 + - Added RTAVLTree class which is a real-time safe ordered multi-map, thus + allowing to sort data efficiently in real-time safe manner. + - RTList class: added methods for moving/inserting elements to arbitrary + position within a list. + - RTList class: added method fromPtr() for creating an Iterator object from + a raw element pointer. + - Attempt to partly fix resetting engine channels vs. resetting engine, an + overall cleanup of the Reset*(), ConnectAudioDevice(), + DisconnectAudioDevice() API methods would still be desirable though, + because the current situation is still inconsistent and error prone. + - Active voices are now internally grouped to "Note" objects, instead of + being directly assigned to a keyboard key. This allows more fine graded + processing of voices, which is i.e. required for certain instrument + script features. + + * packaging changes: + - removed unnecessary dependency to libuuid + (originated by libgig's usage of it) + - Automake: set environment variable GCC_COLORS=auto to allow GCC to + auto detect whether it (sh/c)ould output its messages in color. + + * Real-time instrument scripts: + - Implemented scheduler for delayed MIDI events and for suspended scripts. + - Built-in script function "wait()": implemented support for function's + "duration-us" argument, thus scripts using this function are now + correctly resumed after the requested amount of microseconds. + - Built-in script function "play_note()": implemented support for + function's "duration-us" argument, thus notes triggered with this + argument are now correctly released after the requested amount of + microseconds. + - Fix: script events were not cleared when engine channel was reset, + potentially causing undefined behavior. + - Fixed crash which happened when trying to reference an undeclared + variable. + - Built-in script function "play_note()": Added support for passing + special value -1 for "duration-us" argument, which will cause the + triggered note to be released once the original note was released. + - Instrument script classes now exported with the liblinuxsampler C++ API. + - Added new API method ScriptVM::syntaxHighlighting() which provides + a convenient syntax highlighting backend for external instrument + script editor applications. + - Added new C++ API class "ScriptVMFactory". + - Extended parser issues to provide not only first line and first + column, but also last line and last column of issue (thus marking + the precise span of the issue within the source code). + - Reload script automatically after being modified by an instrument + editor. + - NKSP language grammar correction: allow empty event handler bodies + like "on note end on". Version 2.0.0 (15 July 2015)