GitHub – andrewfader/blokkily · GitHub


Blokkily is an experimental pattern-first DAW. A single occasion mannequin drives three
synchronized editors — a tracker, a piano roll, and a step grid — that are in
flip one lane of a multi-track track. CLAP is a required native plugin format,
not a compatibility add-on.

The workstation screenshot is the rendered bdd_session_everything session: a
track with a tempo ramp, a 7/8 bar, keyed and sliced samplers, CLAP, VST3 and
SoundFont devices, a warped audio clip, built-in and CLAP/VST3 results, a
return/ship bus, acquire and impact automation, a count-in, and two armed tracks
that took MIDI from a deterministic enter. Above the editors is the immediate bar
of the LLM composition assistant (described beneath).

The framework-independent musical mannequin and the real-time plugin boundary sit
beneath all of it. The mannequin covers notes, semantic chords, inversions,
strum, microtiming, chance, ratchets, loop situations, and parameter locks.
It additionally features a native CLAP catalog that masses CLAP modules, initializes their
entry factors, queries factories, and data plugin descriptors and options.
The CLAP occasion adapter implements creation, initialization, activation,
sample-accurate word/parameter occasions, stereo processing, and state streams.
The JUCE-backed VST3 adapter scans bundles and default system areas and
instantiates plugins by way of the identical real-time boundary, splitting every block
at parameter offsets so VST3 automation is sample-accurate too.
Parameter locks are compiled by the scheduler into sample-accurate parameter
occasions and utilized by each plugin adapters; automation units a parameter’s worth
whereas modulation offsets it, and neither erases the opposite.
The inner FluidSynth adapter masses SF2/SF3 information, accepts sample-offset word
occasions, renders stereo audio, selects presets, and persists its mission state.
FluidSynth begins a voice solely the place one among its 64-frame blocks begins, so the
adapter retains a small pool of renderers sharing the financial institution’s pattern knowledge and
performs every word on one whose block begins on the word’s personal body: each cross
of a sample sounds in part, no matter its size in samples. A financial institution’s personal
refrain runs by itself clock, as a free-running LFO does.
Projects save and reload the entire session: each named sample with its chords,
locks, ratchets, microtiming, and loop situations, the tracks with their channel
strips and clips, and the opaque state of each CLAP, VST3, and SoundFont
instrument and impact.
The allocation-free real-time transport compiles sample ticks to pattern occasions,
loops patterns, drives both instrument adapter, and feeds a low-latency
non-interleaved stereo RtAudio callback.

Editing whereas the track performs doesn’t interrupt it. An edit recompiles the
association and fingers it to the render callback on the subsequent block boundary,
with out allocating on the audio thread, rebuilding the graph, reloading the
instrument, or transferring the playhead; a word whose step is erased whereas it’s
sounding is launched moderately than left ringing. A word entered in any editor is
auditioned by way of the working engine, on a stopped transport in addition to a
enjoying one, and a session that opens with no instrument is given the machine’s
General MIDI SoundFont — the percussion financial institution on a drum monitor — so the
workstation makes a sound the second it opens.

A session is a track moderately than a single sample. Named patterns are positioned as
clips on the timeline of mixer tracks, every monitor carrying its personal instrument
and channel strip: acquire in decibels, constant-power pan, mute, solo, and a peak
meter, summed by way of a grasp fader. The track engine compiles each monitor’s
entire timeline as soon as after which renders it with out allocating, locking, or doing
I/O; every repetition of a clip counts as the subsequent loop of its sample, so
chance and loop situations hold working throughout an association. Mixer strikes
attain the working engine, so a fader might be pulled whereas the track performs. The
identical engine bounces the association to a 16-bit, 24-bit, or 32-bit float WAVE
file, pattern for pattern equivalent to what was auditioned.

A session additionally says which tuning and which scale it’s written in. Tunings are
held in cents — equal divisions of any interval, rational and historic tunings,
and Scala-style lists — so twelve equal semitones are one tuning amongst many. A
word carries the twelve-tone key its instrument is instructed plus the retune away
from it, and so does every voice of a chord, which is how a nineteen-tone or
quarter-tone sample reaches CLAP, VST3, and the SoundFont synth because the pitch it
was written at moderately than as the closest approximation. Four playable surfaces
mission the identical tuning and scale: a piano keyboard, isomorphic grids in seven
layouts — hexagonal and sq., and every working throughout the window or down it —
fretboards for 9 string tunings, and chord pads that title every concord by its
numeral and stack a row per inversion. Playing one auditions it by way of the chosen monitor’s instrument
even on a stopped transport, and writes it onto the chosen step of the
canonical sample, the place each editor names it within the track’s personal tuning.

The tracker exhibits the part’s instrument tracks facet by facet; Tab and
Shift+Tab choose the subsequent or earlier channel. Long patterns scroll vertically.
The piano roll’s arrow buttons transfer its pitch window by octaves, reaching MIDI
keys 0–127. The association has horizontal scrolling and +/− zoom controls;
lengthy songs hold usable bar widths.

The mission panel’s MIDI IN / MIDI OUT buttons import and export Standard
MIDI Files. Export writes the organized notes and controllers from the identical track
scheduler used for playback, with monitor names, tempo and meter. Import accepts
format 0 and 1, splits channels into instrument components, and appends four-bar
sections as one undoable edit. It retains the present track’s tempo and devices;
further tracks want devices assigned. Import makes use of the recording grid:
notes on one sixteenth grow to be a chord with shared timing, and word durations
are capped on the part size. MIDI trade omits plugin state, parameter
automation, per-note expression, audio clips and microtonal retuning. Tempo ramps
export as sixteenth-note tempo steps. It is word trade, not a mission backup.

A MIDI keyboard performs the track too. Its keys arrive on the port’s personal thread
and attain the render callback by way of a lock-free queue, so a word isn’t held
up behind a busy interface; they sound by way of the chosen monitor’s instrument
on a stopped track in addition to a enjoying one, and a key of the controller is a
diploma of the track’s tuning and scale, the way in which a key of the on-screen piano is.
With recording armed, a working track writes what was performed into the sample
underneath the playhead: every word lands on its nearest step with how far off the
grid it was saved as micro-timing, lasts so long as the important thing was held, and joins
a word already on that step as a chord. What is written is what the engine
heard, on the place it heard it, and one take is one step of undo. A bounce
neither hears nor data the keyboard.

A immediate bar above the editors asks an LLM composition assistant to write down into
the open sample: a line like “a minor pentatonic ascending” or “offbeat hats”
is distributed to a selected backend (an area Ollama mannequin by default, a Gemini or
MiniMax endpoint when keyed), the reply is parsed and clamped like some other
enter, and the outcome sits as a proposal on the bar till the producer clicks
Apply — nothing reaches the track earlier than then, and one era is one undo
step. The assistant is on the GUI thread solely; the audio thread by no means sees an
LLM name. See docs/llm-assistant.md for the wire dialect, backends, and the
bdd_llm_assistant gate that drives the rendered bar finish to finish and not using a
community.

Needs Qt 6.5+, FluidSynth, RtAudio, RtMidi, libsndfile, libsamplerate and
Rubber Band 4 (discovered by way of pkg-config), and a SoundFont for the verification
gates.

Licence word: clip warp (time-stretching and pitch-shifting audio clips)
hyperlinks the Rubber Band Library, which is licensed underneath the GPL (model 2 or
later) except a business licence is purchased from its authors. A Blokkily
binary constructed with it’s subsequently topic to the GPL. JUCE and the CLAP headers are vendored
underneath third_party/. The interface typefaces, IBM Plex Sans and JetBrains Mono, are
bundled in sources/fonts/ underneath the SIL Open Font License 1.1 (licence
texts beside them), so the structure attracts the identical on each desktop no matter
its default font.

cmake -S . -B construct -G Ninja
cmake --build construct
ctest --test-dir construct --output-on-failure
./construct/blokkily

The important executable is a Qt Quick workstation with synchronized step-grid,
tracker, and piano-roll projections over one canonical sample, a shared
playhead, and a step inspector that exposes the mannequin’s full expression:
transposition, velocity, micro-timing, chance, ratchets, loop situations,
and parameter locks with an automation/modulation swap. Every editor is an
enter moderately than a read-out: clicking a step toggles it, urgent a lane of the
piano roll writes that pitch onto the column underneath the pointer and dragging
attracts a phrase throughout lanes, dragging a drawn word strikes it and dragging its
proper edge units how lengthy it sounds, the tracker’s word column takes a click on and
a drag, its velocity column writes how loud the row is, and its rows are typed
the way in which a tracker has at all times been typed — ZSXDCVGBHNJM
for one octave and the 2 rows above for the subsequent, with the entry octave on
display and moved by Ctrl+Left and Ctrl+Right, and Backspace clearing a row.
Ctrl+C copies the chosen step and Ctrl+V pastes it onto the cursor, locks
and size included.
Whichever one is used, the edit lands on the one canonical sample, so it exhibits
directly in each different editor, within the inspector, and in what the track performs; the
view switcher focuses one editor or exhibits all of them.
Above the editors is the association: one lane per monitor, one cell per bar.
A click on on an empty bar locations a clip of whichever sample is open; a click on on
a crammed clip opens that sample in each editor and seeks the track there; a
right-click takes the clip away; Shift-click lengthens a clip throughout bars
(one clip with a number of repeats, not a second placement); Alt-click strikes a
clip alongside its lane. The numbers over these bars are a ruler: a
click on locates the audio engine on that bar. Down the suitable
is the mixer, one strip per monitor plus the grasp. The playhead is the audio
engine’s personal place, learn in bar.beat.sixteenth throughout the entire track.
Below the editors is the keyboard: the session’s tuning, scale, and root, a
swap between the piano, the isomorphic grid, the fretboard and the chord pads,
and an auto-scale toggle that snaps a performed key onto the notes of the dimensions.
The isomorphic grid carries seven layouts — Wicki-Hayden, Bosanquet, the
harmonic desk and the B-system accordion on a hexagonal tiling, Jankó, fourths
and main thirds on a sq. one. Each is written in cents per step moderately than
in semitones, so the identical fingering lands in no matter tuning the track is in.
Any floor runs throughout the window or down it: turning one is 1 / 4 flip, so
pitch that ran to the suitable runs upward, and it strikes keys with out touching a
word or a pitch. A floor that can’t be drawn at a playable key measurement scrolls
moderately than shrinking its keys previous the purpose of being hit.
Space performs, Return or Home goes again to the highest of the track, the arrow keys
transfer the step cursor (Shift+Up and Shift+Down transpose the step by a semitone,
Ctrl+Up and Ctrl+Down by an octave), Insert pushes later rows down and
Shift+Backspace pulls them up, Alt+arrows nudge micro-timing and word size,
Ctrl+D duplicates the chosen step onto
the subsequent row, Ctrl+1..0 (and Ctrl+Shift+1..6 for the second half of the bar)
toggles a step, Ctrl+M mutes and Ctrl+L solos the chosen monitor, Ctrl+R arms
recording, Ctrl+E bounces the association to disk, and Ctrl+Ok focuses the
assistant immediate bar (Escape fingers the keys again to the editors). The MIDI IN
panel on the left chooses the keyboard, and its gentle flashes on each key that
arrives. Those keys stand apart whereas a textual content discipline has the keyboard, so typing
a search or a reputation by no means strikes the track.

Every edit might be taken again: Ctrl+Z undoes and Ctrl+Shift+Z (or Ctrl+Y) redoes
steps, strokes, clips, tracks, patterns, fader strikes and the tuning, and a drag —
a phrase drawn throughout the roll, a fader pulled — is one step of historical past moderately
than one per pixel. Ctrl+S writes again to the file the session got here from and
Ctrl+Shift+S asks for a brand new one; the window title carries a dot whereas there’s
something unsaved, and opening a file, beginning a brand new session with Ctrl+N or
closing the window asks earlier than throwing unsaved work away. DUP copies the open
sample into a brand new one; a right-click on a sample gives rename, duplicate,
clear and delete, and on a monitor rename, mute, solo and delete, whereas a
double-click on both names it. A monitor added with +TRK is given the SoundFont
the session already performs, so it’s heard directly. A key of a playable floor
sounds when it goes down and rings till it’s let go. The tempo is dragged,
scrolled (Shift for tenths) or typed after a double-click. The engine renders at
the speed the audio system really negotiated, so a sink locked to 44.1 okayHz
performs the track at its personal pitch and tempo moderately than flat and sluggish.
Its plugin browser scans the platform’s commonplace CLAP and VST3 areas and
lists what it finds by way of one shared plugin boundary, tagging every entry with
the format that produced it. An set up of that measurement is browsed by typing
moderately than by scrolling: Ctrl+F reaches the browser’s discipline, a couple of letters of
a reputation, a maker or a format slender the listing to the devices these letters
attain so as — “fbs” finds “Fat Bass” — the arrow keys and Return transfer
by way of them and cargo one, and Escape lists every little thing once more. ./construct/blokkily_cli runs the headless scheduler
demo.

Behavior specs are in options/, and repository-wide completion
guidelines are in AGENTS.md. See docs/verification.md for the repeatable BDD,
integration, end-to-end, and screenshot verification workflow.

For measured C++ line protection with GCC, configure a separate construct with
cmake -S . -B build-coverage -G Ninja -DCMAKE_BUILD_TYPE=Debug -DBLOKKILY_COVERAGE=ON,
then run cmake --build build-coverage,
ctest --test-dir build-coverage --output-on-failure, and
python3 scripts/protection.py build-coverage.
The report and uncovered line numbers are written to build-coverage/artifacts/protection/.
Vendored frameworks, generated code, QML, and the embedded GUI verification
driver are excluded from the proportion.

Playback splits dense timelines at occasion boundaries so notes and releases are
not dropped when the system requests a big buffer. Each monitor helps as much as
256 simultaneous scheduled occasions at one pattern; an edit exceeding that restrict
stories an error and preserves the final playable association.

  • blokkily_core: canonical mission/occasion mannequin and deterministic scheduler
  • Tuning/Scale/KeyboardSpec: cents-based tunings, scales, and the playable
    surfaces projected from them
  • Song: named patterns, mixer tracks, and the clips that prepare them
  • SongEngine: allocation-free multi-track playback by way of one mixer bus
  • Offline bounce and a WAVE author at 16-bit, 24-bit, and 32-bit float
  • PluginInstance: format-neutral real-time boundary preserving modulation
  • Qt Quick prototype: synchronized customized editors and CLAP/VST3 plugin browser
  • FluidSynth inner instrument: actual SF2/SF3 loading and offline rendering
  • Real-time transport and RtAudio hardware-output adapter
  • MidiInput: RtMidi port adapter that decodes, tunes, and routes keys to the
    render callback by way of a lock-free queue, with a deterministic mode for checks
  • TakeRecorder: turns what the engine heard whereas recording into steps of the
    sample underneath the playhead
  • Next engine layer: Tracktion playback/recording adapter
  • CLAP host adapter: discovery, lifecycle, processing, and state
  • Versioned mission file: the entire track plus per-instrument plugin state
  • Native CLAP and VST3 plugin home windows; stereo plugin ports
  • Additional adapter: VST3 by way of JUCE

The canonical mannequin intentionally doesn’t use Tracktion MIDI clips. Adapters
compile it into engine and plugin occasions, preserving richer sequencer semantics.

Recording, results and audio

The tempo lane edits steps and ramps; the ruler edits the meter, preserving clips
on their bar numbers. Patterns might have totally different lengths. +AUD imports WAV,
FLAC or AIFF as waveform clips with trim, fades and acquire. Overlaps sum. The
clip’s W management allows tempo following, a handbook stretch ratio or pitch
shift. Rubber Band renders these modifications on a employee; a pending rendition is
silent till it’s prepared.

Sampler and Drum Sampler seem within the instrument browser. They help keyed
zones, loops, envelopes, equipment pads and slicing. The FX browser provides CLAP, VST3
or built-in EQ, delay, reverb and compressor inserts to the chosen monitor,
return or grasp rack. Sends are post-fader and pre-pan; returns stay audible
when a supply monitor is soloed. Playback and export each compensate plugin
latency. An insert row names the impact because the browser lists it, on a line of
its personal; E beneath it opens its native window; A chooses a parameter to
edit within the chosen monitor’s automation lane. A plugin-window gesture is one
undo step, together with gestures on return and grasp inserts.

Each monitor’s R button arms notes and audio, and its enter controls select MIDI
channels or system inputs and monitoring. With no monitor armed, the chosen
monitor data. The on-screen keyboards and tracker can file whereas the track
performs. Chord voices hold their very own velocities and lengths. Automation has a
separate OFF / READ / TOUCH / LATCH / WRITE mode. Notes, automation and audio
from one cross share one undo step. CLICK follows the tempo and meter, CI counts
in as much as 4 bars with out transferring the track, and the press is excluded from
exports except + CLICK is enabled.

RESAMPLE within the chosen rack arms its monitor, return or grasp output for the
subsequent recording cross. Arm the transport’s file button and press Play. The
output is written off the audio thread into a brand new audio monitor when the cross
ends; the vacation spot can not feed again into its personal recording. The grasp faucet
excludes the information click on. STEM bounces that rack by way of the identical engine into
a brand new audio clip, optionally muting its supply. Both actions compensate the
latency as much as the chosen faucet. A bounced grasp with its sources muted additionally
bypasses the previous grasp inserts and resets its fader, to keep away from processing the
completed combine twice; undo restores all of those modifications.

Stems are bus faucets: a monitor stem incorporates its inserts and stereo fader/pan,
a return stem incorporates its sends and return processing, and a grasp stem
incorporates the whole combine. Track stems exclude their sends’ return indicators;
bounce the returns too when reconstructing the combination. The sum of monitor and return
stems is the sign earlier than grasp processing. A nonlinear grasp impact can not
be distributed amongst unbiased stems. Muting a supply monitor additionally stops its
sends, so bounce these returns individually in the event that they should be saved.

A compressor in a rack has a SIDECHAIN chip, and so does any CLAP or VST3
impact that declares a sidechain enter (a CLAP enter port that’s not the principle
one, a VST3 aux enter bus): select one other monitor and the impact listens to that
monitor on its sidechain enter (the compressor as a substitute of to what it
compresses). The secret’s the supply monitor after its personal inserts and earlier than its
fader, so a muted or faded-down kick nonetheless geese the bass; the engine renders
a key’s supply first, and refuses a key from the insert’s personal monitor or a loop
of keys.

An instrument that declares additional outputs (CLAP output ports past the principle
one, VST3 aux output buses) will get a + OUT chip on its mixer strip: every output
might be damaged out to a mixer channel of its personal (“PAD AUX 1”), a monitor with no
instrument whose sign is that output, rendered after its supply. Its fader,
pan, mute, solo, inserts, sends and automation work as on any monitor, and the
output is heard by way of that channel solely – by no means additionally by way of the supply
monitor. Soloing the supply monitor retains its channels audible (they’re the
instrument’s personal sound); soloing a channel alone performs simply that channel.
The channel is a part of the track: saved, undone, exported as heard;
eradicating the supply monitor leaves the channel as a plain monitor. The
MODULATION panel underneath the inspector provides LFOs (sine, triangle, saws, sq.,
random; price in Hz, or with SYNC on a word worth from 1/16 to 4 bars that
follows the tempo map), macros (one 0..1 knob) and envelope followers (the extent
of a monitor chosen from the cardboard’s supply picker, after its inserts and earlier than
its fader). + TARGET goals one at a
parameter of the chosen monitor’s instrument or inserts, with a depth of -100%
to +100% of that parameter’s vary. A modulation is an offset on high of the
parameter’s personal worth and automation, despatched as CLAP parameter modulation (and
the equal on VST3 and built-in results), by no means written right into a lane;
a number of on one parameter add up. Rates, shapes, depths and macros transfer stay
and not using a recompile. Modulators and keys are saved with the track, undone with
it, and exported precisely as they play: whereas the track rolls an LFO’s part is
taken from the track place.

The LAUNCH view is a scene launcher: scenes down, tracks throughout, every cell
naming one of many track’s patterns (the identical sample the editors edit).
Clicking an empty cell places the open sample in it; clicking a crammed cell
launches it on its monitor on the cell’s quantization (none, a sixteenth, a
beat, one, two or 4 bars), and a scene’s chip launches its entire row on the
grid’s quantization. A cell can play quite a lot of loops after which comply with on
(cease, subsequent, earlier, first, final, random or once more). Launches, stops, loop
turns and comply with actions occur on the precise pattern of their boundary, inside
the render callback, and a launched monitor performs its cell as a substitute of its
association till the transport stops. With REC ARRANGEMENT on, each stretch
a monitor performed from one cell is printed into the association as clips when it
ends, one step of undo every; the printed association performs and exports what
was heard, pattern for pattern. A take printed over an extended clip splits it,
preserving what the clip performed after the take. Adding or eradicating a monitor or
altering an instrument mid-jam rebuilds the engine with out stopping the jam:
launched cells play on in part, and the playhead stays the place it was. A
launch the engine’s queue has no room for is refused and mentioned within the standing
line, as is a take misplaced to a full take queue. The grid is saved with the track.

MIDI keyboards play the pitch wheel, management modifications and stress into the
monitor’s instrument on no matter channel they ship (SoundFont, VST3, CLAP and
the sampler all comply with the wheel; SoundFonts additionally take poly stress), and
the maintain pedal holds launched keys on the enter for each instrument.
While recording, the wheel, controllers, channel stress and poly stress
(on the important thing the track’s tuning despatched the instrument) are written into the
sample as controller actions: saved with the mission, performed on
their pattern, chased when the playhead jumps, and exported as heard. The
controller lane underneath the piano roll exhibits one controller at a time (BEND,
MOD, EXPR, any numbered CC or PRESSURE, from its picker): drag to attract a
stroke, drag some extent to maneuver it, right-click to erase; every gesture is one
undo step and the working track performs it on its subsequent block.

MPE keyboards: swap on MPE on the MIDI IN panel (or let the keyboard ship
its MPE configuration message). Each word’s personal bend, CC 74 and stress transfer
that word alone, are recorded with it, and are performed again as CLAP word
expressions, or on a channel of the word’s personal for SoundFont and VST3
devices (see options/continuous_midi.characteristic for what every hears).

Audio clips whose decoded measurement exceeds the streaming threshold (128 MiB by
default; BLOKKILY_STREAM_THRESHOLD_BYTES overrides it) stream from disk
as a substitute of being decoded into RAM: a background employee fills one lock-free
ring per clip, resampled to the engine price with the identical converter because the
in-memory path, and the render callback solely reads it. Streams comply with the
track (cued forward of a clip’s begin and of the track’s wrap, relocated on a
find); a hoop that runs dry fades out and again in moderately than clicking.
An export reads streamed clips blocking by itself thread, so it equals the
streamed playback pattern for pattern.

Imported information keep the place they’re. Recordings go into .audio/, or
a brief session folder earlier than the primary save. COLLECT copies referenced
clips and sampler samples into the saved mission’s audio folder, deduplicates
shared information, and modifications their references as one undoable edit. Save afterwards
to persist these references. Original information are saved so undo stays playable.

Driving Blokkily from an agent (MCP)

Blokkily is an MCP server, so an AI agent can drive the working window: learn
the session, write notes, play and cease, name any technique the controls use,
and take a screenshot. Register the bridge together with your agent, for instance with
Claude Code:

claude mcp add blokkily -- blokkily --mcp

or, for any consumer that takes a JSON config:

{ "mcpServers": { "blokkily": { "command": "blokkily", "args": ["--mcp"] } } }

blokkily --mcp speaks MCP on stdin and stdout and forwards every software name to
the open window over an area socket ($XDG_RUNTIME_DIR/blokkily-mcp.sock, or a
named pipe on Windows). Connecting and itemizing the instruments by no means opens a window;
the primary software name begins Blokkily if it isn’t working. Only the consumer who
runs Blokkily can join.

The instruments are get_session, get_pattern, write_notes, transport,
list_plugins, set_instrument, list_parameters, set_parameter (a synth’s
preset or any knob, by title), set_soundfont_preset (a General MIDI financial institution and
program) and screenshot, plus describe, name and
get_property, which attain each technique and property the window’s controls
use (the mixer, results, automation, clips, tempo, tuning, saving, exporting,
undo). An agent’s edits undergo the identical undoable paths a click on takes.
BLOKKILY_MCP=0 turns the server off; BLOKKILY_MCP_SOCKET strikes the socket
(set it the identical for the window and the bridge); BLOKKILY_MCP_NO_LAUNCH=1
stops the bridge from beginning a window. See options/mcp.characteristic.

  • MPE covers the decrease zone from the MPE chip (an higher zone solely from the
    keyboard’s configuration message). Per-note expression is recorded and
    performed however not drawn in an editor. VST3 devices hear per-note pitch
    solely inside a two-semitone channel bend; SoundFonts don’t have any CC 74 timbre
    except the SF2 maps it; the sampler takes per-note pitch solely. MIDI clock
    isn’t learn. The built-in
    sampler ignores poly stress; the controller lane doesn’t edit poly
    stress. Notes and controllers are timestamped to
    the callback block.
  • Comping (taking alternate passes of a recorded lane) isn’t right here but.
  • Disk streaming covers unwarped audio clips solely: a warped clip is decoded
    into reminiscence to be stretched, and the sampler at all times decodes. A single
    streamed clip that performs throughout the track’s wrap level dips briefly on the
    wrap (one stream per clip).
  • The sampler panel masses one file at a time; it has no multi-sample import
    wizard, velocity-layer editor or waveform modifying floor.
  • Step parameter locks goal the monitor instrument. Insert parameters use
    automation lanes; insert-targeted step locks stay exterior this launch.
  • Only the primary auxiliary enter of a CLAP or VST3 impact is fed a key, as a
    stereo (or mono) sign; an impact with a number of sidechains hears silence on
    the others. A VST3 plugin’s additional buses are used solely beside a stereo important
    bus.
  • Modulation is evaluated as soon as per block (at most the system’s block measurement), so
    a synced LFO activates the block after its beat. A follower aimed toward its personal
    monitor, or at a monitor the render order can not put after its supply, hears the
    earlier block’s stage. The sync divisions are straight word values (no
    dotted or triplet ones), and a “bar” amongst them is 4 beats regardless of the
    meter.
  • The scene launcher has no per-scene tempo, and an export is at all times the
    association (launched tracks should not in it). A clip’s tail saved after a
    printed take doesn’t chase a controller worth set earlier than its trim.
  • Output recording chooses one bus per cross. Bounce further racks for a
    set of stems. A partial stay cross ends when recording stops and doesn’t
    routinely append impact tails; offline stems embody them.
  • Native plugin-window pixels require an X11 show. Offscreen verification
    checks the embedding lifecycle, whereas the separate show gate checks
    actual VST3 pixels when an X server is out there.



Source link