Build: ce3c5f3 | September 18 – September 23, 2026
🎪 Live Set Performance Mode: Dual-Deck A/B, Zero-Allocation Handoff & Cue Bus
Omni expands into live concert performance and DJ live-sets with a dedicated dual-engine playback architecture, transforming the workstation into a stage-ready digital instrument:
- Concert Setlists (
.omniset) & Song Management — create and organize seamless performance setlists containing full Omni song projects. Each entry stores individual tempo markers, gain trims, transition styles, and playback quantization settings. - Dual-Deck Engine Architecture (
DeckEngine) — extracted from Omni's offline export pipeline into an autonomous, real-time deck engine (omni_engine/src/deck/). Omni now operates two complete, independent project sound engines in parallel: Deck A (active live audio driving the master output) and Deck B (incoming project loaded and rendered ahead in the background). - Background Pre-Buffering & Dedicated RT Worker (
live_set/worker.rs,live_set/rt.rs) — Deck B compiles and renders one audio block ahead on a dedicated real-time worker thread. All synth voices, wavetables, impulse response convolutions, and neural amp models are fully primed before transition time, eliminating audio dropouts or buffer stalls when triggering the next song. - Zero-Allocation Audio-Thread Handoff (
live_set/handoff.rs) — when executing transitions, engine pointers swap atomically inside the high-priority audio callback with zero heap allocations and zero lock contention. - Grid-Quantized Transitions & DJ Curves:
- Crossfade Mode: Equal-power crossfade curve with automated tempo ramping across configurable bar counts, ensuring musical energy remains constant throughout song transitions.
- Manual Mode: Real-time crossfader slider control with tactile smoothing and full hardware MIDI controller mapping.
- Cut & Cut+Tail: Instantaneous downbeat-quantized transitions, with Cut+Tail allowing the preceding song's reverb and delay tails to decay naturally beneath the incoming track.
- Secondary Headphone Cue Bus (Outputs 3/4) — independent cue bus routed directly to secondary hardware stereo outputs (channels 3/4) with dedicated gain trim. Performers can monitor and audition Deck B in headphones without sending signal to the main Front-of-House (FOH) master bus.
- EBU R128 Integrated Loudness Normalization — built-in loudness analysis normalizes perceived volume across disparate project files, automatically calculating target trims stored directly with each setlist item.
- Detachable Perform View Window — floating performance console featuring high-visibility deck status readouts, transport buttons, crossfader, cue audition toggles, and comprehensive MIDI Learn (Go, Cancel, Cue, Crossfader, and MIDI Program Change setlist selection).
- Unified Project Restore Subsystem (
project_restore/) — consolidated single-stream state restoration for modulation racks, sidechain routings, impulse responses, Neural Amp Modeler (NAM) weights, Sequenced FX step matrices, and media assets. - Engine Reliability & Real-Time Hardening:
- Fixed FTR project export dropping master chains, returns, sends, MIDI FX, and active modulations.
- Corrected garbage collection thread reclamation leaks.
- Implemented non-blocking autosave timeout guards, preventing UI hangs during project serialization.
- Fixed preset deserialization for Gate, Transient Shaper, and Denoiser modules.
- Resolved resampler end-of-buffer silence artifacts and multi-channel hardware output buffer routing.
🎛️ Step Sequencer Premium: Engine Banks, 17 Polymetric Lanes & Solaris UI
The Step Sequencer has been elevated to an uncompromising, instrument-grade sequencing environment (comparable to hardware legends like Elektron, Cirklon, and Metropolix):
- Unified Zero-Allocation Resolver (
omni_engine/src/step_resolver.rs) — all note generation across Session clip playback, Arrangement linear timeline playback (note_generators.rs), and destructive "Bake -> MIDI" export now passes through a single, shared evaluation kernel. Eliminates discrepancies between live playback and frozen stems, executing with zero heap allocations on the audio thread. - Engine-Level Pattern Banks (A/B/C/D) & Chain Mode:
- Four independent banks (A, B, C, D) executed directly within the real-time audio callback (
session_renderer.rs). - Automatic pattern chaining with per-bank repeat counters (
ChainEntry { bank, repeats }), continuing seamless playback even when the sequencer UI is closed. - Dedicated momentary FILL button for spontaneous drum fills or variation bursts, complete with customizable Fill Bank overrides.
- Continuous BankMorph allowing smooth parameter interpolation between banks.
- Full MIDI Learn support for Bank selection and Fill triggers (
SeqBank,SeqFill).
- Four independent banks (A, B, C, D) executed directly within the real-time audio callback (
- 17 Polymetric & Polyrhythmic Lanes — each step lane operates with independent loop lengths (polymetry) and individual clock multipliers/dividers (
LaneClock, ÷4 … ×4, polyrhythmia):- Core Rhythmic Lanes: Pitch, Velocity, Gate, Probability, Accent, Ratchet.
- Expression & Modulation Lanes: Octave, Bend, Chord, Roll, Rnd Trigger, Modulation (routable to synth parameters or external MIDI CC), Nudge, Slide, NoteLen, Tie.
- Elektron-Style Step Conditions: PRE, !PRE, FILL, !FILL, X:Y iteration counters, 50% probability gates, 1ST pass only, and !1ST subsequent passes.
- Slide Parameter Learning: Slide steps generate true legato phrasing and modulate hardware or plugin glide times.
- Tie Steps: Seamlessly prolong preceding notes across step boundaries without retriggering envelopes.
- Ratchet Subdivisions: Drag-editable 1–8 micro-subdivisions per step with dynamic velocity curves.
- Master Len Sync: Global cycle length that periodically resynchronizes polymetric lane counters every N bars.
- Deterministic Random Seed Locking: Lock random generators to a fixed seed (
StepRandom) for 100% reproducible bounces, or re-seed on demand.
- Solaris Hardware-Style Ergonomic UI Redesign:
- Replaced the sprawling 2200px horizontal strip with a focused, docked 876px modular rack frame matching the Solaris design system.
- SIMPLE vs PRO Modes: Instant switching between an uncluttered 6-lane view (Pitch, Vel, Gate, Prob, Acc, Ratch) and the full 17-lane suite with advanced sidebars (LANE, GEN, RND, PERF). Mode selection is remembered globally.
- Interactive Lane Tabs with Sparklines (
lane_tabs.rs,mini_lane.rs): Tab bar displays real-time activity sparklines and playhead positions for every lane, with keyboard navigation (Tab/Shift+Tab). - Precision Step Ruler (
lanes/ruler.rs): Dedicated step number ruler featuring draggable loop bracket handles, multi-step range selection (Ctrl+Click, drag), and auto-fit step width with manual zoom (Ctrl+Wheel,Ctrl+=/-, "Zoom to Fit"). - STEP REC Mode: Hands-on step recording via external MIDI keyboard or PC QWERTY keys (
Space= rest,T= tie,Backspace= step back). - Octave Lock & Scale Snap: Restrict pitch input strictly within a selected octave (
OCT) snapped to project musical scales. - Audition Toggle: Instant pitch preview speaker toggle when painting notes.
- Preset Architecture: Save and recall
.omniseqpatterns, shipped with 6 curated factory presets.
🎹 Session View & Timeline: Dynamic MIDI Clip Miniatures & Instant Startup
Omni's user interface and session workflow have received major visual upgrades and responsiveness improvements:
- Real-Time Miniature Content Previews for MIDI Clips (
ui/clip_preview.rs) — Session slots and linear Arrangement timeline clips now display crisp, accurate graphical miniatures of their musical data:- Piano Roll Clips: Horizontal note bars plotted accurately by pitch and duration.
- Step Sequencer Clips: Detailed step columns reflecting pitch, octave, gate duration, and velocity.
- Euclidean Pro Clips: Concentric pulse hits across all 8 channels with mute/solo states visualized.
- Drum Rack Clips: Pad trigger hits mapped across a structured drum grid.
- Luminance-Aware Inking: Waveform and MIDI ink contrast automatically dynamically adapts (black ink on light clips, white ink on dark clips) for clear readability.
- Exact Session Grid Alignment (
GridGeometry) — scene launch buttons dynamically match track column heights, automatically compensating for layout padding and guaranteeing 1:1 pixel alignment between scene triggers and clip rows. - Instant App Startup (Zero-Wait Launch) — completely eliminated the 3-second startup splash screen and 16ms force-repaint loop. Omni now launches directly into the workspace on frame 1, saving 126 kB of binary payload and eliminating initial image decoding overhead.
- Master Console & Expanded Mixer Optimization — compacted the expanded Master Console into a sleek ~570px layout featuring side-by-side strips and a 2x2 utility card matrix (Monitor, Loudness Target, Reference, Export). Added dynamic fader height fallbacks and fixed-width "+ Instrument" cards to eliminate panel clipping.
- Solaris Hardware Styling Rollout — expanded tactile
hw::platedesign aesthetics across all MIDI FX modules and LFO/Modulator rack panels.
🛡️ Audio Backend & Cross-Platform Hardening
Crucial stability and low-level driver improvements ensure bulletproof performance across Windows and Linux:
- Deadlock-Free ASIO & WASAPI Switching — audio input streams now initialize on a dedicated, isolated owner thread (
audio_backend/capture_stream.rs). Completely prevents the 60-secondIAudioClient::Initializetimeout hang (0x800705AA) that occurred in WASAPI Shared Mode when switching away from ASIO4ALL. - Registry-Based ASIO Driver Enumeration (
audio_backend/asio_registry.rs) — ASIO driver names are now gathered directly from Windows Registry (asio_sys::Asio::driver_names) rather than loading drivers viaASIOInitduring device queries. Prevents premature ASIO4ALL DLL execution on app launch, eliminating white-screen / headless GUI hangs. - Persistent Panic Logging — added an unhandled panic hook in
omni_host/src/logging.rsthat automatically dumps detailed crash traces intoomni.log, guaranteeing debug visibility even in release builds with windowed subsystems. - Linux AppImage Packaging & CI Hardening — AppImage build scripts now query
cargo metadatatarget directories cleanly on Linux. Updated dependencies to resolve security advisories (wasmtime 47.0.4,h2 0.4.19,rustls 0.23.45) and ensured full compatibility with Rust 1.98 clippy.
Build ce3c5f3 marks Omni's arrival as a concert-ready performance instrument and deep modular sequencer. Download the latest build from omnidaw.com and bring your studio productions seamlessly to the stage! 🚀

