Skip to content

Control multiple MIDI instruments with one input. Aimed at playing live.

Notifications You must be signed in to change notification settings

Davvos11/live-midi-splitter

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

76 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Live Midi Splitter

Control multiple MIDI instruments with one input.

Inspired by https://sourceforge.net/projects/midi-layer/, but easier to use with Jack/Pipewire VSTs in mind and better suited for playing live.

2024-04-17.22-24-50.mp4

Features / to-do

  • Connect MIDI inputs and outputs
  • Multiple presets that switch where MIDI is sent to
    • Switch between presets using MIDI program change
    • Allow switching using MIDI pads and send feedback
    • Preset groups/variants
  • Filter MIDI ranges, i.e. keyboard split
  • Send note-off and pedal off events to previous preset after switching to another
  • Save and load state of the program
    • Auto save
  • Filter and map MIDI CC
  • Filter and map MIDI channels
  • Velocity curves

Usage

  1. Download the latest version from Github.
  2. Extract the downloaded archive.
  3. Run live-midi-splitter-version.
    • Optionally, you can provide the path to a preset file, for example live-midi-splitter-version "./some preset.lmsc"
    • Open some software or connect some hardware that outputs and inputs midi.
    • Select the input(s) that you want to use.
    • Create preset(s) with the output(s) you want to send to.

Old examples:

A lot of these screenshots are of older versions of the software

Screenshot_20240107_015515

Switching between presets with Program Change signals:

2024-01-07.01-58-33.mp4

Keyboard split / note filter

2024-02-26.19-51-37.mp4

Midi CC map and filter

VID_20240229_153223970_silent.mp4

Switching between presets while holding the sustain pedal:

2024-01-07.22-38-01.mp4

About

Control multiple MIDI instruments with one input. Aimed at playing live.

Resources

Stars

Watchers

Forks

Packages

No packages published

Languages