/[svn]/linuxsampler/trunk/ChangeLog
ViewVC logotype

Diff of /linuxsampler/trunk/ChangeLog

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 3095 by schoenebeck, Wed Jan 18 14:52:31 2017 UTC revision 3537 by schoenebeck, Sat Jul 27 11:18:17 2019 UTC
# Line 1  Line 1 
1  Version SVN trunk (?)  Version 2.1.1 (27 Jul 2019)
2    
3      * Real-time instrument scripts:
4        - Fixed behavior of built-in NKSP functions change_sustain(),
5          change_cutoff_attack(), change_cutoff_decay(), change_cutoff_sustain()
6          and change_cutoff_release().
7    
8      * general changes:
9        - Only play release trigger samples on sustain pedal up if this behaviour
10          was explicitly requested by the instrument (otherwise only on note-off).
11        - Fixed compiler warnings.
12        - Fixed compilation error when cross-compiling to Mac.
13        - FX Sends: Provide more useful error messages on routing problems
14          (see bug #169).
15        - LSCP doc: Be more clear describing the two distinct approaches
16          of using external vs. internal effects (see bug #169).
17        - "optional" class: Fixed comparison operators.
18    
19      * Gigasampler/GigaStudio format engine:
20        - Format extension: If requested by instrument then don't play release
21          trigger sample on note-off events.
22    
23      * SFZ format engine:
24        - Fixed memory leak when releasing samples
25          (fixes bug #307, patch by Jacek Roszkowski)
26        - Fixed potential crash when a sample is shared by more than one region
27          (fixes bug #308, patch by Jacek Roszkowski).
28        - Opcode 'sample': Added support for built-in sample '*silence'
29          (fixes bug #310, patch by Jacek Roszkowski).
30    
31    Version 2.1.0 (25 Nov 2017)
32    
33    * SFZ format engine:    * SFZ format engine:
34      - added support for <global>, <master> and #define (patch by Alby M)      - added support for <global>, <master> and #define (patch by Alby M)
# Line 6  Version SVN trunk (?) Line 36  Version SVN trunk (?)
36      - Added support for sfz extension opcode 'script' which may be used to      - Added support for sfz extension opcode 'script' which may be used to
37        load real-time instrument script file (NKSP script language).        load real-time instrument script file (NKSP script language).
38      - Implemented opcode set_ccN (initial patch by Giovanni Senatore).      - Implemented opcode set_ccN (initial patch by Giovanni Senatore).
39        - Fixed unintended volume fade-in of voices under certain conditions.
40        - sfz parser: allow missing space between header and opcode
41    
42    * Gigasampler format engine:    * Gigasampler/GigaStudio format engine:
43      - Fixed clicks and pumping noise with Lowpass Turbo filter on very low      - Fixed clicks and pumping noise with Lowpass Turbo filter on very low
44        cutoff settings.        cutoff settings.
45        - Got rid of resembling an ancient GSt misbehavior which did not pitch at
46          all if an up-pitch of more than 40 semi tones was requested (I don't
47          think there is any stock gig sound that requires this behavior to
48          resemble its original sound).
49        - Added support for controlling whether the individual EGADSR stages may
50          be aborted (as LinuxSampler extension to the original GigaStudio 4
51          format).
52    
53    * general changes:    * general changes:
54      - fixed printf type errors (mostly in debug messages)      - fixed printf type errors (mostly in debug messages)
# Line 42  Version SVN trunk (?) Line 81  Version SVN trunk (?)
81      - windows, 32-bit: fixed potential crashes by making sure the stack in      - windows, 32-bit: fixed potential crashes by making sure the stack in
82        sub threads is 16-byte aligned        sub threads is 16-byte aligned
83      - fixed numerous compiler warnings      - fixed numerous compiler warnings
84        - Fixed invalid (note-on) event ID being assigned to new Note objects.
85        - Revised fundamental C++ classes "Thread", "Mutex" and "Condition" which
86          fixes potential undefined behavior.
87        - Fixed Note object leak when triggering notes on keys which did not
88          have a valid sample mapped (fixes bug #252).
89        - Fixed compilation errors when compiling with CONFIG_DEVMODE enabled.
90        - linuxsampler binary fix: option --create-instruments-db ignored
91          subsequent optional argument due to glibc's implementation oddity
92          which expects a "=" sign, but no space between them.
93    
94    * packaging changes:    * packaging changes:
95      - removed unnecessary dependency to libuuid      - removed unnecessary dependency to libuuid
96        (originated by libgig's usage of it)        (originated by libgig's usage of it)
97      - Automake: set environment variable GCC_COLORS=auto to allow GCC to      - Automake: set environment variable GCC_COLORS=auto to allow GCC to
98        auto detect whether it (sh/c)ould output its messages in color.        auto detect whether it (sh/c)ould output its messages in color.
99        - Debian: Fixed packaging error about invalid "Source-Version"
100          substitution variable.
101        - Debian: Raised Debian compatibility level to Debian 9 "Stretch".
102        - Debian: Added build dependency to libsqlite3-dev for building
103          linuxsampler with instruments DB support.
104    
105    * Real-time instrument scripts:    * Real-time instrument scripts:
106      - Implemented scheduler for delayed MIDI events and for suspended scripts.      - Implemented scheduler for delayed MIDI events and for suspended scripts.
# Line 142  Version SVN trunk (?) Line 195  Version SVN trunk (?)
195        initializer list to an array variable.        initializer list to an array variable.
196      - Implemented built-in script array variable "%ALL_EVENTS".      - Implemented built-in script array variable "%ALL_EVENTS".
197      - Implemented built-in script function "in_range()".      - Implemented built-in script function "in_range()".
198        - Implemented built-in script function "change_amp_lfo_depth()".
199        - Implemented built-in script function "change_amp_lfo_freq()".
200        - Implemented built-in script function "change_pitch_lfo_depth()".
201        - Implemented built-in script function "change_pitch_lfo_freq()".
202        - Implemented built-in script function "change_vol_time()".
203        - Implemented built-in script function "change_tune_time()".
204        - Implemented built-in script function "fade_in()".
205        - Implemented built-in script function "fade_out()".
206        - Fixed acceptance of wrong data type of parameters passed to built-in
207          script functions "change_vol()", "change_tune()", "change_pan()",
208          "change_cutoff()", "change_reso()", "change_attack()", "change_decay()",
209          "change_release()", "change_amp_lfo_depth()", "change_amp_lfo_freq()",
210          "change_pitch_lfo_depth()" and "change_pitch_lfo_freq()".
211        - Added built-in script function "get_event_par()" and implemented some
212          of its possible parameter selections.
213        - Added built-in script function "set_event_par()" and implemented some
214          of its possible parameter selections.
215        - Fixed a bunch of scheduler time related bugs.
216        - Fixed polyphonic variables not being reset to zero after usage.
217        - Built-in "ignore_event()" function: argument is now optional, like with
218          built-in function "ignore_controller()".
219        - Implemented built-in script function "change_velo()".
220        - Implemented built-in script function "change_note()".
221        - Adjusted behavior of "change_vol()" and "change_tune()" to a more
222          intuitive behavior if used in combination with "change_vol_time()" or
223          "change_tune_time()" respectively: now tuning/volume changes are only
224          assigned (without delay) immediately to a new note if the respective
225          timing function has not been called before, otherwise the volume/tuning
226          changes are automatically faded (before, only the event's time stamp was
227          relevant).
228         - Implemented built-in script function "array_equal()".
229         - Implemented built-in script function "search()".
230         - Implemented built-in script function "sort()".
231         - NKSP Fix: Never suspend "init" event handlers.
232         - Implemented built-in script function "same_region()" (currently only
233           available for gig format engine).
234         - Added built-in script constant "$NKSP_LINEAR".
235         - Added built-in script constant "$NKSP_EASE_IN_EASE_OUT".
236         - Implemented built-in script function "change_vol_curve()".
237         - Implemented built-in script function "change_tune_curve()".
238         - built-in "play_note()" function now supports a sample playback start
239           offset with argument 3, where special value -1 means to use the regular
240           sample offset as defined by the instrument file.
241         - Built-in array variable %KEY_DOWN[] is now a read-only variable.
242         - Built-in variable $EVENT_NOTE is now a read-only variable.
243         - Built-in variable $EVENT_VELOCITY is now a read-only variable.
244         - built-in "play_note()" function now accepts -2 for its fourth argument
245           (note duration) which means the life time of the note shall be sticked
246           to the requested note number of argument 1.
247         - Fix: built-in "play_note()" function now returns 0 as result value if
248           -1 was passed for its fourth argument (note duration) and the respective
249           parent note is already gone.
250        - Implemented built-in script function "change_play_pos()".
251        - NKSP language: Added support for user declared const array variables.
252        - NKSP language: Raise parser warning if array variable is accessed with
253          an index that exceeds the array's size.
254        - NKSP language fix: Unknown characters were not handled correctly.
255        - NKSP language: Added support for "synchronized .. end synchronized"
256          code blocks.
257        - Implemented built-in script function "abort()" which allows to abort
258          another script handler by passing its callback ID.
259        - Fixed potential memory access bug and potential undefined behavior of
260          "init" event handlers.
261        - Print a time stamp along to each call of built-in function "message()".
262        - ScriptVM API: Added VMParserContext::preprocessorComments() which allows
263          to retrieve all code blocks filtered out by the preprocessor.
264        - Added built-in script function "fork()".
265        - Added built-in array variable %NKSP_CALLBACK_CHILD_ID[].
266        - Added built-in variable $NKSP_CALLBACK_PARENT_ID.
267        - Fixed potential crash when accessing dynamic built-in array variables.
268        - Added built-in script function "callback_status()".
269        - Added built-in constant $CALLBACK_STATUS_TERMINATED.
270        - Added built-in constant $CALLBACK_STATUS_QUEUE.
271        - Added built-in constant $CALLBACK_STATUS_RUNNING.
272        - Removed max. value limitation of built-in functions "change_attack()",
273          "change_decay()" and "change_release()" to i.e. allow passing 2000000
274          for doubling the respective time.
275        - NKSP script editor syntax highlighting API: Fixed app termination due
276          to a lexer start condition stack underrun.
277        - NKSP preprocessor: Fixed wrong behavior on nested USE_CODE_IF() and
278          USE_CODE_IF_NOT() preprocessor statements.
279        - NKSP: Added built-in preprocessor condition NKSP_NO_MESSAGE, which
280          can be set to disable all subsequent built-in "message()" function calls
281          on preprocessor level.
282        - Implemented built-in script function "change_sustain()".
283        - NKSP script editor syntax highlighting API: catch all fatal lexer errors,
284          to avoid the editor app to crash on ill-formed text input.
285        - Added built-in script function "change_pan_time()".
286        - Added built-in script function "change_pan_curve()".
287        - Added built-in script function "change_cutoff_attack()".
288        - Added built-in script function "change_cutoff_decay()".
289        - Added built-in script function "change_cutoff_sustain()".
290        - Added built-in script function "change_cutoff_release()".
291        - Added built-in script function "change_cutoff_lfo_depth()".
292        - Added built-in script function "change_cutoff_lfo_freq()".
293    
294    * Instruments DB:    * Instruments DB:
295      - Fixed memory access bug of general DB access code which lead to      - Fixed memory access bug of general DB access code which lead to
# Line 151  Version SVN trunk (?) Line 299  Version SVN trunk (?)
299        is now optional, if it is missing, then a default location is used.        is now optional, if it is missing, then a default location is used.
300      - Added support for scanning SFZ (.sfz) files.      - Added support for scanning SFZ (.sfz) files.
301      - Added support for scanning Sound Font (.sf2) files.      - Added support for scanning Sound Font (.sf2) files.
302        - Fixed undefined DB transaction behavior.
303    
304  Version 2.0.0 (15 July 2015)  Version 2.0.0 (15 July 2015)
305    
# Line 625  Version 2.0.0 (15 July 2015) Line 774  Version 2.0.0 (15 July 2015)
774        $GIG_DIM_EFFECT3DEPTH, $GIG_DIM_EFFECT4DEPTH, $GIG_DIM_EFFECT5DEPTH.        $GIG_DIM_EFFECT3DEPTH, $GIG_DIM_EFFECT4DEPTH, $GIG_DIM_EFFECT5DEPTH.
775      - Giga format scripts: Implemented built-in script function      - Giga format scripts: Implemented built-in script function
776        "gig_set_dim_zone(event_id, dimension, zone)".        "gig_set_dim_zone(event_id, dimension, zone)".
777      - Implemented built-in script int array variable $KEY_DOWN.      - Implemented built-in script int array variable %KEY_DOWN.
778      - Implemented built-in script function "abs()".      - Implemented built-in script function "abs()".
779      - Implemented built-in script function "random()".      - Implemented built-in script function "random()".
780      - Implemented built-in script function "num_elements()".      - Implemented built-in script function "num_elements()".

Legend:
Removed from v.3095  
changed lines
  Added in v.3537

  ViewVC Help
Powered by ViewVC