Documents
Writing Docs Gigedit SFZ Instrument Scripts NKSP Language NKSP Reference

LinuxSampler 2.5.0

LinuxSampler 2.5.0 and friends were released on Aug 5th 2026. A bit more than a year has passed since the previous feature release.

Most of the changes in this LinuxSampler release serve as backend changes for new features in Gigedit. So let me just redirect you at LinuxSampler's ChangeLog file for a detailed list of new features and fixes, and without further ado, let's dive-in, to actually see the new features in action.

Gigedit 1.3.0

This new feature release of Gigedit is all about usability improvements, most of them of visual nature.

Multi-Region Selection

By either Ctrl-clicking or Shift(⇧)-clicking you can now select (or unselect) multiple regions, such that you can change sound parameters of specifc regions simultaniously while working with the editor's right-hand side parameters pane. The ironic thing here is that we already had multi-selection for dimension regions for a very long time, exact in the same way by Ctrl/Shift-clicking individual dimension regions (a.k.a. "cases") from the editor's dimension region pane on the lower section of the editor. But for some reason we had never extended this multi-selection concept to the regions level, except that we had the "all regions" checkbox basically from the beginning of course.

You can naturally also combine multi-region selection with multi-dimension-region selection, like say you only wanted to change parameters of these certain regions, and of those regions only those specific dimension regions.

This is not limited to mouse operations, there are also keyboard accelerators for all these multi-selection operations which you can all find listed from the app's "Edit" menu.

Alternative Values

The next important new feature(s) in this release help you not getting lost with complex .gig sounds by handling so called "alternative values".

The challenge with the Giga format has always been its potential massive amount of so called "cases", that is the sheer amount of different sound parameters for different situations. Because in the end, the sound editor can only show you for each sound parameter only exactly one value at a time, right? So what is that sound parameter value that you currently see on the right-hand side of the editor? Because remember, the editor allows multi-selection? The answer is, the editor was always just showing you exactly the one and only parameter value of the so called "primary selection" exclusively, that is exactly the case that is highlighed in all-blue (whereas the other selected "cases" are marked in blue-hatched pattern). So this restriction also applies when there are multi-selected regions / dimension regions; they would also always be limited to show the parameter value of exactly one "case" (or one dimension region if you will).

But here is the catch: all other currently selected regions and selected dimension regions might have different values for the respective sound parameter. So the only way to find out was going through all of them manually by selecting each one of those regions and dimension regions individually and see if the parameter value displayed would change.

Let's just stop this nonsense: as soon as you have multi-selection applied, the editor is now highlighting all sound parameters that have multiple different values ("alternative values") in bronze coloured and bold font, based on the current multi-selection of regions / dimension regions that is.

When you then move the mouse pointer over a highlighted parameter, it then now also shows you their specific, alternative parameter values, however not in the parameter entry box, but instead directly within the zones (or cells) of the respective dimension regions on the lower section of the screen, and additionally in compact coloured form on the region cells (that is on a higher structural level). This approach has the advantage that you not only see the raw parameter values alone, but also to which dimension regions (and their parent regions) those are currently assigned to exactly, such that you can immediately see their assigned locations as well.

And as all sound parameters are distributed over a number of tabs in Gigedit, the respective tab itself is highlighed in bronze and bold as well if any of the tab's parameters is highlighted in turn, which further improves keeping oversight, since only one tab can be displayed at a time.

Hopefully these new features make working on even the most complex instruments in the Giga format much more intuitive from now on. These features only become visible as described if there is at least more than one dimension region and/or more than one region selected. To get a first impression of these new visual features, start by simply checking "all regions" and "all dimension splits" checkboxes as shown in this screen cast. If you are getting too many values displayed, reduce the selection, e.g. by unchecking "all regions" again or manually selecting specific regions / dimension regions as described before.

Prelistening

So far we have just talked about parameters. But what about samples? A complex Giga instrument not only has a massive amount of parameters, it typically also has a massive amount of samples. The previously introduced new features described above could help you with understanding complex multi-samples as well, in the sense that you can for instance go to the "Sample" tab on the right-hand side, move the mouse pointer over the "Sample" field, and then see which sample names are displayed in the individual dimension region cells below (and on the regions above). You can do the same by moving the mouse pointer over the sample group field by the way. However these are just names of the samples and their groups. For a musician it is more important though, how do they actually sound, which is often not obvious by just reading a name.

This is where the new "prelisten" features comes to play (literally): on the "Sample" tab you now have a simple and probably self-explantory play button. So while clicking and holding the play button, this specific sample is played, and stopped as soon as you release the mouse button again.

However there is more: by Alt-clicking a dimension region on the lower section of the screen, you can now also play their specific sample directly (without changing selection) which allows you to understand very quickly how the instrument is comprised of with different samples. It is important to understand that this is really just playing this one specific sample, not multiple samples. This is therefore especially useful for multi-layer combi sounds, where you otherwise would have no easy way to understand how the sound is comprised of with individual samples. Because for velocity splits you could also trigger the right note with the right velocity to simulate the respecitve "case", but with a multi-layered sound there was no conventional way to just get one isolated sample of a multi-layer being played alone.

All prelisten features only work in live-mode in conjunction with a running LinuxSampler instance to play the sound.

Configurable UI Theme

In the previous maintenance releases of Gigedit there were numerous visual fixes when running Gigedit on a system with "dark mode" enabled. This release goes a bit further and allows you to override not only whether you want Gigedit to appear in dark or bright mode (independent of what is globally configured on your system), but also to override the UI theme to be used by Gigedit. Those two apperance settings can be configured via the two new submenus "View" → "Colors", and "View" → "Theme" respectively.

Following Subwindows

There is another new submenu for configuring visual behaviour: "View" → "Subwindows follow Main Window", if enabled then all Gigedit child windows will automatically follow Gigedit's main window when Gigedit's main window is being moved around on screen. That is the child windows would automatically retain their relative position to Gigedit's main window.

Referenced Scripts

There is a new "Referenced" column in the "Scripts" tree view. On the left-hand side of Gigedit there are 3 tabs: "Samples", "Instruments" and "Scripts". The "Scripts" tree view now shows a "Referenced" column for each NKSP instrument script, this number reflects how often that particular script is referenced by some instrument. That way you can for instance easily see if a script is currently not, or barely used.

NKSP Diagnostics

The NKSP instrument script editor received configurabale diagnostics: As you might know, while typing new code into the NKSP code editor, all issues are automatically highlighted in real-time. What's new is that when you move the mouse pointer over some highlighed code issue, you can now also see the issue type category in squared brackets, along to the already existing detailed issue description of the tooltip.

And from the instrument script editor's new "Diagnostics" menu you can then configure how the sampler's parser shall handle those individual issue categories. You can configure warnings to be entirely ignored (in which case they are no longer highlighted in the code editor). The sampler's API also supports the opposite by allowing to promote warnings to errors, however this is currently not supported by the Gigedit UI. These diagnostic settings are currently saved as user preference for all your .gig files you are working on.

Furthermore, on the code editor's left hand side, issues are now visually prominently marked in red color for errors and yellow color for warnings respectively, so that you can more easily spot any kind of issues while scrolling a long instrument script, as this is more easy to perceive for the eye than having to spot these issues directly in the code section alone.

Auto-Highlight on Selection

Another minor but actually very useful feature in the NKSP editor is that wen you select a code portion (e.g. a variable or a function), all other occurences of the same text string are now automatically highlighted as well. This is very useful for instance to quickly spot all code locations where a certain variable is currently used, or seeing all callers of a certain function. Double-click to quickly select an entire word, or click and drag to select a specific text portion.

These were only the most note-worthy new features in this release of Gigedit. For a complete list of all new features and bug fixes, please refer to Gigedit's ChangeLog file.

libgig 4.6.0

Our fundamental file access C++ library libgig has also received some few noteworthy changes.

Increased Build Requirement

A C++14 compliant compiler is now required to build libgig from source.

Serialization in JSON Format

This release adds optional JSON support for serialized data generated with libgig's C++ Serialization framework . A JSON encoded serialization is much more human-friendly to read and to edit than the pre-existing custom and semi-binary Srx encoding format. However the Srx encoding format on the other hand is from algorithmic point of view much simpler and faster and less error prone, so it is still the default encoding format for serialized data with this framework. The encoding format can be explicitly chosen via the new Archive::format_t enum (see API), otherwise the right format is automatically selected.

Fixes

And last but not least there have been a few fixes for libgig. Please refer to libgig's ChangeLog file for more details.

Document Updated:  2026-08-05  |  Author:  Christian Schoenebeck