Skip to main content

Documentation Index

Fetch the complete documentation index at: https://docs.sampler.meiji.industries/llms.txt

Use this file to discover all available pages before exploring further.

MIDI implementation

Meiji Sampler’s MIDI surface covers control mapping, a live monitor, and optional transport response.

Control identification

Each MIDI control is uniquely identified by three properties:
PropertyRangeDescription
Channel1-16MIDI channel
Message typeCC or NoteControlChange or NoteOn
Number0-127CC number or note number
A CC on channel 1 number 60 and a Note on channel 1 number 60 are treated as two separate controls.

Mapping behavior

Mappings are one-to-one in both directions:
  • One control maps to at most one action.
  • One action maps to at most one control.
When you assign a control that already has a mapping, the old action is replaced. When you assign an action that is already mapped to a different control, the old control’s mapping is removed. Both cases show a confirmation dialog before replacing. Mappings are persisted in the settings file and survive app restarts.

Mappable actions

Transport

ActionDescription
Play/StopFollow the focused row’s Space behavior. Pads stops pad or preview audio first, Loops starts cued or armed transport unless loops are already playing, and Scenes uses the selected scene’s play/cue/stop flow.
Record/OverdubToggle recording or punch into overdub on the currently selected loop slot.

Pads

ActionDescription
Pad 1-0Trigger the pad sample. If no sample is assigned, opens the source selection modal. Also selects the channel.
Pad N Chop 1-0Trigger a specific chop slice on the pad. Enters chop mode and plays from the chop marker.
Pad slots use display numbering 1-9 then 0 (matching the keyboard number row).

Loops

ActionDescription
Loop 1-0 TriggerSame behavior as pressing the slot’s number key on the loops row. Empty slots arm, idle stopped slots cue, idle cued slots stop, playing slots queue STOP+, and STOP+ slots stop immediately.
Loop 1-0 MuteToggle mute on the loop slot. If any layers are muted, unmutes all first.
Loop 1-0 SoloToggle solo on the loop slot. If already soloed, un-solos all.
Loop 1-0 UndoUndo the most recent loop edit. Note: undo is global, not scoped to the targeted slot. The slot number controls which slot gets UI focus.
Loop 1-0 ClearClear all recorded content from the loop slot.

Scenes

ActionDescription
Scene 1-0 TriggerActivate the scene (same behavior as pressing the slot’s number key on the scenes row).
Scene 1-0 CueCue the scene using the Space-style scene behavior.
Scene StopStop the currently active scene. If a stop is already queued, executes immediately.

Mixer

ActionDescription
Channel 1-0 MuteToggle mute on a mixer channel.

PerformFX

These actions are available when the PerformFX feature is enabled.
ActionDescription
FX Slot 1-NTrigger the PerformFX binding at the given slot position.
Bank ToggleSwitch between PerformFX banks.
Kill All FXKill all active PerformFX effects.

MIDI learn flow phases

The learn flow has four phases:
PhaseWhat happens
ListeningWaiting for a MIDI control movement. Shows existing mappings.
Confirm ReassignThe moved control already has a mapping. Enter to proceed, Esc to cancel.
AssigningHierarchical menu for choosing an action. Navigate with Up/Down/Enter/Esc.
Confirm OverwriteThe chosen action is already mapped to a different control. Enter to replace, Esc to go back.

MIDI tab shortcuts

Mappings sub-view (Listening phase)

KeyAction
Up and DownNavigate mapping list
EnterEdit selected mapping
Delete or BackspaceRemove selected mapping
EscLeave MIDI tab

Mappings sub-view (Assigning phase)

KeyAction
Up and DownNavigate menu
EnterDrill into category or confirm action
EscGo up one menu level, or return to Listening from the top level
Delete or BackspaceRemove this control’s mapping and return to Listening
Shift+DeleteClear all mappings and return to Listening

Sub-tab navigation

KeyAction
Left and RightSwitch between Mappings and Monitor sub-views

MIDI transport

The settings include a transport_enabled toggle. When disabled, transport messages are visible in the monitor but do not trigger transport behavior.

Monitor coverage

The MIDI monitor displays all incoming MIDI events, not just mapping-eligible ones. Visible message types:
  • Note Off, Note On, Poly Pressure
  • Control Change, Program Change, Channel Pressure, Pitch Bend
  • Clock, Start, Stop, Continue
  • Active Sensing, SysEx, Unknown
Clock and Active Sensing generate high message volume and can flood the display. Use monitor filters to suppress them unless diagnosing a sync problem.

Route allowlist

MIDI mappings only fire on routes where triggering a mapped action is safe. The allowlist is:
RouteMIDI allowedReason
Pads rowyesmain sampler view
Loops rowyesmain sampler view
Scenes rowyesmain sampler view
Channel Detailyeschannel overlay — no unsaved state
Channel Chopyeschop overlay — no unsaved state
Help overlayyesread-only; note that pad actions dismiss Help
All other modalsnostateful UI could be silently dismissed
All other viewsnostateful UI could be silently dismissed
New modal or view variants added to the codebase are blocked by default. New Channel variants require an explicit allow or block decision at compile time.
If a MIDI mapping does nothing, check whether the current view is on this allowlist. See MIDI And Sync Problems for more.

Current caution

The public marketing copy still describes MIDI controller support as emerging. Use this page as the implementation reference, not as a promise of broader DAW-style MIDI coverage.