1 |
Version SVN trunk (?) |
Version SVN trunk (?) |
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 |
|
|
18 |
|
* Gigasampler/GigaStudio format engine: |
19 |
|
- Format extension: If requested by instrument then don't play release |
20 |
|
trigger sample on note-off events. |
21 |
|
|
22 |
|
* SFZ format engine: |
23 |
|
- Fixed memory leak when releasing samples |
24 |
|
(fixes bug #307, patch by Jacek Roszkowski) |
25 |
|
- Fixed potential crash when a sample is shared by more than one region |
26 |
|
(fixes bug #308, patch by Jacek Roszkowski). |
27 |
|
- Opcode 'sample': Added support for built-in sample '*silence' |
28 |
|
(fixes bug #310, patch by Jacek Roszkowski). |
29 |
|
|
30 |
|
Version 2.1.0 (25 Nov 2017) |
31 |
|
|
32 |
* SFZ format engine: |
* SFZ format engine: |
33 |
- added support for <global>, <master> and #define (patch by Alby M) |
- added support for <global>, <master> and #define (patch by Alby M) |
34 |
- Removed code duplication in SFZ file loading code. |
- Removed code duplication in SFZ file loading code. |
36 |
load real-time instrument script file (NKSP script language). |
load real-time instrument script file (NKSP script language). |
37 |
- Implemented opcode set_ccN (initial patch by Giovanni Senatore). |
- Implemented opcode set_ccN (initial patch by Giovanni Senatore). |
38 |
- Fixed unintended volume fade-in of voices under certain conditions. |
- Fixed unintended volume fade-in of voices under certain conditions. |
39 |
|
- sfz parser: allow missing space between header and opcode |
40 |
|
|
41 |
* Gigasampler/GigaStudio format engine: |
* Gigasampler/GigaStudio format engine: |
42 |
- Fixed clicks and pumping noise with Lowpass Turbo filter on very low |
- Fixed clicks and pumping noise with Lowpass Turbo filter on very low |
43 |
cutoff settings. |
cutoff settings. |
44 |
|
- Got rid of resembling an ancient GSt misbehavior which did not pitch at |
45 |
|
all if an up-pitch of more than 40 semi tones was requested (I don't |
46 |
|
think there is any stock gig sound that requires this behavior to |
47 |
|
resemble its original sound). |
48 |
|
- Added support for controlling whether the individual EGADSR stages may |
49 |
|
be aborted (as LinuxSampler extension to the original GigaStudio 4 |
50 |
|
format). |
51 |
|
|
52 |
* general changes: |
* general changes: |
53 |
- fixed printf type errors (mostly in debug messages) |
- fixed printf type errors (mostly in debug messages) |
81 |
sub threads is 16-byte aligned |
sub threads is 16-byte aligned |
82 |
- fixed numerous compiler warnings |
- fixed numerous compiler warnings |
83 |
- Fixed invalid (note-on) event ID being assigned to new Note objects. |
- Fixed invalid (note-on) event ID being assigned to new Note objects. |
84 |
|
- Revised fundamental C++ classes "Thread", "Mutex" and "Condition" which |
85 |
|
fixes potential undefined behavior. |
86 |
|
- Fixed Note object leak when triggering notes on keys which did not |
87 |
|
have a valid sample mapped (fixes bug #252). |
88 |
|
- Fixed compilation errors when compiling with CONFIG_DEVMODE enabled. |
89 |
|
- linuxsampler binary fix: option --create-instruments-db ignored |
90 |
|
subsequent optional argument due to glibc's implementation oddity |
91 |
|
which expects a "=" sign, but no space between them. |
92 |
|
|
93 |
* packaging changes: |
* packaging changes: |
94 |
- removed unnecessary dependency to libuuid |
- removed unnecessary dependency to libuuid |
95 |
(originated by libgig's usage of it) |
(originated by libgig's usage of it) |
96 |
- Automake: set environment variable GCC_COLORS=auto to allow GCC to |
- Automake: set environment variable GCC_COLORS=auto to allow GCC to |
97 |
auto detect whether it (sh/c)ould output its messages in color. |
auto detect whether it (sh/c)ould output its messages in color. |
98 |
|
- Debian: Fixed packaging error about invalid "Source-Version" |
99 |
|
substitution variable. |
100 |
|
- Debian: Raised Debian compatibility level to Debian 9 "Stretch". |
101 |
|
- Debian: Added build dependency to libsqlite3-dev for building |
102 |
|
linuxsampler with instruments DB support. |
103 |
|
|
104 |
* Real-time instrument scripts: |
* Real-time instrument scripts: |
105 |
- Implemented scheduler for delayed MIDI events and for suspended scripts. |
- Implemented scheduler for delayed MIDI events and for suspended scripts. |
257 |
another script handler by passing its callback ID. |
another script handler by passing its callback ID. |
258 |
- Fixed potential memory access bug and potential undefined behavior of |
- Fixed potential memory access bug and potential undefined behavior of |
259 |
"init" event handlers. |
"init" event handlers. |
260 |
|
- Print a time stamp along to each call of built-in function "message()". |
261 |
|
- ScriptVM API: Added VMParserContext::preprocessorComments() which allows |
262 |
|
to retrieve all code blocks filtered out by the preprocessor. |
263 |
|
- Added built-in script function "fork()". |
264 |
|
- Added built-in array variable %NKSP_CALLBACK_CHILD_ID[]. |
265 |
|
- Added built-in variable $NKSP_CALLBACK_PARENT_ID. |
266 |
|
- Fixed potential crash when accessing dynamic built-in array variables. |
267 |
|
- Added built-in script function "callback_status()". |
268 |
|
- Added built-in constant $CALLBACK_STATUS_TERMINATED. |
269 |
|
- Added built-in constant $CALLBACK_STATUS_QUEUE. |
270 |
|
- Added built-in constant $CALLBACK_STATUS_RUNNING. |
271 |
|
- Removed max. value limitation of built-in functions "change_attack()", |
272 |
|
"change_decay()" and "change_release()" to i.e. allow passing 2000000 |
273 |
|
for doubling the respective time. |
274 |
|
- NKSP script editor syntax highlighting API: Fixed app termination due |
275 |
|
to a lexer start condition stack underrun. |
276 |
|
- NKSP preprocessor: Fixed wrong behavior on nested USE_CODE_IF() and |
277 |
|
USE_CODE_IF_NOT() preprocessor statements. |
278 |
|
- NKSP: Added built-in preprocessor condition NKSP_NO_MESSAGE, which |
279 |
|
can be set to disable all subsequent built-in "message()" function calls |
280 |
|
on preprocessor level. |
281 |
|
- Implemented built-in script function "change_sustain()". |
282 |
|
- NKSP script editor syntax highlighting API: catch all fatal lexer errors, |
283 |
|
to avoid the editor app to crash on ill-formed text input. |
284 |
|
- Added built-in script function "change_pan_time()". |
285 |
|
- Added built-in script function "change_pan_curve()". |
286 |
|
- Added built-in script function "change_cutoff_attack()". |
287 |
|
- Added built-in script function "change_cutoff_decay()". |
288 |
|
- Added built-in script function "change_cutoff_sustain()". |
289 |
|
- Added built-in script function "change_cutoff_release()". |
290 |
|
- Added built-in script function "change_cutoff_lfo_depth()". |
291 |
|
- Added built-in script function "change_cutoff_lfo_freq()". |
292 |
|
|
293 |
* Instruments DB: |
* Instruments DB: |
294 |
- Fixed memory access bug of general DB access code which lead to |
- Fixed memory access bug of general DB access code which lead to |