Appendix B: The <binding> element
Adding a binding to a UI control, MIDI handler, or modulator tells the DecentSampler engine that it should take input from a source and use it to change values in another part of the engine. An example of this would be a knob which controls the volume of a group, a CC controller that changes an effect parameter, or an LFO that modulates an effect parameter.
In order to set up a binding for a specific source, create a <binding> element within the source element.
In this example, a labeled knob is controlling the volume of the first group of samples (group 0):
<DecentSampler>
<ui>
<tab>
<labeled-knob x="420" y="100" label="RT" type="float" minValue="0" maxValue="1" value="0.3" textSize="20">
<binding type="amp" level="group" position="0" parameter="AMP_VOLUME" translation="linear" translationOutputMin="0" translationOutputMax="1.0" />
</labeled-knob>
</tab>
</ui>
</DecentSampler>
Here’s a full list of parameters for the <binding> element:
Attribute |
Description |
|
|---|---|---|
|
This tells the engine what type of parameter this is. Valid values are: |
Required |
|
Valid values are |
Required |
|
The specific 0-based index of the element to be modified by this binding. If you are targeting a group, for example, the first group would be 0, the second group would be 1, etc. |
Required |
|
When a binding is targeting a control, this is the same thing as the |
Optional |
|
When a binding is targeting a group, this is the same thing as the |
Optional |
|
When a binding is targeting an effect, this is the same thing as the |
Optional |
|
When a binding is targeting a modulator, this is the same thing as the |
Optional |
|
A comma-separated list of tags. The meaning depends on context: at |
Optional |
|
A comma-separated list of group tags. At |
Optional |
|
A comma-separated list of effect tags. When |
Optional |
|
A comma-separated list of modulator tags. When |
Optional |
|
A comma-separated list of UI control tags. When |
Optional |
|
A value that turns the binding on and off. Valid values are: |
Optional |
|
A string identifying the specific parameter that you wish to change. If you are modulating based on tags, you would put the tag you are targeting here. See Appendix D for example. |
Required |
|
A token describing the specific kind of parameter that you wish to change. A list of controller parameters are below. |
Required |
|
Valid values are |
Optional |
|
This is the min value this binding should send to the target parameter. This is only looked at if translation is set to |
Optional |
|
This is the max value this binding should send to the target parameter. This is only looked at if translation is set to |
Optional |
|
Valid values are |
Optional |
|
A list of input-output pairs that make up the translation table. The input and output are separated by commas. The groups of coordinates themselves are separated by semi-colons. Default: |
Optional |
|
The value that should be passed along when |
Optional |
|
Valid values are |
Optional |
Binding Parameters for Targeting Note Sequences
A special set of binding attributes exist for targeting note sequences:
Attribute |
Description |
Default |
Required |
|---|---|---|---|
|
A 0-based index of a sequence underneath the |
None |
Required |
|
Whether or not the sequence should follow the global tempo. Valid values are |
|
Optional |
|
What the binding should do with the sequence in question. Valid values are |
|
Optional |
|
An identifier used for tracking the state of a sequence. This value can be any sequence of numbers or letters. |
None |
Required when |
|
Whether or not the sequence should respect the velocity of the incoming MIDI note. This can only be used when the sequence is being triggered by a MIDI note binding. Value should be a floating point number from 0.0 to 1. |
Optional |
|
|
Transpose the notes in the sequence by an arbitrary number of half steps. Value should be a floating point number from -36 to 36. |
Any sequence of numbers of letters |
Optional |
|
Transpose the notes in the sequence relative to the pitch of the incoming MIDI note. This can only be used when the sequence is being triggered by a MIDI note binding. Value should be a floating point number from 0 to 127. |
Any sequence of numbers of letters |
Optional |
|
The speed of playback. Value should be a floating point number from 0.001 to 10000. |
1.0 |
Optional |
|
Valid values are: |
|
Optional |
Controllable Parameters
This is a list of parameters that can be used in conjunction with the <binding> element above. NOTE: The table below scrolls to the right.
Description |
|
|
|
Valid Range |
Modulatable |
Additional required parameters |
|---|---|---|---|---|---|---|
Global Volume |
|
|
|
0.0 - 16.0 |
No |
N/A |
Global Tuning |
|
|
|
-36.0 - 36.0 |
No |
N/A |
Global Pan |
|
|
|
-100 - 100 |
No |
N/A |
Sample Start (see note 2 below) |
|
|
|
0 - last sample |
No |
This value will be in number of raw samples where 0 is the beginning. See note 2 below. |
Sample End (see note 2 below) |
|
|
|
0 - last sample |
No |
This value will be in number of raw samples where 0 is the beginning. See note 2 below. |
Loop Start (see note 2 below) |
|
|
|
0 - last sample |
No |
This value will be in number of raw samples where 0 is the beginning. See note 2 below. |
Loop End (see note 2 below) |
|
|
|
0 - last sample |
No |
This value will be in number of raw samples where 0 is the beginning. See note 2 below. |
Low Note |
|
|
|
0 - 127 |
No |
The lowest MIDI note number that will trigger samples in this group. Integer values only. |
High Note |
|
|
|
0 - 127 |
No |
The highest MIDI note number that will trigger samples in this group. Integer values only. |
Low Velocity |
|
|
|
0 - 127 |
No |
The lowest MIDI velocity value that will trigger samples in this group. Integer values only. |
High Velocity |
|
|
|
0 - 127 |
No |
The highest MIDI velocity value that will trigger samples in this group. Integer values only. |
Root Note |
|
|
|
0 - 127 |
No |
The MIDI note number used as the root pitch for transposition. Integer values only. |
Silencing Decay |
|
|
|
0.0+ (seconds) |
No |
Controls the fade-out time in seconds when a note is silenced by a new note. When greater than 0, this overrides |
Silencing Mode |
|
|
|
|
No |
Controls how a playing note is silenced when a new note triggers silencing. |
Pitch Key Track |
|
|
|
0.0 - 1.0 |
No |
Controls how much the pitch of a sample follows the MIDI note. |
Amplitude Velocity Tracking |
|
|
|
0.0 - 1.0 |
No |
N/A |
Global Amp Envelope Attack |
|
|
|
0.0 - 10.0 |
No |
N/A |
Global Amp Envelope Attack Curve Shape |
|
|
|
-100 - 100 |
No |
N/A |
Global Amp Envelope Decay |
|
|
|
0.0 - 25.0 |
No |
N/A |
Global Amp Envelope Decay Curve Shape |
|
|
|
-100 - 100 |
No |
N/A |
Global Amp Envelope Sustain |
|
|
|
0.0 - 1.0 |
No |
N/A |
Global Amp Envelope Release |
|
|
|
0.0 - 25.0 |
No |
N/A |
Global Amp Envelope Release Curve Shape |
|
|
|
-100 - 100 |
No |
N/A |
Glide/Portamento Time |
|
|
|
0.0 - 10.0 |
No |
N/A |
Group Enabled / Disabled |
|
|
|
true, false |
|
|
Group Amplitude Envelope Enabled / Disabled |
|
|
|
true, false |
No |
|
Group Volume |
|
|
|
0.0 - 16.0 |
Yes |
|
Group Tuning |
|
|
|
-36.0 - 36.0 |
Yes |
|
Pan |
|
|
|
-100 - 100 |
Yes |
|
Amplitude Velocity Tracking |
|
|
|
0.0 - 1.0 |
|
|
Group Amp Envelope Attack |
|
|
|
0.0 - 10.0 |
|
|
Group Amp Envelope Decay |
|
|
|
0.0 - 25.0 |
|
|
Group Amp Envelope Sustain |
|
|
|
0.0 - 1.0 |
|
|
Group Amp Envelope Release |
|
|
|
0.0 - 25.0 |
|
|
Group Output 1 Volume |
|
|
|
0.0 - 1 |
No |
|
Group Output 2 Volume |
|
|
|
0.0 - 1 |
No |
|
Group Output 3 Volume |
|
|
|
0.0 - 1 |
No |
|
Group Output 4 Volume |
|
|
|
0.0 - 1 |
No |
|
Group Output 5 Volume |
|
|
|
0.0 - 1 |
No |
|
Group Output 6 Volume |
|
|
|
0.0 - 1 |
No |
|
Group Output 7 Volume |
|
|
|
0.0 - 1 |
No |
|
Group Output 8 Volume |
|
|
|
0.0 - 1 |
No |
|
Group Output 1 Target |
|
|
|
Any of the valid values for |
No |
|
Group Output 2 Target |
|
|
|
Any of the valid values for |
No |
|
Group Output 3 Target |
|
|
|
Any of the valid values for |
No |
|
Group Output 4 Target |
|
|
|
Any of the valid values for |
No |
|
Group Output 5 Target |
|
|
|
Any of the valid values for |
No |
|
Group Output 6 Target |
|
|
|
Any of the valid values for |
No |
|
Group Output 7 Target |
|
|
|
Any of the valid values for |
No |
|
Group Output 8 Target |
|
|
|
Any of the valid values for |
No |
|
Group Glide/Portamento Time |
|
|
|
0.0 - 10.0 |
|
|
Oscillator Waveform (group level) |
|
|
|
|
No |
|
Oscillator Damping (pluck1 only) |
|
|
|
0.0 - 1.0 |
No |
|
Oscillator Pluck Type (pluck1 only) |
|
|
|
0.0 - 1.0 |
No |
|
Oscillator Wavetable Position (wavetable only) |
|
|
|
0.0 - 1.0 |
No |
|
Oscillator Wavetable Frame Interpolation (wavetable only) |
|
|
|
|
No |
|
Harmonic Oscillator Partial Count (harmonic only) |
|
|
|
1 - 64 (integer) |
Yes |
|
Harmonic Oscillator Tilt (harmonic only) |
|
|
|
-1.0 - 1.0 |
Yes |
|
Harmonic Oscillator Odd/Even Balance (harmonic only) |
|
|
|
0.0 - 1.0 |
Yes |
|
Harmonic Oscillator Normalization (harmonic only) |
|
|
|
0.0 - 1.0 |
Yes |
|
Harmonic Oscillator Partial Levels (harmonic only) |
|
|
|
0.0 - 1.0 |
Yes |
|
FM6 Algorithm (fm6op only) |
|
|
|
1 - 32 |
No |
|
FM6 Operator 1 Level (fm6op only) |
|
|
|
0.0 - 1.0 |
No |
|
FM6 Operator 2 Level (fm6op only) |
|
|
|
0.0 - 1.0 |
No |
Same as |
FM6 Operator 3 Level (fm6op only) |
|
|
|
0.0 - 1.0 |
No |
Same as |
FM6 Operator 4 Level (fm6op only) |
|
|
|
0.0 - 1.0 |
No |
Same as |
FM6 Operator 5 Level (fm6op only) |
|
|
|
0.0 - 1.0 |
No |
Same as |
FM6 Operator 6 Level (fm6op only) |
|
|
|
0.0 - 1.0 |
No |
Same as |
FM6 Operator 1 Ratio (fm6op only) |
|
|
|
Any positive decimal |
No |
|
FM6 Operator 2 Ratio (fm6op only) |
|
|
|
Any positive decimal |
No |
Same as |
FM6 Operator 3 Ratio (fm6op only) |
|
|
|
Any positive decimal |
No |
Same as |
FM6 Operator 4 Ratio (fm6op only) |
|
|
|
Any positive decimal |
No |
Same as |
FM6 Operator 5 Ratio (fm6op only) |
|
|
|
Any positive decimal |
No |
Same as |
FM6 Operator 6 Ratio (fm6op only) |
|
|
|
Any positive decimal |
No |
Same as |
FM6 Operator 1 Feedback (fm6op only) |
|
|
|
0.0 - 1.0 |
No |
|
FM6 Operator 2 Feedback (fm6op only) |
|
|
|
0.0 - 1.0 |
No |
Same as |
FM6 Operator 3 Feedback (fm6op only) |
|
|
|
0.0 - 1.0 |
No |
Same as |
FM6 Operator 4 Feedback (fm6op only) |
|
|
|
0.0 - 1.0 |
No |
Same as |
FM6 Operator 5 Feedback (fm6op only) |
|
|
|
0.0 - 1.0 |
No |
Same as |
FM6 Operator 6 Feedback (fm6op only) |
|
|
|
0.0 - 1.0 |
No |
Same as |
FM6 Operator 1 Detune (fm6op only) |
|
|
|
-7 to +7 |
No |
|
FM6 Operator 2 Detune (fm6op only) |
|
|
|
-7 to +7 |
No |
Same as |
FM6 Operator 3 Detune (fm6op only) |
|
|
|
-7 to +7 |
No |
Same as |
FM6 Operator 4 Detune (fm6op only) |
|
|
|
-7 to +7 |
No |
Same as |
FM6 Operator 5 Detune (fm6op only) |
|
|
|
-7 to +7 |
No |
Same as |
FM6 Operator 6 Detune (fm6op only) |
|
|
|
-7 to +7 |
No |
Same as |
FM6 Operator 1 Mode (fm6op only) |
|
|
|
|
No |
|
FM6 Operator 2 Mode (fm6op only) |
|
|
|
|
No |
Same as |
FM6 Operator 3 Mode (fm6op only) |
|
|
|
|
No |
Same as |
FM6 Operator 4 Mode (fm6op only) |
|
|
|
|
No |
Same as |
FM6 Operator 5 Mode (fm6op only) |
|
|
|
|
No |
Same as |
FM6 Operator 6 Mode (fm6op only) |
|
|
|
|
No |
Same as |
FM6 Operator 1 Fixed Frequency (fm6op only) |
|
|
|
Any positive decimal (Hz) |
No |
|
FM6 Operator 2 Fixed Frequency (fm6op only) |
|
|
|
Any positive decimal (Hz) |
No |
Same as |
FM6 Operator 3 Fixed Frequency (fm6op only) |
|
|
|
Any positive decimal (Hz) |
No |
Same as |
FM6 Operator 4 Fixed Frequency (fm6op only) |
|
|
|
Any positive decimal (Hz) |
No |
Same as |
FM6 Operator 5 Fixed Frequency (fm6op only) |
|
|
|
Any positive decimal (Hz) |
No |
Same as |
FM6 Operator 6 Fixed Frequency (fm6op only) |
|
|
|
Any positive decimal (Hz) |
No |
Same as |
FM6 Operator 1 Velocity Sensitivity (fm6op only) |
|
|
|
0 - 7 |
No |
|
FM6 Operator 2 Velocity Sensitivity (fm6op only) |
|
|
|
0 - 7 |
No |
Same as |
FM6 Operator 3 Velocity Sensitivity (fm6op only) |
|
|
|
0 - 7 |
No |
Same as |
FM6 Operator 4 Velocity Sensitivity (fm6op only) |
|
|
|
0 - 7 |
No |
Same as |
FM6 Operator 5 Velocity Sensitivity (fm6op only) |
|
|
|
0 - 7 |
No |
Same as |
FM6 Operator 6 Velocity Sensitivity (fm6op only) |
|
|
|
0 - 7 |
No |
Same as |
FM6 Operator 1 Attack (fm6op only) |
|
|
|
0.0 - 45.0 (seconds) |
No |
|
FM6 Operator 2 Attack (fm6op only) |
|
|
|
0.0 - 45.0 (seconds) |
No |
Same as |
FM6 Operator 3 Attack (fm6op only) |
|
|
|
0.0 - 45.0 (seconds) |
No |
Same as |
FM6 Operator 4 Attack (fm6op only) |
|
|
|
0.0 - 45.0 (seconds) |
No |
Same as |
FM6 Operator 5 Attack (fm6op only) |
|
|
|
0.0 - 45.0 (seconds) |
No |
Same as |
FM6 Operator 6 Attack (fm6op only) |
|
|
|
0.0 - 45.0 (seconds) |
No |
Same as |
FM6 Operator 1 Decay (fm6op only) |
|
|
|
0.0 - 45.0 (seconds) |
No |
|
FM6 Operator 2 Decay (fm6op only) |
|
|
|
0.0 - 45.0 (seconds) |
No |
Same as |
FM6 Operator 3 Decay (fm6op only) |
|
|
|
0.0 - 45.0 (seconds) |
No |
Same as |
FM6 Operator 4 Decay (fm6op only) |
|
|
|
0.0 - 45.0 (seconds) |
No |
Same as |
FM6 Operator 5 Decay (fm6op only) |
|
|
|
0.0 - 45.0 (seconds) |
No |
Same as |
FM6 Operator 6 Decay (fm6op only) |
|
|
|
0.0 - 45.0 (seconds) |
No |
Same as |
FM6 Operator 1 Sustain (fm6op only) |
|
|
|
0.0 - 1.0 |
No |
|
FM6 Operator 2 Sustain (fm6op only) |
|
|
|
0.0 - 1.0 |
No |
Same as |
FM6 Operator 3 Sustain (fm6op only) |
|
|
|
0.0 - 1.0 |
No |
Same as |
FM6 Operator 4 Sustain (fm6op only) |
|
|
|
0.0 - 1.0 |
No |
Same as |
FM6 Operator 5 Sustain (fm6op only) |
|
|
|
0.0 - 1.0 |
No |
Same as |
FM6 Operator 6 Sustain (fm6op only) |
|
|
|
0.0 - 1.0 |
No |
Same as |
FM6 Operator 1 Release (fm6op only) |
|
|
|
0.0 - 45.0 (seconds) |
No |
|
FM6 Operator 2 Release (fm6op only) |
|
|
|
0.0 - 45.0 (seconds) |
No |
Same as |
FM6 Operator 3 Release (fm6op only) |
|
|
|
0.0 - 45.0 (seconds) |
No |
Same as |
FM6 Operator 4 Release (fm6op only) |
|
|
|
0.0 - 45.0 (seconds) |
No |
Same as |
FM6 Operator 5 Release (fm6op only) |
|
|
|
0.0 - 45.0 (seconds) |
No |
Same as |
FM6 Operator 6 Release (fm6op only) |
|
|
|
0.0 - 45.0 (seconds) |
No |
Same as |
FM6 Operator 1 EG Type (fm6op only) |
|
|
|
|
No |
|
FM6 Operator 2 EG Type (fm6op only) |
|
|
|
|
No |
Same as |
FM6 Operator 3 EG Type (fm6op only) |
|
|
|
|
No |
Same as |
FM6 Operator 4 EG Type (fm6op only) |
|
|
|
|
No |
Same as |
FM6 Operator 5 EG Type (fm6op only) |
|
|
|
|
No |
Same as |
FM6 Operator 6 EG Type (fm6op only) |
|
|
|
|
No |
Same as |
FM6 Operator 1 EG Rate 1 (fm6op only) |
|
|
|
0 - 99 |
No |
|
FM6 Operator 1 EG Rate 2 (fm6op only) |
|
|
|
0 - 99 |
No |
Same as |
FM6 Operator 1 EG Rate 3 (fm6op only) |
|
|
|
0 - 99 |
No |
Same as |
FM6 Operator 1 EG Rate 4 (fm6op only) |
|
|
|
0 - 99 |
No |
Same as |
FM6 Operator 2 EG Rate 1 (fm6op only) |
|
|
|
0 - 99 |
No |
Same as |
FM6 Operator 2 EG Rate 2 (fm6op only) |
|
|
|
0 - 99 |
No |
Same as |
FM6 Operator 2 EG Rate 3 (fm6op only) |
|
|
|
0 - 99 |
No |
Same as |
FM6 Operator 2 EG Rate 4 (fm6op only) |
|
|
|
0 - 99 |
No |
Same as |
FM6 Operator 3 EG Rate 1 (fm6op only) |
|
|
|
0 - 99 |
No |
Same as |
FM6 Operator 3 EG Rate 2 (fm6op only) |
|
|
|
0 - 99 |
No |
Same as |
FM6 Operator 3 EG Rate 3 (fm6op only) |
|
|
|
0 - 99 |
No |
Same as |
FM6 Operator 3 EG Rate 4 (fm6op only) |
|
|
|
0 - 99 |
No |
Same as |
FM6 Operator 4 EG Rate 1 (fm6op only) |
|
|
|
0 - 99 |
No |
Same as |
FM6 Operator 4 EG Rate 2 (fm6op only) |
|
|
|
0 - 99 |
No |
Same as |
FM6 Operator 4 EG Rate 3 (fm6op only) |
|
|
|
0 - 99 |
No |
Same as |
FM6 Operator 4 EG Rate 4 (fm6op only) |
|
|
|
0 - 99 |
No |
Same as |
FM6 Operator 5 EG Rate 1 (fm6op only) |
|
|
|
0 - 99 |
No |
Same as |
FM6 Operator 5 EG Rate 2 (fm6op only) |
|
|
|
0 - 99 |
No |
Same as |
FM6 Operator 5 EG Rate 3 (fm6op only) |
|
|
|
0 - 99 |
No |
Same as |
FM6 Operator 5 EG Rate 4 (fm6op only) |
|
|
|
0 - 99 |
No |
Same as |
FM6 Operator 6 EG Rate 1 (fm6op only) |
|
|
|
0 - 99 |
No |
Same as |
FM6 Operator 6 EG Rate 2 (fm6op only) |
|
|
|
0 - 99 |
No |
Same as |
FM6 Operator 6 EG Rate 3 (fm6op only) |
|
|
|
0 - 99 |
No |
Same as |
FM6 Operator 6 EG Rate 4 (fm6op only) |
|
|
|
0 - 99 |
No |
Same as |
FM6 Operator 1 EG Level 1 (fm6op only) |
|
|
|
0 - 99 |
No |
|
FM6 Operator 1 EG Level 2 (fm6op only) |
|
|
|
0 - 99 |
No |
Same as |
FM6 Operator 1 EG Level 3 (fm6op only) |
|
|
|
0 - 99 |
No |
Same as |
FM6 Operator 1 EG Level 4 (fm6op only) |
|
|
|
0 - 99 |
No |
Same as |
FM6 Operator 2 EG Level 1 (fm6op only) |
|
|
|
0 - 99 |
No |
Same as |
FM6 Operator 2 EG Level 2 (fm6op only) |
|
|
|
0 - 99 |
No |
Same as |
FM6 Operator 2 EG Level 3 (fm6op only) |
|
|
|
0 - 99 |
No |
Same as |
FM6 Operator 2 EG Level 4 (fm6op only) |
|
|
|
0 - 99 |
No |
Same as |
FM6 Operator 3 EG Level 1 (fm6op only) |
|
|
|
0 - 99 |
No |
Same as |
FM6 Operator 3 EG Level 2 (fm6op only) |
|
|
|
0 - 99 |
No |
Same as |
FM6 Operator 3 EG Level 3 (fm6op only) |
|
|
|
0 - 99 |
No |
Same as |
FM6 Operator 3 EG Level 4 (fm6op only) |
|
|
|
0 - 99 |
No |
Same as |
FM6 Operator 4 EG Level 1 (fm6op only) |
|
|
|
0 - 99 |
No |
Same as |
FM6 Operator 4 EG Level 2 (fm6op only) |
|
|
|
0 - 99 |
No |
Same as |
FM6 Operator 4 EG Level 3 (fm6op only) |
|
|
|
0 - 99 |
No |
Same as |
FM6 Operator 4 EG Level 4 (fm6op only) |
|
|
|
0 - 99 |
No |
Same as |
FM6 Operator 5 EG Level 1 (fm6op only) |
|
|
|
0 - 99 |
No |
Same as |
FM6 Operator 5 EG Level 2 (fm6op only) |
|
|
|
0 - 99 |
No |
Same as |
FM6 Operator 5 EG Level 3 (fm6op only) |
|
|
|
0 - 99 |
No |
Same as |
FM6 Operator 5 EG Level 4 (fm6op only) |
|
|
|
0 - 99 |
No |
Same as |
FM6 Operator 6 EG Level 1 (fm6op only) |
|
|
|
0 - 99 |
No |
Same as |
FM6 Operator 6 EG Level 2 (fm6op only) |
|
|
|
0 - 99 |
No |
Same as |
FM6 Operator 6 EG Level 3 (fm6op only) |
|
|
|
0 - 99 |
No |
Same as |
FM6 Operator 6 EG Level 4 (fm6op only) |
|
|
|
0 - 99 |
No |
Same as |
Tag Enabled |
|
|
|
true, false |
|
|
Tag Volume |
|
|
|
0.0 - 16.0 |
|
|
Tag Polyphony |
|
|
|
Any whole number (1 for mono, >1 for poly) |
|
|
MIDI CC Binding Enabled |
|
|
|
|
|
|
MIDI Note Mapping Enabled |
|
|
|
Any number |
|
|
MIDI Note Binding Enabled |
|
|
|
Any number |
|
|
MIDI Note Binding Change |
|
|
|
Any whole number |
|
|
MIDI Note Binding Change |
|
|
|
|
|
|
MIDI Note Binding Change |
|
|
|
0 - 128 |
|
|
MIDI Note Binding Change |
|
|
|
0.001 - 10000 |
|
|
MIDI Note Binding Change |
|
|
|
0.0 - 1.0 |
|
|
MIDI Note Binding Change |
|
|
|
-36 - 36 |
|
|
MIDI Velocity Binding Enabled |
|
|
|
|
|
|
Modulator Amount (Depth) |
|
|
|
0.0 - 1.0 |
|
|
LFO Modulator Rate (or Frequency) |
|
|
|
0.0 - 22000.0 |
|
|
LFO Modulator Delay Time |
|
|
|
0.0 - 10000.0 |
|
|
Envelope Modulator Attack |
|
|
|
0.0 - 10.0 |
|
|
Envelope Modulator Attack Curve Shape |
|
|
|
-100 - 100 |
|
|
Envelope Modulator Decay |
|
|
|
0.0 - 25.0 |
|
|
Envelope Modulator Decay Curve Shape |
|
|
|
-100 - 100 |
|
|
Envelope Modulator Sustain |
|
|
|
0.0 - 1.0 |
|
|
Envelope Modulator Release |
|
|
|
0.0 - 25.0 |
|
|
Envelope Modulator Release Curve Shape |
|
|
|
-100 - 100 |
|
|
Sequence Rate |
|
|
|
0.01 - 100 |
|
|
All Notes Off |
|
|
|
true |
UI Parameters
NOTE: The table below scrolls to the right.
Description |
|
|
|
Valid Range |
Modulatable |
Additional required parameters |
|---|---|---|---|---|---|---|
UI Background Image Path |
|
|
|
Text |
||
UI Button State Binding Enabled |
|
|
|
true, false |
|
|
UI Control Enabled |
|
|
|
true, false |
|
|
UI Control Visible |
|
|
|
true, false |
|
|
UI Control Value |
|
|
|
Any number |
|
|
UI Control Text |
|
|
|
Text |
|
|
UI Control Minimum Value |
|
|
|
Any number |
|
|
UI Control Maximum Value |
|
|
|
Any number |
|
|
UI Control Value Type |
|
|
|
float, integer, musical_time |
|
|
Image or Animation File Path |
|
|
|
Text |
|
|
Image or Animation Opacity |
|
|
|
0.0 - 1.0 |
|
|
UI Keyboard Coloring Enable / Disable |
|
|
|
true, false |
|
|
UI Keyboard Coloring Low Note |
|
|
|
0 - 127 |
No |
|
UI Keyboard Coloring High Note |
|
|
|
0 - 127 |
No |
|
Animation Frame Rate |
|
|
|
0 - 24 |
|
|
Animation Current Frame |
|
|
|
Any number |
|
|
Animation Playback Mode |
|
|
|
Valid values: |
|
|
X-Y Pad X Value |
|
|
|
0.0 - 1.0 |
|
|
X-Y Pad Y Value |
|
|
|
0.0 - 1.0 |
|
|
Rectangle X Position |
|
|
|
Any number (pixels) |
|
|
Rectangle Y Position |
|
|
|
Any number (pixels) |
|
|
Rectangle Width |
|
|
|
Any number (pixels) |
|
|
Rectangle Height |
|
|
|
Any number (pixels) |
|
|
Line X1 Position |
|
|
|
Any number (pixels) |
|
|
Line Y1 Position |
|
|
|
Any number (pixels) |
|
|
Line X2 Position |
|
|
|
Any number (pixels) |
|
|
Line Y2 Position |
|
|
|
Any number (pixels) |
|
NOTE: The indexes of the controls within the UI also include UI controls that are not editable, such as
<label>elements, so you’ll want to account for that when calculating your positions.Here’s a quick example:
If your UI’s
<tab>section has the following elements under it:<label>,<control>,<label>,<control>. Thepositionindexes of the four elements will be 0, 1, 2, 3. Therefore, the indexes of the two<control>elements will be 1 and 3, respectively.It’s also possible to use tags to address several controls at once. For example, if you have several
<control>elements with the tagsome-controls, you can use the following binding to address all of those controls in a single binding:<binding type="control" level="ui" tags="some-controls" parameter="VISIBLE" translation="fixed_value" translationValue="true"></binding>
Effects Parameters
NOTE: The table below scrolls to the right.
Description |
|
|
|
Valid Range |
Modulatable |
Additional required parameters |
|---|---|---|---|---|---|---|
Effect Enabled (all effects) |
|
|
|
false, true |
Yes |
|
Convolution Mix Level |
|
|
|
0.0 - 1.0 |
Yes |
|
Convolution IR File |
|
|
|
Text |
No |
|
Filter Frequency (for several filters) |
|
|
|
0.0 - 22000.0 |
Yes |
|
Peak or Notch Filter Q |
|
|
|
0.01 - 18.0 |
Yes |
|
Peak or Notch Filter Gain |
|
|
|
0.0 - 10.0 |
Yes |
|
Low-pass or High-pass Filter Resonance |
|
|
|
0.0 - 5.0 |
Yes |
|
Reverb Wet Level |
|
|
|
0.0 - 1.0 |
Yes |
|
Reverb Room Size |
|
|
|
0.0 - 1.0 |
Yes |
|
Reverb Damping |
|
|
|
0.0 - 1.0 |
Yes |
|
Chorus/Phaser/Pitch-Shift/Convolution Mix Level |
|
|
|
0.0 - 1.0 |
Yes |
|
Chorus/Phaser Mod Depth |
|
|
|
0.0 - 1.0 |
Yes |
|
Chorus/Phaser Mod Rate |
|
|
|
0.0 - 10.0 |
Yes |
|
Phaser Center Frequency |
|
|
|
0.0 - 22000.0 |
Yes |
|
Phaser/Delay Feedback |
|
|
|
0.0 - 1.0 |
Yes |
|
Delay Time |
|
|
|
0.0 - 1.0 |
Yes |
|
Delay Time Format |
|
|
|
seconds, musical_time |
Yes |
|
Delay Stereo Offset |
|
|
|
0.0 - 1.0 |
Yes |
|
Delay Wet Level |
|
|
|
0.0 - 1.0 |
Yes |
|
Gain Level |
|
|
|
0.0 - 8.0 |
Yes |
|
Pitch Shifter Semitones |
|
|
|
-24 - 24 |
Yes |
|
Wave Folder Drive Level |
|
|
|
1 - 100 |
Yes |
|
Wave Folder Threshold |
|
|
|
1 - 100 |
Yes |
|
Wave Shaper Drive Level |
|
|
|
0.0 - 1000.0 |
Yes |
|
Wave Shaper Output Level |
|
|
|
0.0 - 8.0 |
Yes |
|
Wave Shaper Drive Boost |
|
|
|
0.0 - 1.0 |
Yes |
|
Translation Modes
There are currently three binding translation modes: linear, table, fixed_value
Mode #1: linear
linear mode allows values that come in to be scaled up or down before they get passed along to the binding’s target. If you set your translation mode to linear you should also translationOutputMin and translationOutputMax.
Example usage:
<binding level="ui" type="control" position="0" parameter="value" translation="linear"
translationOutputMin="0" translationOutputMax="1"/>
Mode #2: table
table mode allows you to transform the binding’s input in a more complex fashion before it gets passed along to the binding’s target. If you set your translation mode to table you must define the translationTable parameter as well. This consists of a series of input-output pairs, separated by semi-colons.
Mode #3: fixed_value
fixed_value mode allows you to completely disregard the input of a binding and instead always use a supplied value. In order to use this translation mode, you must also specify a translationValue. This can be very useful when trying to have menu options enable and disable groups. An example usage:
<binding type="general" level="group" position="1" parameter="ENABLED" translation="fixed_value" translationValue="true" />