Doc Home About Build Config More
Sample folder The original GrandPiano set uses multiple lines specifying the wav's to be selected with their corresponding fixed velocity value in a 127 steps scale. Velocity defaults to highest possible value.
%%mode=keyb
%%velmode=sample
%%velolevs=127
%notenamev4.wav,%velocity=40
%notenamev7.wav,%velocity=60
%notenamev11.wav,%velocity=80
%notenamev14.wav,%velocity=100
%notenamev16.wav
Please see the "SalamanderGrandPiano_adapted_v2.zip" in the samples folder. for a detailed example of improving this sample set (less latency, accurate velocity, less load time).

Sample folder This set shows voices and release. It uses actually one velocity range of the GrandPiano combined with Saw. Piano has fixed release, saw defaults to the longer "preset" value.
%%mode=keyb
%%release=100
%%velmode=accurate
%notenamev*.wav,%release=30
%midinote.wav,%voice=2

Sample folder A demo definition set, which makes it possible to give the loops and fills a self explaining name. Directory on the left is interpreted correctly.
%%mode=loop
%%velmode=accurate
%midinote*.wav

Adding midi files to samplesets:
If the internal midi file player is enabled in the system configuration, you can add songs to the sampleset folder and its definition.txt.
Only variable is the %smfseq to identify the file to the respective midi control/button for starting/stopping it.
So if you have "mysong.mid", you can define it with line "mysong.mid,%smfseq=1".
If samplerbox needs to display the songname, it uses the stream information and falls back to the filename if no title is present there.
Assigning the proper sounds to the miditracks in every file can be done via the Multi-timbral channel map.

Effects/filters and keyboard helpers: They can be configured via the system configuration and/or controlled via MIDI controllers, the button menu or the webGUI.
Scope and impact on performance is indicated at Effects & audio filters.
Here you will also find links to pages giving more information (going into detail is interesting, but not for the weakhearted).
Despite warning above: just playing with the options is usually harmless and very inspiring. If you're really new, I suggest to set the limiter on when experimenting (especially with the moog filter). After you get acquainted you can turn it of for the fine tuning.

Button controlled menu:
Samplerbox supports a three layered menu system which can be controlled by (max) four buttons:
  1.   + / increase / up
  2.   - / decrease / down
  3.   select
  4.   return
Layers are: function groups, functions in group, values of function.
The menu structure is defined in the menu.csv (see configuration). The resulting 3-line menu is shown on the available display, depending the displays capability. The buttons can be implemented/defined via: Meaning of the LED signals:
A red and green LED (or whatever you solder..) can give a rudimentary but very visible status of the box. Using my colors and naming:

Note: if the script crashes, results are unpredictable = LED's are in the state of the crash. As the "systemctl stop samplerbox" forces a crash, the LED's will stay on until you have started the script manually and stopped it with ctrl-C.

Control via the MIDI controller:
Your midi controller device may be capable of sending midi controls via buttons, levers or wheels.
You can use the Configuration files together with the customizable items on the device(s) to enable the available controls to use samplerbox's capabilities.
This samplerbox is configured to recognize next control change messages:

Using MIDI thru/through:
Samplerbox can forward it's input to designated output ports. This is a software solution so it has pros and cons to be considered for your situation. GUI for usage via tablet, PC or mobile:
An embedded webserver gives access to all customizable parameters. It can be reached via all network connections on your PI using your webbrowser. Sofar it works as it should in Firefox, Chrome, Safari, Edge and Silk. Just try it...
NB: If you want to use a no longer used iPad/iPhone: in non-recent Safari the slider doesn't function well. You may get around using Chrome or Firefox.

When you connect with a network cable: start your browser, type "samplerbox.<yourhomedomain>" in the address bar (or use the assigned IP-address) and go !
If you need a fixed IP-address on the wire, this can be assigned in the eth0 entry in wifistatips.txt (what's in a name..).

The builtin WiFi adapter can be used:

Of course, when the WiFi connection works, you can also use that for SSH connectivity if needed.

The GUI screens are built from building blocks, making it easy to tweak it to your preference. The screenshots on the right give examples of what is possible.
Good to knows:

"Trial box"   and   "Production version" Display



Midi note assignments
Click for more theory




Display legend Selected a major-7 chord and
voice#2 in the set "3 Voices"



Buttons Red=+   Black=function   Blue=-



?
?

Screenshots webGUI:

WebGUI physical buttons/midi controls will not be changed ofcourse, so if you touch these you're back on the phical status.

  • The webGUI "LCD" screen can pick up the LCD display status at an adaptable refresh rate and also gives buttons functionality. This can virtualize physical controls on your smartphone.
  • If you change USB storage device (mostly stick/thumbdrive), use the NewUSB/RenewMedia button and wait till the GUI is at rest with all parameters visible
  • After updating the definition.txt via the SET button this "RenewMedia" is executed automatically. There is no screening on the input for the definition.txt. If you make errors, the interface will just mention the lines skipped when reloading the new definition.
  • When (for whatever reason) the screen did not built up correctly, use