 |
Or donate Bitcoins at: |
1Q9CK7xUhMNWryqYTZLbUTXbrjpYYtwvng
Why donate?
|
News
| 2026-02-16
It's been a long way. The
NKSP language tour
has been updated with all the new features added during the last few years.
Things like local variables, user functions with arguments and function result,
standard measuring units, the final operator, patch variables and much more.
|
| 2025-12-17
Wrapping the year up with maintenance releases: Gigedit 1.2.4 fixes a few
issues, foremost visibility issues when running Gigedit in Dark Mode.
LinuxSampler 2.4.2 and libgig 4.5.2 both fix build issues only.
|
| 2025-11-07
LinuxSampler 2.4.1 maintenance release which fixes several bugs, along to
maintenance releases Gigedit 1.2.3 and libgig 4.5.1.
|
| 2025-06-02
LinuxSampler 2.4.0 had been released. This is a new feature release.
See the
release notes
for details.
|
| 2024-12-23
Web forum bb.linuxsampler.org has been closed.
Please use the mailing list
instead for any kind of questions and discussions. Note that you must
subscribe to the mailing list for people to receive your emails. Emails of
not subscribed senders are filtered out and ignored by the mailing list.
|
Latest Subversion Commits
|
linuxsampler
|
|
2026-02-11 schoenebeck * NKSP parser: fix empty scripts to be accepted as valid scripts as well
(i.e. fix them having caused a syntax error).
*
Bump version (2.4.2.svn4).
2026-01-23 schoenebeck * VM C++ API: rename VMDeploymentCase -> VMDeploymentCase_t (and add
deprecated alias for backward compatibility).
2026-01-23 schoenebeck * VM C++ API: ParserIssue::dump(): append diagnostic type (in brackets) as
string to output of warning/error message.
*
VM C++ API: const-ify ParserIssue::dump() and move implementation from
header to unit.
2026-01-23 schoenebeck NKSP: allow promoting parser warnings to errors
*
Replace C++ API method ScriptVM::setWarningEnabled() by
ScriptVM::setDiagnostic() which now allows to configure a parser
issue to be treated either as warning, error or suppressed.
*
Replace C++ API method ScriptVM::isWarningEnabled() by
ScriptVM::getDiagnostic().
*
Add C++ API method ScriptVM::getDiagnosticDefault() which
returns the default treatment of a particular parser issue.
*
Bump version (2.4.2.svn3).
2026-01-23 schoenebeck NKSP: make parser warnings configurable
*
Add numeric list of diagnostic types (enum VMDiagnosticType_t) and
associate each identified NKSP parser warning message with one of the
numeric diagnostic types.
*
Add C++ API methods ScriptVM::setWarningEnabled() and
ScriptVM::isWarningEnabled() which can be used to enable or
disable individual NKSP parser warning types and retrieving whether
they are currently enabled.
*
Add C++ API functions allDiagnosticTypes(), diagnosticTypeStr()
and diagnosticType() which can be used by third-party apps to
retrieve all available NKSP diagnostic flags, both as numeric values
and string presentation, and for converting between numeric and
string presentation.
*
Bump version (2.4.2.svn2).
2026-01-17 schoenebeck Revise build of auto generated source files (regression fix of SVN r4164).
*
Split auto generation of 1) LSCP parser source files, 2) updating LSCP
reference documentation's grammar section (Documentation/lscp.xml) and
3) auto generation of liblinuxsampler's built-in LSCP reference
documentation, into 3 separate build tasks (instead of regenerating all
of them always together).
*
Fix build concurrency issue when running parallel builds (make -j) that
caused crippled auto generated source files: prevent parallel run of
tasks that auto generate source files, and fix those targets to not run
more than once.
*
Only update Documentation/lscp.xml (its grammar section that is) if
src/network/lscp.y has been changed.
*
Only regenerate src/network/lscp_shell_reference.cpp if
Documentation/lscp.xml has been changed.
2026-01-17 schoenebeck * configure: check for required Perl module XML::Parser.
2026-01-17 schoenebeck * NKSP tests: split giant src/scriptvm/tests/NKSPCoreLangTest.cpp into
multiple source files.
|
|
|
|
|
gigedit
|
|
2026-03-08 schoenebeck * MacroEditor: fix vertical margin of intro label.
2026-03-08 schoenebeck * MacroSetup: fix vertical margin of intro label.
2026-03-08 schoenebeck * MacrosSetup: implement double click on table enry to open the macro
editor for the double clicked macro (use GETreeView instead of stock
Gtk::TreeView to make this possible).
2026-03-08 schoenebeck * ManagedWindow: clamp window position to screen boundaries when auto
restoring saved previous window position (to prevent window to appear on
either an invisible position or where it's barely impossible to move the
window back on screen by mouse).
*
ManagedDialog: clamp dialog position to parent window monitor's dimensions
(i.e. force the dialog to appear on same monitor on a multi-display setup,
as some systems like macOS won't allow a dialog to appear on another
monitor than its parent window, causing the dialog to vanish).
2026-03-08 schoenebeck * ManagedDialog: force dialog to be always relative to its parent window
(fixes issues on multi-display systems, e.g. on macOS, where a dialog
position on another display than its parent window is considered an
illegal position, causing the dialog to become invisible).
*
Bump version (1.2.4.svn9).
2026-02-25 schoenebeck src/gigedit/compat.cpp: fix regression introduced by SVN r4543
*
Fix crash with Gtk 2 (Gtk >= 3 were unaffected) on app startup due to
NULL pointer dereference.
2026-02-23 schoenebeck * MainWindow: adjust double-click behaviour on instruments in tree view:
fast double-click on scripts count column opens the script slots dialog
for the selected instrument, otherwise (including Enter key stroke)
instrument properties dialog is opened. Slow double-click (and Space key
stroke) renames the selected instrument.
2026-02-23 schoenebeck * MainWindow: adjust double-click behaviour on samples in tree view: fast
double-click on sample references column opens the sample references
dialog, otherwise (including Enter key stroke) sample properties dialog
is opened. Slow double-click (and Space key stroke) renames the selected
sample.
*
Bump version (1.2.4.svn8).
2026-02-22 schoenebeck Introduce "GETreeView" class (derived from Gtk::TreeView)
*
GETreeView: introduce new GETreeView class which fixes the following
issues of stock Gtk::TreeView class: fix fast double clicks to trigger
signal_row_actived() instead of starting to edit cell, fix very slow
double clicks not starting to edit cell, fix Enter and Return keyboard
strokes to trigger signal_row_actived() instead of starting to edit cell.
*
MainWindow: use the new GETreeView class for scripts, which fixes the
following misbehaviours: fast double clicking a script in the tree view
now opens the code editor (instead of renaming the script), slow double
click starts to rename the script, very slow double click is ignored
(instead of renaming the script), hitting Enter or Return on the keyboard
opens the code editor (instead of renaming the script) and Space key
still issues renaming the script.
*
Bump version (1.2.4.svn7).
2026-02-21 schoenebeck * MainWindow: allow overriding Gtk theme name via new menu
"View" -> "Theme".
*
MainWindow: allow overriding Dark Mode via new menu "View" -> "Colors".
*
Bump version (1.2.4.svn6).
2026-02-20 schoenebeck * Dark Mode: fix text colors of dimension manager.
*
Bump version (1.2.4.svn5).
2026-02-20 schoenebeck Region Chooser: implement individual multi-selection of regions
*
Implement individual region multi-selection (sparse set) via
Ctrl-clicking arbitrary regions.
*
Implement consecutive span of region multi-selection via
Shift-clicking up to clicked region.
*
Implement increasing/decreasing a consecutive span of multi-selected
regions via keyboard accelerators Shift-Ctrl-Left and Shift-Ctrl-Right.
*
Display the manually selected regions with a slightly different graphical
background pattern to make them easily distinguishable from auto-selected
regions (e.g. when having checked "All Regions" checkbox instead).
*
The multi-selected regions are hereby called "epxanded selection", which
will all be target for editor's modifications respectively as well. The
first region selected is called the "initial selection" and the latest
selected region is called the "primary selection".
*
Route keyboard stroke Gdk events from main window to region chooser in
order to get aware about Ctrl and Shift key strokes for Ctrl-click and
Shift-click actions.
*
When clicking on a region, grab the focus from whatever widget is
currently focused, and focus an arbitrary checkbox (in this case the
"All Regions" checkbox for now) instead. This is a workaround to prevent
an issue where keyboard key-up Gdk events were not delivered to the region
chooser, which would have caused multi-select actions to never end.
*
Prevent double-click on region to fire dimension manager to pop up if
either Shift or Ctrl key is currently pressed down, to prevent
accidentally getting this popup when still doing multi-selections.
*
Bump version (1.2.4.svn4).
2026-02-12 schoenebeck * Script Editor: fine tune preprocessor text color in dark mode.
2026-02-10 schoenebeck * Script Editor: markup left hand's side line view strip sections in
red / yellow color on errors or warnings.
*
Bump version (1.2.4.svn3).
|
|
|
|
|
libgig
|
|
2026-03-06 schoenebeck * Serialization: fix order of type and version compatibility checks when
syncing objects (type compatibility must be checked before version
compatibility).
2026-03-06 schoenebeck Serialization: fix automatic self-registration of pointer types
*
So far pointers did only register themselfes exactly as pointer types,
but not as their dereferenced types. This caused an assertion fault if
the respective C++ class was used as a strong pointer without manual
type registration. Fix this by automatically registering the dereferenced
type of the pointer as well.
2026-02-27 schoenebeck * helper: fix external linkage of helper functions (fixes helper tests from
having failed with certain compiler optimization settings on non-Windows
systems, as we are poking with defining _WIN32 to test behaviour of
helper function on Windows, which fails if the compiler decided to not
inline the helper functions).
2026-02-25 schoenebeck Serialization: fix regression introduced by SVN r4505
*
DataType resolver: depending on the underlying system, "int" and "long"
types may not been covered by stdint typedefs, which caused an assertion
fault on such systems.
2026-02-09 schoenebeck * Serialization: drop superfluous DataType resolver implementation lines
for native types size_t and ssize_t (as these are already handled by
the prior typeid comparison checks for other native int/uint types).
2026-02-09 schoenebeck * Serialization: fix preregistering native C++ object to correct Archive
object (fixes SVN r4488).
2026-02-08 schoenebeck * Serialization: move Serialization implementation specific (not public
API) source files into a new subdirectory src/srx/.
*
Bump version (4.5.2.svn9).
2026-02-07 schoenebeck * Serialization: fix unnecessary need of explicit registration of
polymorphic C++ classes (by applications) by auto registering those
native C++ types earlier.
2026-02-02 schoenebeck * src/SrxJSONFormat.cpp: fix superfluous commas in JSON array of
serialized objects.
2026-02-02 schoenebeck * src/SrxJSONFormat.cpp: fix superfluous spaces in "id" JSON value strings.
2026-02-02 schoenebeck * src/SrxJSONFormat.cpp: only encode "version" and "min_version" JSON
numbers if those were actually set by serializing application
(i.e. if their value being non-zero).
2026-02-02 schoenebeck * src/SrxJSONFormat.cpp: don't encode line breaks on JSON array
"custom_types", as this array only takes few characters anyway.
2026-02-02 schoenebeck * src/SrxJSONFormat.cpp: don't encode a "custom_type" JSON array if the
respective DataType does not contain any custom type(s).
2026-02-02 schoenebeck Serialization: fix JSON exception on empty strings
*
SrxJSONFormat: fix having not encoded a JSON string for empty strings,
which caused an exception on decoder side due to the expected JSON
"value" string being missed.
*
Tests: Guard this Serialization issue with a test case.
*
Tests: print the exception text instead of just silently catching them.
*
Bump version (4.5.2.svn8).
|
|
|
|
|
qsampler
|
|
2025-03-28 capela * An Early Spring'25 Release (v1.0.1) 2024-06-19 capela * An Unthinkable Release (aka. v1.0.0) 2024-05-01 capela * A Spring'24 Release Candidate 2 (aka. v1.0.0-rc2) 2024-04-10 capela * A Spring'24 Release Candidate (aka. v1.0.0-rc1) 2024-01-24 capela * A Winter'24 Release (v0.9.12) 2023-09-09 capela * An End-of-Summer'23 Release (v0.9.11) 2023-06-01 capela * A Spring'23 Release (v0.9.10) 2023-03-23 capela * An Early-Spring'23 Release (v0.9.9)
|
|
|
|
|
liblscp
|
|
2025-03-28 capela * An Early Spring'25 Release (v1.0.1) 2024-06-19 capela * An Unthinkable Release (aka. v1.0.0) 2024-05-01 capela * A Spring'24 Release Candidate 2 (aka. v1.0.0-rc2) 2024-04-10 capela * A Spring'24 Release Candidate (aka. v1.0.0-rc1) 2024-01-24 capela * A Winter'24 Release (v0.9.12) 2023-09-09 capela * An End-of-Summer'23 Release (v0.9.11) 2023-06-01 capela * A Spring'23 Release (v0.9.10) 2023-03-23 capela * An Early-Spring'23 Release (v0.9.9)
|
|
|
|
|
jsampler
|
2012-05-30 iliev* save effect parameters into lscp file (see #179)
2012-01-30 iliev* fixed bug #160
2012-01-25 iliev* the default MIDI bank numbering is now zero-based
2011-12-15 iliev* Initial support for Android platforms (only sampler channel
manipulation for now - see the screenshots on the website)
2011-11-24 iliev* fixed bug #156
2011-11-23 iliev* Added option to select a sampler engine in Add/Edit Instrument dialog *
Moved all Swing dependent code outside the JSampler core
2011-09-19 iliev* Usе multicolumn menus for adding instruments to
MIDI maps and to orchestras from the Instruments Database
2011-08-17 iliev* fixed engine cache
|
|
|
|
|
jlscp
|
|
2011-11-23 iliev * Client: added new method - getProtocolVersion
2011-08-17 iliev * fixed engine cache
2011-08-16 iliev * Cache engines' info to speed up the sampler channels' info retrieval
2011-07-03 iliev * added two new methods to FxSend class: getDestChainId and getDestChainPos
2011-06-28 iliev * added three new methods to EffectParameter class -
getEffectInstanceId, getIndex, toString
2011-06-28 iliev * minor refactoring
2011-06-24 iliev * Added support for send effects
2009-08-03 iliev * preparations for release 0.8
|
|
|
|
|
Documentation
|
|
2026-02-15 schoenebeck * NKSP language tour: add section "patch" variables.
2026-02-11 schoenebeck * NKSP language tour: markup message() function
2026-02-11 schoenebeck * NKSP language tour: add user functions to units section.
2026-02-11 schoenebeck * NKSP language tour: elaborate string variables.
2026-02-10 schoenebeck * NKSP language tour: bunch of corrections.
2026-02-08 schoenebeck * NKSP language tour: add section about final operator.
2026-02-08 schoenebeck * NKSP language tour: add section about standard measuring units.
2026-02-08 schoenebeck * NKSP language tour: extend variable types section, especially with real
number variables, real array variables and with type casting of types.
2026-02-08 schoenebeck * NKSP language tour: update user functions section with function
arguments and function result.
2026-02-08 schoenebeck * NKSP language tour: add section about variable name spaces.
2026-02-08 schoenebeck * NKSP language tour: update entire "Variable Scope" section by taking
the meawhile added local variables into account.
2025-06-03 schoenebeck * Release notes for LinuxSampler 2.4.0.
2024-01-26 schoenebeck * Add release notes for LinuxSampler 2.3.0 release.
2021-05-16 schoenebeck * Site Template: support NKSP "patch" qualifier keyword.
|
|
|
|
|