midi-details
Differences
This shows you the differences between two versions of the page.
Both sides previous revisionPrevious revisionNext revision | Previous revision | ||
midi-details [2020/01/06 02:16] – [MIDI processing built into MIDI and Instrument layers] shane | midi-details [2023/05/08 18:59] (current) – external edit 127.0.0.1 | ||
---|---|---|---|
Line 48: | Line 48: | ||
{{:: | {{:: | ||
+ | |||
+ | ==== Stage 1: MIDI channel filtering ==== | ||
At the first stage, the //MIDI channel number// (1--16) of each incoming MIDI event is compared against the setting of the //Input Channel control//, and the event is only passed on to the next stage if it matches: | At the first stage, the //MIDI channel number// (1--16) of each incoming MIDI event is compared against the setting of the //Input Channel control//, and the event is only passed on to the next stage if it matches: | ||
Line 56: | Line 58: | ||
* **1** through **16** filter out events whose MIDI channel (1--16) does not match | * **1** through **16** filter out events whose MIDI channel (1--16) does not match | ||
+ | ==== Stage 2: MIDI channel conversion ==== | ||
The second stage allows the option to change the event' | The second stage allows the option to change the event' | ||
Line 63: | Line 66: | ||
* **1** through **16** cause all incoming MIDI events to be reassigned to that channel number | * **1** through **16** cause all incoming MIDI events to be reassigned to that channel number | ||
+ | ==== Stage 3: MIDI pitch- and velocity-based filtering ==== | ||
+ | The third filtering stage is the basis for key- and velocity-splitting. By setting multiple layers to respond to non-overlapping //pitch// ranges, you can define // | ||
+ | |||
+ | {{:: | ||
+ | |||
+ | The control box marked **G8** in the image indicates the upper limit of pitch; the box below it marked **C-2** is the lower limit. You can adjust these values in four ways: | ||
+ | * Click and drag up/down with the mouse | ||
+ | * Right-click (or Ctrl+clicking) to pop up a small edit box, and either: | ||
+ | * Type a note name (e.g. " | ||
+ | * Press the appropriate key on your MIDI keyboard, and the displayed note-name will change to match | ||
+ | * Right-mouse operations in the layer title bar (advanced---see [[layer-stack-view# | ||
+ | |||
+ | The two control boxes on the right are similar, but define the upper (top-right) and lower (bottom-right) // | ||
+ | |||
+ | ==== Stage 4: Pitch transpose ==== | ||
+ | MIDI pitch values for key-splits are defined //prior to transposing//, | ||
+ | |||
+ | The fourth processing stage allows you to transpose the pitch at which the layer sounds by adding an offset (in semitones, which may be negative) to the note-numbers for each MIDI note-on or note-off event. The offset is the sum of the **layer transpose offset** and the **global transpose offset**. | ||
+ | |||
+ | The **layer transpose offset** affects only the given layer, and is is set by the //layer transpose control// at the bottom-left corner of the MIDI-controls cluster: | ||
+ | |||
+ | {{:: | ||
+ | |||
+ | The **global transpose offset** affects ALL instrument and MIDI layers, and hence allows you to transpose the entire composite Unify " | ||
+ | |||
+ | {{:: | ||
+ | |||
+ | Both the global and layer-transpose boxes can be adjusted in the same three ways: | ||
+ | * Click and drag up/down with the mouse | ||
+ | * If you hold down the Alt key (on a PC) or the Option key (on a Mac), the value will change by octaves | ||
+ | * Right-click (or Ctrl+clicking) to pop up a small edit box, enter a value in semitones (may be negative) and hit the Enter key. | ||
+ | |||
+ | ===== Stage 5: Note-velocity modification ===== | ||
+ | Finally, the fifth stage of layer MIDI processing allows you to apply an arbitrary //response curve// to the velocity values associated with each note-on event. Clicking on the **MIDI Velocity Graph control** at the right-hand side of the MIDI-controls cluster pops up a //curve editor window// like this: | ||
+ | |||
+ | {{:: | ||
+ | |||
+ | The graph itself represents // | ||
+ | |||
+ | * The **Reset button** reverts the curve shape back to the straight-line " | ||
+ | * The **Load... button** lets you load a previously-saved curve-shape preset (XML file) | ||
+ | * The **Save... button** lets you save the current shape as a new curve-shape preset | ||
+ | |||
+ | In the graph control itself, you can: | ||
+ | * Click and drag the // | ||
+ | * Click anywhere //between// endpoints and drag up/down to change the curvature of that segment of the curve | ||
+ | * Double-click anywhere //between// endpoints to //create a new split point//, splitting the segment into two | ||
+ | * Single-click directly //on a split point// and drag to move it up, down, left, or right. | ||
+ | * Double-click directly //on a split point// to //delete it//, joining two segments back into one | ||
+ | |||
+ | For velocity curves, you will rarely need to create split points. You will usually only need to adjust the curvature (// | ||
midi-details.1578276963.txt.gz · Last modified: 2023/05/08 18:59 (external edit)