de en sk
Home > Products > Sampler


© Ing. Radovan Konečný - radkon, 2011-2016

If you are interested in buying this Sampler, please contact me. New future versions of this software and some of our sounds and presets are already included in the price of the Sampler.

Sampler is one of the components of a virtual music studio.

About program

Sampler is a program to play pre-recorded sounds (samples), so that it can be played as a musical instrument. In addition to the MIDI input, the Sampler is compatible with NetSound.

For example, if the pre-recorded samples will be single piano tones (at least one sample per each tone), the Sampler will be a virtual piano. Playing on it can be performed by incoming MIDI commands (from MIDI keyboard or sequencer) or through NetSound. (Via NetSound, it is also possible to render a song in non-real-time, for example, from a MID-file, and this can also be performed over a network connection.)

To play a sound, the preset file (.preset extension) and sample files (.rkwav extension) are required.


Screenshot of preset editor:

Sounds for the Sampler

Name of the sound Audio samples Preset and samples
Jarre's Laser Harp

free - on request
Karplus-Strong 32/0.8
(own sound)

- sample 1

- sample 2

- sample 3

Karplus-Strong 64/0.6
(own sound)


- sample 1

- sample 2

- sample 3

(own sound)

on request
Bass guitar 1
(own sound)

on request
Bass guitar 2
(own sound)

Bass guitar 3
(own sound)

Supersaw 1024
(own sound)

on request
Supersaw 10000
(own sound)

- sample 1

- sample 2

on request
Jew's harp
(own sound)

on request
Soprano recorder
(own sound)

on request


Basic waveforms (Saw, Sine,
Square, Triangle, DiracComb,
Noise, Constant)
(own sound)

Features of the Sampler

  • optional polyphony (i.e. the number of voices sounding at once) from 1 to 128,
  • multi-timbrality - 16 different sounds, each timbre has its own setting (MIDI channel, key range, transposition, level, tuning, velocity curve),
  • mapping up to 16384 stereo samples (for keys 0 to 127 and velocity 0 to 127) or even more (see next point),
  • mapping multiple samples for the same key and velocity and random selection of them when playing, or selecting the sample by the associated controller (the selection mode is adjustable separately for each key),
  • the ability to play the sample from the specified position and the ability to loop the specified section,
  • real-time sample editing - dynamic level control, dynamic filtering and dynamic detuning (speed of the playback),
  • for each key and velocity, individual setting of level and level envelope (Attack time, Decay time, Sustain level, Release time),
  • for each key and velocity, individual setting of detuning (i.e. pitch shifting or also speed of the playback),
  • for each key and velocity, individual setting of filter (type of the filter, cutoff frequency, resonance),
  • for each key and velocity, individual setting of filter envelope (envelope influence on the cutoff, envelope influence on the resonance, Attack time, Decay time, Sustain level, Release time),
  • the ability to create key "stop" groups - the keys in the common group will be mutually exclusive (all other tones of the same group will stop when the tone is started),
  • the ability to create key "skip" groups - if it plays at least one tone from the group, another tone from the same group does not start playing,
  • the ability to control decay parts of the envelopes (Release time) also by velocity of key releasing, if it the MIDI keyboard supports,
  • the ability to control most parameters by assigned MIDI controllers, wide possibilities of controller mapping,
  • the ability to transform controller MIDI messages (Pitch-bend, After-touch, Control change, Program change) to basic MIDI messages (Note On/Off, Sustain On/Off), wide possibilities,
  • built-in effect module (chorus, echo),
  • built-in 3-band equalizer,
  • inputs: MIDI-IN device or more MIDI-IN devices, NetSound,
  • the ability to record incoming MIDI messages (also from NetSound) to MID-file,
  • the ability to resend incoming MIDI messages (also from NetSound) to chosen MIDI-OUT device,
  • outputs: sound card (system driver or ASIO driver), writing to WAV-file, NetSound,
  • in the case of low polyphony, reducing burst when the voice is terminated,
  • preset (i.e. complete setting of the sound) stored in the XML format (can be viewed or edited by other programs), preset editor is included,
  • built-in WAV-file player,
  • displaying of output level in decibels (optional scale range), overload indicator,
  • if the output is a sound card, the limiter is integrated,
  • displaying of voice-usage, indication of the voice termination (in the case of low polyphony),
  • displaying of key velocity of the incoming MIDI messages.

This Sampler keeps in memory only part of the samples (their beginnings), the rest is dynamically loaded from the disk. However, the operating system can also store in memory parts of samples that are read from the disk so that it allows for seamless play if memory is available. If there is no memory available, some minor audio drop-outs may occur (especially when playing parts of samples that were not yet played), but these drop-outs have no effect on rendering. Therefore, only the beginnings of the samples and the samples, which are actually used for playing, will be kept in memory.

Types of the filter:

  • none,
  • LPF - low-pass filter (slope of 12dB/octave),
  • LPF2 - low-pass filter (slope of 24dB/octave),
  • HPF - high-pass filter (slope of 12dB/octave),
  • HPF2 - high-pass filter (slope of 24dB/octave),
  • BPF - band-pass filter (resonating),
  • BPF2 - like BPF, but double slope.

The Sampler uses a simple audio compression RKWAV and CD sound quality (44.1kHz, 16-bit, stereo/mono). Sound is internally processed in a 32-bit resolution with a floating decimal point. Audio output can be either CD quality to sound card or even higher quality via NetSound (up to 32-bit with floating decimal point).
The program is written in Java.

Helpful table of tones and their frequencies is » here «.


Virtual keyboard for NetSound
MID-file player via NetSound
MID-editor with playback via NetSound
Interactive music system INGENIA


Monotimbral is such a musical instrument that can play only one sound at a time (e.g. piano). Although it can play more voices and tones at one time (polyphony), it is still one sound.

Multitimbral musical instrument is able to play more sounds at one time (e.g. piano and bass guitar). For each sound, a separate MIDI channel or key range can be assigned.

This Sampler is multitimbral.

ASIO support

In the case of a Windows operating system whose sound driver produces a latency between the (MIDI) command and sound, this program also supports ASIO audio devices that do not have this audible delay (are so-called "low-latency"). This requires a special driver installed (e.g. ASIO4ALL). ASIO enables to play with a small delay between the (MIDI) command and the sound being heard.
For other operating systems, ASIO driver is probably not needed. This program does not support ASIO for non-Windows operating systems.

Built-in preset editor

The built-in preset editor can be started from the command line by the java -jar Sampler.jar edit command
or java -jar Sampler.jar edit preset_file_name

It is intended for those who know what they are doing. Only the preset file is edited in the editor (extension .preset). The preset file refers to the samples (.rkwav-files) that must exist. Multiple presets (and thus sounds) can use the same samples - you just need to have the samples on your computer once. Samples can be stored in a separate directory (this does not have to be the Sampler application directory), then you can specify a common path to these samples in the program.

Creating and editing of samples is left to the user. If the user already has samples (e.g. in WAV format), all he has to do is to convert them to a special compressed format RKWAV - files with .rkwav extension will be created. The Sampler no longer needs WAV-files. In the preset, these sample files are mapped - it determines which key or range of keys and which velocity or range of velocity the sample is to play. In addition to mapping itself, all other sample playback parameters can be specified in the preset (speed, level envelope, filtering, filter envelope and many other things).

Copyright © 2009-2023 Ing. Radovan Konečný - radkon. All rights reserved.