Keyboard Shortcuts & Feature Flags

Keyboard shortcuts

These work when the output window has focus.

KeyAction
Shift+FToggle fullscreen
Shift+TTap tempo
Shift+F1Recall preset quick-slot 1
Shift+F2Recall preset quick-slot 2
Shift+F3Recall preset quick-slot 3
Shift+F4Recall preset quick-slot 4
Shift+F5Recall preset quick-slot 5
Shift+F6Recall preset quick-slot 6
Shift+F7Recall preset quick-slot 7
Shift+F8Recall preset quick-slot 8
EscapeQuit

Feature flags

Add any combination to your Cargo.toml:

[dependencies]
rustjay-engine = {
    git = "https://github.com/BlueJayLouche/rustjay-engine",
    features = ["link", "prodj", "mtc", "ndi"]
}
FeatureDescriptionExtra dependency
ndiNDI video input and outputNDI SDK installed system-wide
linkAbleton Link tempo syncCMake ≥ 3.14; makes binary GPL-2.0+
prodjPioneer ProDJ Link tempo syncNone (binds UDP 50000/50002)
mtcMIDI Timecode receiveNone (uses existing midir dep)
eguiegui control backend (alt to ImGui)None

Default features: ndi is on by default. All others are off.

To disable NDI (e.g. SDK not installed):

rustjay-engine = { git = "...", default-features = false }

Config file location

Per-app settings (MIDI mappings, last-used preset, OSC port) are stored in:

PlatformPath
macOS / Linux~/.config/rustjay/<app-name>.json
Windows%APPDATA%\rustjay\<app-name>.json

<app-name> is the string returned by your app_name() implementation.

OSC parameter paths

All declared parameters are available at:

/rustjay/<param-id>   f32

Default port: 7770.

Example — set intensity to 0.75:

/rustjay/intensity   0.75

Web remote endpoints

Default port: 3000.

GET  /params                   — all parameters (JSON array)
GET  /params/<id>              — single parameter value
POST /params/<id>  {"value": N} — set a parameter
WS   /ws                       — live update stream

Workspace crates

CrateRole
rustjay-coreShared types: EffectPlugin, EngineState, LFO, routing
rustjay-audioAudio capture, FFT, beat detection
rustjay-ioVideo I/O — webcam, NDI, Syphon, Spout, V4L2
rustjay-controlMIDI, OSC, web server
rustjay-presetsPreset save/load, quick-slots
rustjay-syncAbleton Link + ProDJ Link (optional)
rustjay-guiImGui / egui control window
rustjay-renderwgpu pipeline, textures, uniforms
rustjay-engineFacade: run(), run_with_tabs(), re-exports