Turn a single 61-key keyboard into a two-voice instrument for left and right hand parts.
Route left and right hand notes to separate MIDI channels for a synth or sound module.
Send real-time control changes to a DAW using the Shift key control mode.
Save and recall preset channel, split, and transposition setups with one key press.
| imzzdenis/midimsst | ac000/find-flv | acc4github/kdenlive-omnifade | |
|---|---|---|---|
| Stars | 0 | — | 0 |
| Language | C | C | C |
| Last pushed | — | 2013-04-05 | — |
| Maintenance | — | Dormant | — |
| Setup difficulty | moderate | moderate | moderate |
| Complexity | 3/5 | 2/5 | 2/5 |
| Audience | general | developer | general |
Figures from each repo's GitHub metadata at analysis time.
Requires a C toolchain and, on Linux, the libasound2-dev package to build.
MIDImsst is a small MIDI routing utility written in C that turns a single 61-key keyboard into a two-handed instrument. It takes the incoming MIDI signal from one physical keyboard and splits it so the left hand and right hand each control a separate voice, sent out on their own independent MIDI channel, similar to how a home organ or arranger keyboard can play two different sounds from one keyboard. The split point between the two hands is adjustable, and each hand can be transposed independently by up to three octaves in either direction, in semitone steps. A special Shift mode is built in: holding down the highest C key on the keyboard switches the device into a control mode where other keys, instead of playing notes, adjust settings like the split point, channel assignment, and transposition in real time. While in this mode, all messages are sent on channel 16 so a connected DAW can pick them up as control signals rather than notes. Three preset configurations are stored and can be recalled instantly, including the factory defaults, and a sustain pedal can be simulated with the left mouse button on Windows, with a switch for positive or negative pedal polarity. By default the right hand outputs on channel 4 and the left hand on channel 10, with no split point set, meaning the whole keyboard plays as the right hand voice until a split is configured. The project builds natively on Linux, where it needs the ALSA sound library, and can be cross-compiled from Linux for 32-bit or 64-bit Windows, or compiled natively on Windows with MinGW. The code separates the platform-independent MIDI routing logic from the operating system specific parts, so support for a new platform only requires writing a new file that implements the audio callback rather than changing the core logic. No license is stated in the README.
A C utility that splits one 61-key MIDI keyboard into independent left-hand and right-hand voices.
Mainly C. The stack also includes C, ALSA, WinMM.
No license terms are stated in the README.
Setup difficulty is rated moderate, with roughly 30min to a first successful run.
Mainly general.
This repo across BitVibe Labs
double-check against the repo, no cap.