news about features screenshots demos download donations support developers faq documentation bugs instruments links credits
Bitcoins Or donate Bitcoins at:

Why donate?


2019-09-17 New NKSP core language features in the latest development version: Support for Real Numbers, Standard Units and Finalness ...
2019-07-27 LinuxSampler 2.1.1 had been released. This is mainly a maintenance release. See the release notes for details.
2019-03-10 The macOS Installer has been modernized e.g. using now Gtk 3 for Gigedit and Qt 5 for QSampler and a modern C++11 capable compiler. Support for ancient PowerPC Macs and 32-bit Intel Macs has been dropped for that reason. So all Mac snapshot builds starting from today onwards will require a 64-bit Intel Mac with at least macOS 10.7 or higher. If you still have one of those ancient Macs and can't find an old snapshot build on our website that still works for your old Mac, then you may write us on the mailing list.
2017-11-26 LinuxSampler 2.1.0 had been released after two years of development. Check the release notes for a detailed review of what's new with LinuxSampler and friends.
More ...

Latest Subversion Commits

2020-05-15 schoenebeck
Ref<> smart pointer class is now thread-safe.
* Require C11 compliant compiler.
* Ref<> class: Implemented lock-free & wait-free thread-safety.
* Ref<> class: Use portable format specifier %p for pointers.
* Bumped version (2.1.1.svn56).
2020-05-15 schoenebeck
* Ref<> class: prevent compiler error if T == T_Base (due to method signature duplicate).
* Bumped version (2.1.1.svn55).
2020-04-06 schoenebeck
Fixed deadlocks (e.g. when restarting engines).
* Individual thread implementations (e.g. disk thread, etc.): Disable thread cancellation on critical sections, e.g. when holding mutex locks, to prevent deadlocks if thread is stopped and/or restarted.
* Added TestCancel() calls to thread implementations if missing.
* No need to wrap Thread::TestCancel() calls into CONFIG_PTHREAD_TESTCANCEL macro conditions (since TestCancel() is already a stub on systems which don't have pthread_testcancel() available).
* If compiled for debugging: give each thread a human readable name to simplify debugging of multi-threading issues.
* DiskThreadBase: TestCancel() and pthread_testcancel() calls are per-se redundant, so only call TestCancel().
* Added missing override keywords to silent compiler warnings.
* Bumped version (2.1.1.svn54).
2020-04-06 schoenebeck
Mutex class: Implemented bug detection and deadlock debugging features.
* Bug detection: By enabling macro DEBUG_MUTEX at compile time and calling new method setDebugEnabled(true) at runtime, automatic bug detection features are activated which e.g. raise an assertion fault if a thread attempts to Unlock() a thread it does not own a lock on, or when locking more than once while not using mutex type RECURSIVE and much more.
* Deadlock debugging: Also if these features were activated like described above, the most recent mutex lock is recorded by capturing the name of the thread and the precise call stack which caused the mutex lock. This information can be used to identify the exact situation that lead to a dead lock efficiently with a debugger.
* Bumped version (2.1.1.svn53).
2020-04-05 schoenebeck
Thread class: Added new methods (POSIX implementation only yet):
* Added methods pushCancelable() and popCancelable() for allowing to prevent thread being terminated on critical sections.
* Added methods name(), nameOfCaller() and setNameOfCaller() to allow assigning threads human readable names for debugging purposes.
* configure: Always check for availability of pthread_testcancel() and use it if so (previously it was only used if explicitly enabled by configure script option).
* Raise a compiler warning if pthread_testcancel() is not available.
* Bumped version (2.1.1.svn52).
2020-04-05 schoenebeck
* Implemented global backtraceAsString() function for debugging purposes (POSIX systems only, no Windows implementation yet).
* Bumped version (2.1.1.svn51).
2020-02-16 schoenebeck
* NKSP: Fixed re-entrant issue with function calls which caused wrong result values if the same function was called multiple times in a term (specifically if metric prefixes were used).
* Tests: Added NKSP core language test cases to guard this fixed issue.
* Bumped version (2.1.1.svn50).
2020-02-15 schoenebeck
* NKSP: Fixed intermediate function result values never having reflected any standard measuring unit type.
* Tests: Guard this fixed NKSP issue by test cases.
* Bumped version (2.1.1.svn49).
More ...
2020-05-30 schoenebeck
* Combine Tool: Prevent NULL samples in combined instrument (if source dimension had less zones than output dimension).
* Bumped version (1.1.1.svn20).
2020-05-29 schoenebeck
* Combine Tool: Fixed wrong number of output dimension zones being created (on unequal, odd dimension zone count between two input instruments).
* Bumped version (1.1.1.svn19).
2020-02-17 schoenebeck
* Script 'patch' variables editor: Fixed 'patch' variables list not automatically been refreshed after script source code changes or script slot assignment changes.
* Bumped version (1.1.1.svn18).
2020-02-16 schoenebeck
* Script 'patch' variables editor: double click anywhere on a script's title row (or hitting <enter> while that row is selected) opens script source code editor for that double clicked script.
* Also show a tooltip and a pencil icon on such rows to make user visually aware about this feature.
* Bumped version (1.1.1.svn17).
2020-02-16 schoenebeck
* Script 'patch' variables editor: Fixed backspace key event conflict while editing some patch variable's value.
* Bumped version (1.1.1.svn16).
2020-02-03 schoenebeck
* Use more appropriate stepping/paging increments/decrements for spinboxes' plus/minus buttons (depending on the individual parameter spinbutton actually controls).
* Bumped version (1.1.1.svn15).
2020-02-01 schoenebeck
* NKSP: Added support for managing script 'patch' variables for each instrument; added a dedicated "Script" tab on right-hand side of Gigedit's main window with a list view to manage these variables.
* Bumped version (1.1.1.svn14).
2020-02-01 schoenebeck
* Script Editor: highlight new NKSP 'patch' keyword in pink color.
* Bumped version (1.1.1.svn13).
More ...
2020-05-24 schoenebeck
Serialization.cpp: Fix compatibility issues with new 2nd custom data type
* When encoding serialised data stream: always write 2nd custom data type name to data type blob, and append it actually to the end of the data type blob (not somewhere in the middle), no matter if a 2nd custom type is actually present (i.e. empty string) in object's data type or not.
* When decoding a serialised data stream: check the size of the data type blob, if the blob size is longer than a Srx v1.0 format data type blob, then assume there is a 2nd custom data type name, so read it (it might be an empty string if 2nd custom data type was not present on encoding side's object).
* Bumped version (4.2.0.svn16).
2020-05-23 schoenebeck
Serialization.cpp/.h: Added built-in support for C++ Map<> objects
* Introduced out of the box support for serialising / deserialising variables of C++ Map<> data types (a.k.a. std::map from the STL).
* DataType: Added optional 2nd custom type name.
* Bumped version (4.2.0.svn15).
2020-05-23 schoenebeck
* Serialization.cpp/.h: Added built-in support for C++ Set<> objects (a.k.a. std::set from the STL).
* Bumped version (4.2.0.svn14).
2020-05-19 schoenebeck
Serialization.cpp/.h: Added built-in support for C++ Array<> objects
* Introduced out of the box support for serialising / deserialising variables of C++ Array<> data types (a.k.a. std::vector from the STL).
* Member offsets are now signed and for (newly added support of) member variables on the heap -1 is always used as offset instead.
* Bumped version (4.2.0.svn13).
2020-05-19 schoenebeck
* Serialization.cpp/.h: Added new method Archive::operation() which allows applications to distinguish between serialization vs. deserialization in their serialize() method implementations.
* Bumped version (4.2.0.svn12).
2020-05-19 schoenebeck
* Serialization.h: Fixed assertion fault on some systems if a member variable was serialised which was declared as size_t or ssize_t data type.
* Bumped version (4.2.0.svn11).
2020-05-17 schoenebeck
Serialization.cpp/.h: Added support for "String" data type.
* Added method DataType::isString().
* Added method Object::setStringValue().
* Implemented built-in detection and serialization / deserialization of C++ String objects (a.k.a. std::string from the STL).
* Bumped Srx format version to 1.1.
* Bumped version (4.2.0.svn10).
2020-05-17 schoenebeck
* Serialization.cpp: Fixed broken Archive(RawData) constructor which always threw an Exception.
* Bumped version (4.2.0.svn9).
More ...
2020-03-24 capela
* A Spring'20 release.
2019-12-22 schoenebeck
* If connection to server aborted, try to automatically reconnect (if server was not started by QSampler).
2019-12-22 schoenebeck
* Fixed crash when a device disappeared on server side (caused by iterator invalidation).
2019-10-17 capela
* Qsampler 0.6.0 (autumn'19) released.
2019-04-11 capela
* A Spring-Break'19 release (v0.5.5)
2019-03-11 capela
* Pre-LAC2019 release frenzy: v0.5.4 is released.
2019-02-11 capela
* HiDPI display screen support (Qt >= 5.6). (EXPERIMENTAL)
2018-12-06 capela
* Preparations for v0.5.3 (end-of-autumn'18) release.
More ...
2020-03-24 capela
* A Spring'20 release.
2019-12-22 schoenebeck
* Fixed potential missing NULL termination of locale strings.
2019-12-22 schoenebeck
Improved connection error handling:
* Expose actual system error codes via client interface instead of just -1 whenever a syscall failed.
* Added new client interface function: lscp_client_connection_lost(); for checking whether client lost connection to server.
2017-12-12 capela
* An Autumn'17 release: bumped directly to 0.6.0.
2016-11-13 capela
* Preparations for v0.5.8 - A Fall'16 release.
2016-11-03 capela
* Sync to upstream git head.
2016-04-12 capela
* Sync to upstream git repo.
2016-04-06 schoenebeck
* Debian packaging: Updated to compat 7 (was 4), and assigned as maintainer of this package.
More ...
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
More ...
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
More ...
2020-02-06 schoenebeck
* NKSP language tour: Updated "polyphonic" paragraph about real number (floating point) variables.
2020-01-13 schoenebeck
* NKSP: Updated some functions for their new value range.
2020-01-06 schoenebeck
* NKSP language tour: minor corrections (typos and grammar).
2020-01-03 schoenebeck
NKSP updates for new RPN / NRPN features:
* NKSP language tour: Added new event handlers rpn and nrpn.
* NKSP reference: Added new built-in function set_rpn().
* NKSP reference: Added new built-in function set_nrpn().
* NKSP reference: Added new built-in variables $RPN_ADDRESS and $RPN_VALUE.
* NKSP reference: Added new built-in constants $NI_CB_TYPE_RPN and $NI_CB_TYPE_NRPN.
2019-12-27 schoenebeck
* NKSP: Added recently added built-in functions msb() and lsb() to reference docs.
2019-09-16 schoenebeck
* NKSP: Added recently added built-in functions to reference docs.
* NKSP: Added info about std units and finalness to existing functions.
* NKSP: Added recently added built-in constants ~NI_MATH_E and ~NI_MATH_PI.
2019-09-15 schoenebeck
* Draft: NKSP Real Numbers, Units and Finalness.
2019-08-29 schoenebeck
* NKSP reference: Minor cosmetical corrections.
More ...
Last Webserver Sync: Wed Feb 26 17:20:48 CET 2020