MIDI controller
Cuemark is developed against and ships a built-in control map for the Hercules DJControl Starlight, a USB MIDI DJ controller with jog wheels, a crossfader, per-deck play/pause/loop buttons, and volume/tempo faders.
Setup
- Plug the controller in before launching Cuemark — MIDI devices are enumerated at startup.
- Launch Cuemark. The controller should be detected automatically and mapped to its default layout.
- Jog wheels drive scratch/nudge on their deck; the crossfader blends the two mapped decks' video and audio together; transport buttons control play/pause and looping.
midir crate rather than the
browser's Web MIDI API, which is unreliable inside the WebKitGTK
frontend Cuemark runs in. Raw MIDI events are mapped to structured
actions in the Rust backend and delivered to the UI over Tauri's IPC.
Other controllers
Only the Starlight has a built-in map today. The mapping layer
(MidiMap: HashMap<(status, data1), ControlBinding> in
src-tauri/src/midi.rs) isn't hardcoded to one device, so a
new controller mainly needs its own note/CC layout captured — see the
project's skills/midi/ reference and
midi-troubleshooting.md
for how the Starlight's map was worked out, as a template for a new one.
MIDI learn mode (map any control by pressing it once) is on the
roadmap — see todo.md in the repository.