clip player

clipplayer · modulation

CLIP PLAYER — an Ableton-Session-style clip launcher with 8 INSTRUMENT LANES. Rotates Ableton's layout 90° to sit on a wide monome grid: ROWS = 8 instruments (lanes), COLUMNS = 8 clip slots per instrument (64 note clips total). Each lane plays its launched clip out its OWN pitch/gate/velocity outputs, so up to 8 clips sound at once — one per instrument (the owner model: "each row reflects a given instrument's materials"). It is a companion to a monome grid 128 controller AND to a one- or two-unit Novation Launchpad Mini Mk3 (both browser-native — WebSerial for the grid, WebMIDI for the Launchpad, no native helper — see lib/control/monome + lib/control/launchpad) but is fully usable from the card alone. CLOCK: LOCKED TO TIMELORDE (the rack transport) — no internal BPM, no clock cable. It runs only while TIMELORDE.running, at TIMELORDE.bpm, and freezes when it stops (free-runs if no TIMELORDE is in the rack). The only timing control is STEP (1/4 · 1/8 · 1/16 (default) · 1/32 = steps-per-beat). The card's ▶/■ transport writes TIMELORDE.running, and HIDES itself when TIMELORDE is slaved to an external clock (MIDICLOCK → start_in/stop_in). LAUNCH: clicking a clip queues it; with QNT on (default) it takes over on that lane's next loop boundary (off = immediately). Each lane queues independently, so a whole new arrangement can drop in on the bar line. A "scene" is a COLUMN — firing it launches one clip per instrument together. The per-lane playing/queued set syncs over the Y.Doc so collaborators (and a second grid) see the same session; grid LED + serial I/O stay per-user local. CLIPS are tiny note/step patterns (default 16 steps, up to 128 — set non-destructively, so notes past a shortened length are kept and replay when you lengthen again): polyphonic (chords fan out across the lane's poly pitch/gate pairs), per-note length (held gates), per-note velocity (drives the lane's vel CV), per-note probability, and scale-aware (major/minor/pentatonic/chromatic). Clips may be DIFFERENT lengths per lane; lanes free-run as a POLYMETER and all re-align to step 0 on the TIMELORDE transport downbeat (a fresh ▶ is always phase-locked). CARD: a SESSION view (8×8 launch grid, lane-tinted; single-click = launch/queue, click the playing cell = stop, DOUBLE-CLICK = open the clip's editor) and an EDIT view (a piano-roll note editor — X = step, Y = pitch in-key; click a cell to place/remove a note, right-click to cycle its velocity through 6 levels (≈0/20/40/60/80/100%), with scale/root/length controls, per-lane MONO/POLY, ROW/OCT pitch-window scroll + a TIMELORDE-locked playhead). GRID (16×8): left 8×8 = clip matrix, right control strip = per-lane STOP + SCENE launch + COPY/PASTE/PASTE-REVERSE (held modifiers: hold COPY/PASTE/PASTE-REV + tap a clip to copy it to / paste it from a per-machine buffer; PASTE-REV pastes a time-reversed copy) + STOP-ALL + TRANSPORT; HOLD the EDIT pad + tap a clip to turn the whole grid into that clip's note editor. The on-grid note editor pages a clip in up to 8 pages of 16 steps — FOLLOW auto-scrolls the shown page with the playhead, tap it to FREEZE and page with LEFT/RIGHT; DOUBLE dups the first half into a doubled length; a dedicated 2-row LENGTH page sets the clip length (block ×16 then trim to the exact end step). LAUNCHPAD (Novation Launchpad Mini Mk3, one or two units over WebMIDI): the same clip matrix + note editor, plus a command deck exposing per-lane MONO / MUTE / clock-RATE / SWING / per-clip CLIP-DIV, a RESET pad, tempo nudge, and a KEYS isomorphic keyboard for live note entry + clip-record. Its scene-launch column is a SCROLLING window (shift-layer amber UP/DOWN) reaching up to 64 scene slots per lane — FIXED stride-64 clip storage means clips can live in scenes past the first 8 (older saves migrate once on load) — and a TYPED clipboard COPY/PASTEs whole SCENES (all 8 lanes at a slot, full-replace) as well as single clips: scene→scene and clip→clip apply, the cross-type pastes are no-ops with dimmed targets, and a scene paste is one undo step. SCENE REPEATS (Deluge-style): scenes loop forever by default (repeats = infinite), but HOLD GRID + HOLD a scene-launch button (position-relative through the scene scroll) to open the orange REPEAT-COUNT view — tap pad k to set k repeats (1–63; pad 64 = infinite; pads 1..N stay lit for count N, all 64 = infinite) — and after N passes of the scene's longest clip (frozen at launch) the player auto-launches the next content scene down through the normal quantized launch path, skipping empty rows and keeping the last content scene looping; manual launches always win (relaunching resets the count, an individual clip launch cancels it), muting never voids it, whole-scene COPY/PASTE carries the count with the scene, and the card shows a read-only "×N" flair (live "p/N" while counting) at the right of each scene row. PER-CLIP AUTOMATION (Deluge-like): right-click a MODULE'S CARD → "Assign to automation lane" (1–8; MODULE-level — one lane per module, re-assigning moves it; the assigned card gets a thin border in the lane's colour and the AUTO block shows per-lane assigned-module counts), then arm THAT LANE's teal ◉ (per-lane arm, under its channel column next to RATE; on a Launchpad, SHIFT+the lane's top-row button, lane 8 = double-tap SHIFT) — while a lane is armed and its note clip plays, TOUCHING any control of a module assigned to it (screen / MIDI / Electra — NEVER CV: automation records your hands, a CV cable is performance signal and is never captured) records by CONTINUOUS OVERDUB into the PLAYING clip's OWN automation (punch-in at that clip's next loop start; each clip in a lane carries its own envelopes, stored beside the notes so note edits never clobber them; only moved params are written, max 16 recorded controls per clip; touching an unassigned module's control records nothing — assignment is explicit; per-lane single-writer, so two collaborators can record two lanes at once). Launching a clip launches its envelopes with it (linked to the clip's length); the ENVELOPE BELONGS TO THE CLIP — copy/paste + scene-duplicate carry it (PASTE-REV time-reverses it), pasting over a clip replaces it, clearing/emptying a clip clears it, carriers show a teal dot on their cell, and if two lanes' clips automate the same control exactly ONE drives it (its module's assigned lane wins, else lowest). Deletion is explicit + undoable: right-click → "Clear recorded automation" (per control; distinct from the module menu's "Remove automation assignment", which only stops future recording) and the editor's CLR AUTO (per clip). Playback is transient on every peer and never rewrites the saved patch; grabbing an automated control suspends its automation until you physically release it, and the on-card override dot re-enables all. Two current limits: the on-card grid shows only the first 8 scenes (card scene-scroll is a follow-up), and the arranger records session launches of scenes 1–8 (scene 9+ arranger recording is a follow-up). Inputs — STOP ALL: a rising edge stops every lane (canonical windowed edge counter, no double-count). Outputs — PITCH 1-8: each lane's launched-clip pitch as a poly-capable V/oct cable (chords fill lanes), GATE 1-8: high while that lane's note sounds, VEL 1-8: that lane's per-note velocity as a 0..1 CV (patch into a VCA/ADSR amount). Params — STEP (steps per beat), OCT (octave transpose), GATE (per-step gate duty cycle), QNT (quantize launch to the loop boundary), S&H (ON by default). The upper-right S&H toggle bakes in a gate-sampled Sample & Hold across ALL 8 lanes at once — replacing the 8 external S&H modules a user otherwise needs: on a REST (empty step) the lane's gate still closes but its pitch CV HOLDS its last value instead of resetting to C4, so each lane's pitch latches to the gate edge. Turn S&H OFF for the legacy continuous behavior where rests rewrite pitch. SONG MODE (arranger): the header SES/ARR toggle flips between live SESSION play and ARRANGEMENT playback of a recorded TIMELINE of clip launches (an event log over song-beats). The ● REC arm captures launches into that timeline; the RPL/OVR toggle next to it sets the record mode — REPLACE (default: arming clears the log + restarts the song at bar 1) or OVERDUB (arming KEEPS the existing take and merges new launches into it by song-beat). In ARRANGEMENT view the card shows a compact lane×bar timeline whose clip blocks can be DRAGGED in time (bar-snapped) to retime a launch, selected to cycle/delete, with the loop length nudged in bars. The "ARR ⤢" button pops out a FULL-WINDOW arranger editor (like the MAPPY map editor) hosting a large timeline with the same drag-to-move + all the edit ops + a SNAP bar/beat toggle; it reads/writes the SAME synced arrangement so the card, the pop-out, and peers stay in lock-step. The arrangement is Y.Doc-synced; drags commit one transactional write on drop (no per-frame store churn). All ports live on the yellow drill-down PATCH PANEL (no side jacks); knobs are MIDI / control-surface assignable. Usage: build a few note clips per instrument, patch each lane's PITCH/GATE into its own voice, start TIMELORDE, then launch/quantize-switch clips + scenes from the card (or a monome grid) to perform, RECORD a take into the arrangement (REPLACE or OVERDUB) and refine it by dragging blocks on the timeline (in-card or the pop-out editor). A faithful monome Kria step-sequencer ships as the separate `kria` module.

A clip launcher in the style of Ableton's Session view, with 8 instrument lanes. The grid's rows are the 8 lanes (instruments) and the columns are clip slots — the card shows 8 slots per lane at a time (64 clips at a glance), while on a Launchpad the scene column scrolls through up to 64 scene slots per lane (fixed stride-64 storage; older saves migrate once on load), so clips can live in scenes past the first 8. Each lane independently plays whichever clip you launch out its OWN pitch/gate/velocity outputs, so up to 8 clips can sound at once (one per lane). Click a pad to launch its clip, double-click to open the piano-roll editor and draw notes into it. Each note carries three per-note performance controls. Two of them decide WHETHER the note fires, and they STACK: a PROBABILITY (a firing chance) and a PLAY EVERY (a 1–8 count-divider — the note plays only on every Nth loop of its clip), so a note fires only when it's that loop's turn AND wins its probability roll; both are set from the card's right-click menu (the NOTE PROBABILITY and SKIP EVERY submenus) — on a NOTE CELL they set that one note, on a LAUNCH-GRID CLIP PAD they set the whole clip or, on a Launchpad, SHIFT+tap (probability) and SHIFT+double-tap (play-every, an 8-pad red top-row picker). The third decides WHAT PITCH it fires at: PITCH PROBABILITY, a single "pitch instability" amount from off to 100% in the same 40 increments (card note right-click for now — hardware surfaces are a follow-up). At OFF, which is the default, the note plays exactly the pitch you drew, always. Turning it up progressively loosens the note's identity rather than adding random noise: first occasional ornaments a scale degree away, then frequent but local melodic variation, then wider reharmonisation, and only near the top do out-of-key notes arrive in force. It draws from a weighted spread of candidate pitches measured in SCALE DEGREES of the clip's own key — so a step from E in C major is D or F, not D♯ — with big leaps exponentially rarer than small ones, extra weight on the OCTAVE (and the fifth) so a large move still sounds like the same musical idea, and out-of-key notes fading in gradually instead of switching on. The clip's key governs where a note may wander TO, never the note you actually wrote: a deliberate out-of-key note keeps its own pitch and its own octaves at full weight. A note re-draws its pitch on every pass of the clip rather than freezing into a transposition, and the notes of a chord move independently. The play-every gate and the pitch draw are both DETERMINISTIC from the shared loop count, so collaborators hear the same melody; the firing-probability roll is currently rolled per-peer, so on a probabilistic note different collaborators may hear different notes drop out. Notes colour-code the first two: white always fires, a dimmer purple/orange as probability drops, red (dimmer the higher N) for a play-every note, and a blend of the two for a note that is both — pitch probability instead marks the cell with a DASHED border (a shape, not a third colour, so it stays readable on top of the other two), with the exact amount in the cell's tooltip and the menu's checkmark. There's no internal clock or BPM — CLIP PLAYER is locked to TIMELORDE (the rack transport): it runs at TIMELORDE's tempo, only while TIMELORDE is running, and the STEP control sets how many steps fall per beat. Each lane also has its own clock-rate control (1/8 · 1/4 · 1/2 · 1 · 2x · 4x — the card dropdown, and the Launchpad deck's per-lane RATE row) that divides or multiplies that lane's step rate off the global STEP grid — polyrhythms without leaving the card — and because the tempo comes from TIMELORDE, 2x/4x are exact from the first step. All lanes share a common phase origin (transport start or the RST button), so a 1/2 lane lands on even base steps and stays locked to the others; RST (also a MIDI-assignable button, and the reset input) snaps every active lane back to step 1 and re-anchors that shared origin. Launches can fire immediately or be quantized to snap cleanly at the next loop boundary of the LONGEST currently-playing clip — the shared reference bar (the Deluge model), so mixed-length clips stay phase-locked and short clips don't flip early; a launch fires immediately only when nothing is playing yet (there's no reference loop to line up to) or via a per-lane NOW. It also has a SONG / arrangement mode that records your launches onto a timeline for non-real-time playback, and pairs with a monome grid 128 or a one- or two-unit Novation Launchpad Mini Mk3 for hardware launching. On the Launchpad the scene-launch column is a scrolling window (its shift-layer amber UP/DOWN buttons slide it), and a typed clipboard lets you COPY/PASTE whole SCENES (all 8 lanes at one slot, full-replace) as well as single clips — scene→scene and clip→clip pastes apply, while scene→clip and clip→scene are ignored (their targets dim). SCENE REPEATS (Deluge-style, Launchpad-set): by default a launched scene loops forever (repeats = infinite), but each scene can carry a repeat count 1–63 — after that many passes of the scene's LONGEST clip (its length × rate/div, frozen at launch so mid-count edits never move the scheduled boundaries) the player AUTO-LAUNCHES the next scene DOWN that has content, skipping empty rows, through the normal quantized launch path (arranger-record captures it, LEDs update, peers stay in sync); after the last content scene it keeps looping it. Setting the count is a two-hands Launchpad gesture: HOLD the GRID button + HOLD a scene-launch button → the 8×8 becomes the orange REPEAT-COUNT view (pads 1..N lit row-major from the upper-left; all 64 lit = infinite) — tap pad k to set k repeats, pad 64 for infinite; release either button to return to the grid. The buttons are position-relative through the scene scroll, so a scrolled window edits the correct scene. Counts are content: a whole-scene COPY/PASTE carries the repeat count with the scene (a full-replace paste sets the target's count from the copied scene, clearing it when the source had none). Manual always wins: launching another scene (or re-launching the same one) resets the count fresh, launching an individual clip outside the scene cancels the countdown until the next scene launch, and stopping every scene lane cancels it too — while MUTING lanes never voids or alters the count. The card shows a small read-only "×N" flair to the right of each scene row (nothing shown for infinite; while counting it shows live progress "p/N"); editing the count from the card is a follow-up. PER-CLIP AUTOMATION records parameter moves into the PLAYING clip by CONTINUOUS OVERDUB — Deluge-like: assign modules, launch a clip, arm the lane, twist, and it just keeps overdubbing. Assignment is MODULE-level: right-click a MODULE'S CARD → "Assign to automation lane" → pick lane 1–8 (one lane per module; re-assigning moves it). The assigned module's whole card gets a thin border in that lane's colour, and the AUTO block shows a per-lane assigned-module count. The ARM is PER LANE — the small teal ◉ under each channel column (next to its RATE control), distinct from the experimental red ● arranger record (which records clip LAUNCHES, not knob moves): launch a note clip in the lane, arm THAT lane's ◉, and just MOVE any control on an assigned module — the lane's recorder punches in cleanly at ITS playing clip's own next loop start and overdubs EVERY loop until you press its ◉ again (a manual stop — no auto punch-out); several lanes can record at once, each on its own loop, and different collaborators can record different lanes simultaneously (each lane is single-writer). Automation records your HANDS — screen drags, MIDI CC, Electra — never CV: a CV cable modulating a param is performance signal, not recorded automation (recording reads the modulation-free knob value, and CV never counts as a touch). Touching a control on an UNASSIGNED module while armed records nothing — assign the module first. Each clip's automation caps at 16 recorded controls (a MAX badge flashes when a touch would exceed it). Longer-form automation across a whole song is the (future) arranger mode's job — clip automation is always clip-length. DUPLICATING a clip player copies its content (clips, recorded automation, per-channel settings, the arrangement) but never its LIVE state: the copy is born stopped, disarmed and UNASSIGNED (one lane per module is a global claim — it stays with the original). Each loop, only the params you're actively MOVING are (re)recorded; every other track keeps PLAYING BACK, and a released control reverts to playback next loop; stopping mid-loop keeps the untouched tail. A 🟡🟡🔴🔴 countdown flashes each recording clip's pad (and its lane's ◉ arm) on the last four beats before that clip's own wrap. EVERY clip in the lane carries its OWN automation — THE ENVELOPE BELONGS TO THE CLIP: it's stored beside the notes (editing notes never touches the recorded envelopes), COPY/PASTE and scene-duplicate carry it with the clip (PASTE-REV pastes it time-reversed to match the reversed notes), pasting over a clip replaces its automation, and clearing/emptying a clip clears its automation too. Clips that carry automation show a small teal dot on their grid cell. Launching a clip launches its envelopes with it, looping at the clip's length; if two playing clips in different lanes automate the SAME control, exactly ONE drives it (its module's assigned lane wins, else the lowest lane — no fighting). Deleting is explicit and undoable: right-click an automated control → "Clear recorded automation" wipes that control's envelopes (its module's lane's clips, or everywhere when unassigned) — distinct from the module card's "Remove automation assignment", which only stops FUTURE recording and leaves recorded envelopes playing — and the editor's CLR AUTO button wipes the open clip's whole automation while keeping its notes. On playback it drives those params transiently on every peer (never rewriting the saved clip). Parameter moves never JUMP: when a lane stops or switches away from an automating clip the params HOLD their last automated value — recomputed from the clip data at the stop position, quantized to the step grid so collaborating peers converge on the same resting value (never a snap to zero/default) — and every unavoidable seam (the loop wrap, switching INTO an automating clip, and a quantized switch AWAY, which holds at the musical boundary rather than cutting early) is a short click-free glide rather than a hard step. Grabbing an automated control live SUSPENDS its automation (live wins) until you physically RELEASE it — a gesture that spans a loop wrap is never yanked back to the envelope mid-drag, a wrap commit only overwrites the part of the loop the gesture actually covered, and a param gripped by two surfaces at once (screen + MIDI) stays live until the last one lets go; on release the param glides back to playback (the on-card dot re-enables all at once). Two current limits are documented honestly: the on-card grid shows only the first 8 scenes (card scene-scroll is a follow-up), and the arranger records session launches of scenes 1–8 (recording launches of scene 9+ is a follow-up — session launching them already works). Drive its lanes into eight voices for a full multitrack clip-based performance instrument.

Full guide: Clip launcher, monome grid & song mode The full illustrated guide — launching clips, scenes & quantize, editing notes on the pads, driving it from a monome grid 128, and recording a session into a song-mode arrangement.

the faceplate

clip playerstop_allgateresetgatepitch1polyPitchGategate1gatevel1cvpitch2polyPitchGategate2gatevel2cvpitch3polyPitchGategate3gatevel3cvpitch4polyPitchGategate4gatevel4cvpitch5polyPitchGategate5gatevel5cvpitch6polyPitchGategate6gatevel6cvpitch7polyPitchGategate7gatevel7cvpitch8polyPitchGategate8gatevel8cvaudiocvgatepitch
2 inputs · 24 outputs · 7 params

inputs

idcablewhat it does
stop_allgateStop-all trigger: a rising edge immediately stops every lane (a panic/stop button), in both session and arrangement modes.
gate / trigger; trigger — fires once per rising edge
resetgateReset trigger: a rising edge snaps every ACTIVE lane back to step 1 and re-anchors all lanes to a shared phase origin (divided/multiplied lanes restart their counting together). Queued-but-not-started launches are untouched — they still drop in at the next loop boundary of the longest playing clip. Stopped lanes stay stopped; the arrangement's song position is not rewound (this is a clip-step reset, not a transport rewind).
gate / trigger; trigger — fires once per rising edge

outputs

idcablewhat it does
pitch1polyPitchGateLane 1's pitch output — the launched clip's notes as a poly chord cable (a mono pitch input receives just the root; a poly voice plays the whole chord), shifted by the OCT control.
poly pitch+gate bus; 10-channel poly bus (5 pitch + 5 gate lanes)
gate1gateLane 1's gate — goes high while a note in lane 1's clip plays (its width set by GATE; tied/held notes stay high across their span); low on rests. Patch into an envelope/VCA.
gate / trigger
vel1cvLane 1's velocity CV — each note's velocity as a control voltage, for velocity-sensitive patching (e.g. into a VCA or filter depth).
control voltage (CV)
pitch2polyPitchGateLane 2's pitch output (poly chord cable), from lane 2's launched clip.
poly pitch+gate bus; 10-channel poly bus (5 pitch + 5 gate lanes)
gate2gateLane 2's gate — high while lane 2's notes play, low on rests.
gate / trigger
vel2cvLane 2's velocity CV.
control voltage (CV)
pitch3polyPitchGateLane 3's pitch output (poly chord cable), from lane 3's launched clip.
poly pitch+gate bus; 10-channel poly bus (5 pitch + 5 gate lanes)
gate3gateLane 3's gate — high while lane 3's notes play, low on rests.
gate / trigger
vel3cvLane 3's velocity CV.
control voltage (CV)
pitch4polyPitchGateLane 4's pitch output (poly chord cable), from lane 4's launched clip.
poly pitch+gate bus; 10-channel poly bus (5 pitch + 5 gate lanes)
gate4gateLane 4's gate — high while lane 4's notes play, low on rests.
gate / trigger
vel4cvLane 4's velocity CV.
control voltage (CV)
pitch5polyPitchGateLane 5's pitch output (poly chord cable), from lane 5's launched clip.
poly pitch+gate bus; 10-channel poly bus (5 pitch + 5 gate lanes)
gate5gateLane 5's gate — high while lane 5's notes play, low on rests.
gate / trigger
vel5cvLane 5's velocity CV.
control voltage (CV)
pitch6polyPitchGateLane 6's pitch output (poly chord cable), from lane 6's launched clip.
poly pitch+gate bus; 10-channel poly bus (5 pitch + 5 gate lanes)
gate6gateLane 6's gate — high while lane 6's notes play, low on rests.
gate / trigger
vel6cvLane 6's velocity CV.
control voltage (CV)
pitch7polyPitchGateLane 7's pitch output (poly chord cable), from lane 7's launched clip.
poly pitch+gate bus; 10-channel poly bus (5 pitch + 5 gate lanes)
gate7gateLane 7's gate — high while lane 7's notes play, low on rests.
gate / trigger
vel7cvLane 7's velocity CV.
control voltage (CV)
pitch8polyPitchGateLane 8's pitch output (poly chord cable), from lane 8's launched clip.
poly pitch+gate bus; 10-channel poly bus (5 pitch + 5 gate lanes)
gate8gateLane 8's gate — high while lane 8's notes play, low on rests.
gate / trigger
vel8cvLane 8's velocity CV.
control voltage (CV)

params

idlabelrangedefaultcurve
stepDivStep0..32discrete
octaveOct-2..20discrete
gateLengthGate0.1..10.9linear
quantizeQnt0..11discrete
snhs&h0..11discrete
restrictRangeRngLim0..10discrete
rangeFloorRngFlr0..83discrete

controls

controlwhat it does
Clipplayer auto arm {n}Lane {n}'s ◉ automation arm (CLIP RECORD, CONTINUOUS OVERDUB) — the small teal button under channel {n}'s column, next to its RATE control; PER LANE, Deluge-like (this replaced the old single global AUTO button), and distinct from the experimental red ● arranger record. While lane {n} is armed and a note clip plays in it, the recorder punches in cleanly at THAT clip's own next loop start; then just MOVE any control of a MODULE assigned to lane {n} (screen / MIDI / Electra all count — CV never records): it records WHILE you hold it, and every OTHER track keeps playing back so the automation loops audibly/visibly. Recording lands in the clip PLAYING in the lane (each clip carries its own envelopes). Release a control and it reverts to playback next loop. It overdubs EVERY loop until you click the ◉ again — a MANUAL STOP (no auto punch-out); stopping mid-loop keeps the untouched tail. Touching a control on an UNASSIGNED module records nothing — right-click the module's card → "Assign to automation lane" first. A 🟡🟡🔴🔴 countdown flashes this ◉ (and the recording clip's grid cell + Launchpad pad) on the last four beats before the clip's wrap. Per-lane single-writer: the arming client records this lane (another collaborator can record a DIFFERENT lane at the same time); peers still play back. On a Launchpad, SHIFT + the top-row button of the lane's column toggles the same arm (lane 8 = double-tap SHIFT).
Clipplayer auto assigned {n}Per-lane ASSIGNED-MODULE count — one tiny chip per lane, tinted the lane's colour, showing how many MODULES are assigned to that lane's automation (right-click a module's CARD → "Assign to automation lane"; the assigned card gets a border in the lane's colour; a deleted module is not counted). A dim chip = nothing assigned. While lane {n} is armed, moving ANY control of these modules records it (max 16 recorded controls per clip). The module menu's "Remove automation assignment" only stops FUTURE recording — the recorded envelopes keep playing until you "Clear recorded automation" (right-click the control) or CLR AUTO the clip.
Clipplayer auto cap {n}MAX badge — flashes for a few seconds when a touch (or a record commit) would exceed the 16-recorded-controls cap of the recording clip's automation. Nothing is lost: the 16 existing tracks keep recording/playing; the over-cap control is simply not captured. Free a slot by clearing a recorded control (right-click → "Clear recorded automation") or the clip's CLR AUTO.
Clipplayer auto override {n}Automation override dot — lights when a control this player automates is being grabbed live (screen drag / MIDI CC / Electra), which SUSPENDS that param's automation playback (live wins) until you physically RELEASE the control (pointer-up, or a short idle after the last MIDI/Electra move) — NOT the loop wrap, so a gesture spanning a loop is never interrupted. On release the param glides back to the envelope; the instant you grab it the queued automation tail is truncated so it doesn't fight your hand. Click the dot to re-enable every suspended param at once.
Clipplayer cell {n}A note cell in the piano-roll editor (rows are scale degrees/pitches, columns are steps). Click to toggle a note on or off at that pitch and step; right-click a note for its menu. The menu's top level is three SUBMENUS that expand into their option lists — NOTE PROBABILITY (a 0–100% firing chance), PITCH PROBABILITY (an off–100% pitch-instability amount in 40 increments) and SKIP EVERY (a 1–8 count-divider that plays the note only on every Nth loop of the clip) — followed by three actions on the CLIP you are editing: COPY and PASTE, which use the same typed clipboard as the Launchpad and Push 2 (so a clip copied on the card pastes on the hardware and vice versa; a paste replaces the target's notes AND its recorded automation, and a whole-SCENE buffer will not paste onto a single clip), and CLEAR, which DELETES the clip — the same undoable operation as the launch grid's right-click CLEAR, and distinct from the editor's ⌫, which empties the notes but keeps the clip. The first two STACK and decide WHETHER the note fires: it sounds only when it's that loop's turn AND it wins its probability roll. The third decides WHAT PITCH it fires at — off (the default) plays exactly the note you drew, and turning it up lets the note wander to nearby SCALE DEGREES of the clip's key, from occasional ornaments through melodic variation to out-of-key reharmonisation at the top, with octaves favoured over equally-distant dissonances. The cell colour codes the first two — white = always fires, a dimmer purple/orange as probability drops, RED (dimmer the higher N) for a play-every note, and the AVERAGE of the two when a note is both probabilistic and play-every. Pitch probability deliberately does NOT add a third colour to that blend (it would be unreadable at cell size): a note whose pitch can wander gets a DASHED border instead, and its exact amount is in the cell's tooltip and the menu's checkmark. The cells make up the clip you're editing for the selected lane+slot.
Clipplayer clear auto {n}CLR AUTO — delete the OPEN clip's whole recorded automation (all of its envelopes) while keeping its notes. Shown in the piano-roll editor only when the clip carries automation; undoable. The editor's ⌫ clear wipes notes AND automation together; per-control deletion is right-click → "Clear recorded automation".
Clipplayer mono {n}Lane {n}'s mono/poly toggle — switches that lane between MONO (one note per column, replace-on-add) and POLY (a chord: multiple notes stacked in one column, played out the lane's poly pitch output up to the poly cable's voice width).
Clipplayer pad {n}A clip slot in the launch grid (one cell of the 8 lanes × 8 slots). Click to launch that lane's clip (with QNT on it quantizes to the longest playing clip's next loop boundary; immediately when nothing's playing yet or via NOW), click the playing pad to stop the lane, and double-click to open the clip in the piano-roll editor. RIGHT-CLICK a pad for the CLIP menu — the SAME menu, with the same rows in the same order, that a note cell opens, only scoped to the whole clip: NOTE PROBABILITY (the clip DEFAULT every note without its own inherits), PITCH PROBABILITY and SKIP EVERY (both applied to EVERY note in the clip), then COPY, PASTE and CLEAR. It opens on EVERY pad, loaded or empty: on an empty slot only PASTE is live, which is how a copied clip is duplicated onto a free pad, exactly as on a Launchpad or Push 2. An empty pad shows differently from a filled or playing one; a clip that CARRIES RECORDED AUTOMATION shows a small teal dot in its corner (the envelope belongs to the clip — copy/paste moves it with the clip).
Clipplayer rate {n}Lane {n}'s clock-rate control (the per-lane dropdown under each channel column) — divides or multiplies the lane's step rate off the global STEP grid: 1/8, 1/4 and 1/2 advance the lane every 8th/4th/2nd base step; 2x and 4x advance it 2×/4× per base step (exact, since the tempo comes from TIMELORDE); 1 (the default) runs on the STEP grid. All lanes count from a shared phase origin (transport start or RST), so divided lanes stay locked to the others. Exposed on the card AND the Launchpad deck's per-lane RATE row (tap to cycle up); the monome grid has no rate surface.
Clipplayer scene repeat {n}Scene {n}'s repeat-count flair — a small read-only "×N" to the right of that scene's row, shown only when the scene carries a finite repeat count (infinite shows nothing — the default). While the scene is actively counting it shows live progress "p/N" (pass p of N). After N passes of the scene's longest clip the player auto-launches the next content scene down. The count itself is SET on a Launchpad: HOLD GRID + HOLD the scene's launch button, then tap pad k in the orange repeat-count view (pad 64 = back to infinite); card-side editing is a follow-up.
GateGATE — how much of each step the per-note gate stays high, from short staccato stabs to near-legato (held/tied notes ignore this and stay high across their full span).
OctOCT — transposes every lane's pitch output up or down by whole octaves (-2..+2).
QntQNT — launch quantization: on, a clip you launch waits and drops in cleanly at the next loop boundary of the LONGEST currently-playing clip (the shared reference bar — the Deluge model), so mixed-length clips stay phase-locked; off, it launches immediately. A launch fires immediately only when NOTHING is playing yet (there is no reference loop to line up to) or with a per-lane NOW override — a launch into an idle lane is otherwise queued to that reference boundary, not fired at once.
RngFlrRANGE FLOOR (clip-view display only) — the LOWEST octave shown when RESTRICT RANGE is on: the 4-octave editor window runs from this octave's C upward, clamped so it never scrolls past the editable range's top or bottom. Display only; does not transpose or gate anything.
RngLimRESTRICT RANGE (clip-view display only) — off (default) the piano-roll note editor shows the WHOLE editable pitch range at once; on, it shows a compact 4-octave window (its lowest octave set by the FLOOR control) so a tall grid stays scannable. Affects the editor view ONLY — never the played notes, pitch CV, or anything a clip emits.
s&hS&H — one global sample-and-hold toggle for all 8 lanes' pitch outputs: on (default), on a rest the gate closes but each lane's pitch HOLDS its last note (latched to the gate edge); off, rests reset pitch to 0 (the legacy continuous behavior).
StepSTEP — how many steps fall per TIMELORDE beat (1/4, 1/8, 1/16, 1/32), i.e. the playback resolution of the clips.

source

clipplayer.ts on GitHub.

Generated from packages/web/src/lib/{audio,video}/module-registry.ts · repo