Subsystem

Subsample MIDI map: how a note plays

pan_position

Form
number
Limits
at least -100, at most 100

A position across the stereo field: -100 is hard left, 0 the centre, and 100 hard right.

release_time

Form
number or cc_binding
Limits
at least 0
Example
250

How long the fade after note-off lasts. A knob's value is read as each note is struck, so it shapes the notes played next. Bound to a knob with no default:, it keeps the adaptive tail until the knob first moves.

velocity

Form
velocity_range or a block of keys
Default
[0, 127]
Examples
[0, 63], {trigger: [64, 127], rescale: true}

The velocities the assignment answers to, so several assignments can share a note as velocity layers: a pair, low then high, or trigger with rescale.

trigger in velocity

Form
velocity_range
Example
[64, 127]

The velocities that play the assignment.

rescale in velocity

Form
boolean or velocity_range
Default
false
Example
[40, 127]

Stretches the trigger range over a wider range of loudness, so a layer that only hears soft notes still plays through its whole dynamic range. true stretches it over every velocity, and a pair names the range. Left out, a velocity plays as it arrives.

velocity_range

Form
list of integer

A range of MIDI velocities, low then high, both included.

release

Form
boolean or release_time or a block of keys or one of those listed below
Examples
250, {time: 250, curve: exponential}, {cc: 72, max: 3000, curve: exponential}

What the sound does after note-off. Left out, a gated sound stops with a short fade that avoids a click, and a looping one fades with the adaptive tail. true is the adaptive tail, shaped from the sample. A number is the fade time. full lets the sound play on to its end with no fade. A one-shot sound never receives note-off, so a release has no effect on it.

Accepts one of:

time in release

Form
release_time

curve in release

Form
one of those listed below
Default
cosine

The shape of the fade.

Accepts one of:

cc in release

Form
controller
Example
72

The MIDI controller that sets the value.

channel in release

Form
channel
Example
2

The only MIDI channel the controller is read on. Left out, every MIDI channel.

min in release

Form
number
Example
20

The value at the bottom of the knob's travel. Left out, the bottom of the parameter's own range. A min above max turns the knob round.

max in release

Form
number
Example
3000

The value at the top of the knob's travel. Left out, the top of the parameter's own range.

default in release

Form
number
Example
400

The value until the controller first moves. Left out, the value the parameter has without the knob, or the middle of the knob's travel where that value lies outside it.

loop

Form
a block of keys
Example
{start: 0.5, end: 2.5, crossfade: 20}

Where the sound loops while the key is held. A point left out is found automatically, and writing loop: at all sets the mode to loop. A sample with no clean loop plays gated instead, with a note in the log.

start in loop

Form
number
Limits
at least 0
Example
0.5

Where the loop begins, from the start of the sample.

end in loop

Form
number
Limits
at least 0
Example
2.5

Where the loop ends, from the start of the sample. It must come after start.

crossfade in loop

Form
number
Limits
at least 0
Example
20

How long the join is blended over, so the loop repeats without a click.

pan

Form
pan_position or any value or a block of keys or one of those listed below
Examples
25, [50, 87], {gte: -60, lte: 60}, {position: -20, variation: 40}

Where the sound sits across the outputs: a position from hard left to hard right, a list of relative weights with one for each audio channel of a standard layout, any for a new random position on every note, or bounds to draw one from. A random position keeps the sound at the same loudness wherever it lands.

Accepts one of:

gte in pan

Form
pan_position
Example
-60

The leftmost position a random pan may land on.

lte in pan

Form
pan_position
Example
60

The rightmost position a random pan may land on.

position in pan

Form
pan_position
Example
-20

The centre a random pan lands around.

variation in pan

Form
number
Default
0
Limits
at least 0, at most 200
Example
40

How widely a random pan spreads around position: 40 lands up to 20 either side.

output

Form
list of integer
Example
[3, 4]

The outputs of the audio device the sound plays through, counted from 1 as the hardware labels them. With a list of pan weights, give one output for each weight, and with a random pan, give two. Left out, the first outputs.

silenced_by

Form
note or one of those listed below or list of note or one of those listed below or one of those listed below
Examples
self, drum.hi_hat_closed, [drum.hi_hat_closed, drum.hi_hat_pedal]

The notes on the same MIDI channel that cut this sound short, as closing a hi-hat stops its open ring. self means a new strike of this sound cuts the last. The cut is a quick damp that overrides any release. false, or an empty list, means nothing cuts it, which blanks a template's.

Accepts one of: