Kandecksky

Live-performance clip launcher and granular instrument — user guide

Overview

Kandecksky is an audio looper meant to be played live. Most of the window is a clip grid; the first column is a granular instrument. It is controller-agnostic: any MIDI grid or pad controller can drive it through controller profiles and MIDI Learn, it works fine with just the mouse, and it can be automated over OSC. An Akai APC20 profile ships built in (MIDI & controllers).

Under the hood:

It reads WAV, MP3, OGG, FLAC, AIFF, M4A, and AAC files.

Quick start

  1. Point the library at your samples. In the Library panel (left), click and choose a folder. Its audio files appear in the tree; the search box filters by name.
  2. Load a clip. Drag a file from the library onto any grid cell — or right-click a cell and choose Load audio….
  3. Start the clock. Press Space or click ▶ PLAY. The four beat dots on the transport bar pulse with the bar.
  4. Launch the clip. Click the cell (or hit its controller pad). It arms amber and fires at the next quantize boundary, turning green while playing.
  5. Stop it. Click the playing cell again ( red = stopping at the boundary), use the track's clip-stop button, or Shift+Space to stop everything.
Tip A cell keeps its trim, pitch, gain, envelope, loop mode, color, and LFO settings, and all of that is saved with your set (Sets & persistence).

The interface

RegionWhat it does
Brand rail (far left) The vertical Kandecksky column. Purely decorative — blue, yellow, red, top to bottom.
Transport bar (top) Clock controls on the left (PLAY, STOP, Bounce, BPM, TAP, GEN, beat dots); mode and settings buttons on the right (sync badge, LIM, RES, SETS, MACRO, MIDI, OUTPUT, PALETTE, SAVE, LOAD, HELP).
Library panel Folder tree of your samples with search. Drag files onto cells or the Plantilpunkt drop zone. Collapsible with .
Clip grid Tracks in columns, scenes in rows — the same 8×5 bank a grid controller presents. Scene-launch buttons sit at the right end of each row.
Plantilpunkt The first column: a permanent granular instrument instead of a clip track (details).
Faders row Per-track volume faders plus the MAIN master fader. Each track header also carries its FX and MIDI buttons.
Status bar (bottom) Contextual hints and the current launch-quantize setting.

Transport & clock

Controls

ControlAction
▶ PLAY / Space Start the master clock. Queued clips fire on their boundaries.
■ STOP / Shift+Space Stop the clock and all playing clips.
⏺ Bounce Record the master output while playing; writes a WAV when you stop (Recording & export).
BPM Master tempo, 40–300 BPM, editable to 0.1. Tempo-synced clips re-stretch to follow.
TAP / T Tap tempo.
GEN / G Toggle the generative engine.
Beat dots Four dots pulse one per beat, in Kandinsky colors.

Launch quantize

Clip launches and stops resolve on a beat boundary: Immediate, ½ bar, 1 bar (default), 2 bars, or 4 bars. Set it in ⚙ MIDI → Launch Quantize; the current value is always shown in the status bar, and a MIDI Learn target can cycle it from hardware.

Sync sources

The badge next to the transport buttons shows who owns the clock:

BadgeSource
INT Internal free-running clock (default).
MIDI CLK Kandecksky follows incoming MIDI Clock (24 PPQN) from the device selected in ⚙ MIDI.
OSC Kandecksky follows BPM and play/stop sent by a DAW over OSC (OSC & DAW integration).
LINK Ableton Link — tempo and start/stop shared with every Link-aware app on the network (see below). The badge shows the peer count, e.g. LINK 2.

Kandecksky can also be the master: enable MIDI Clock Out in ⚙ MIDI to send 24 PPQN clock plus START/STOP to a DAW or hardware on a chosen output port.

Ableton Link

Choose sync source Ableton Link in ⚙ MIDI to join a Link session. Unlike MIDI Clock's master/slave split, Link is peer-to-peer: any participant can change the session tempo, and everyone follows. Kandecksky follows session tempo and start/stop, and proposes its own BPM edits, tap tempo, and transport changes back to the session. There is nothing to set up; Link peers on the same network find each other on their own.

Clip grid

Launching

Immediate-play gestures

Loop mode, badges & colors

Right-click menu

Load audio…, loop/one-shot toggle, Set clip BPM and Sync to Global BPM, Auto-trim silence, Export clip…, Set color…, and Clear clip.

Waveform editor

Double-click any loaded cell to open its editor. All edits apply in real time — most take effect at the next loop pass or relaunch.

ControlRangeNotes
Trim in / outanywhere in the file Drag the handles on the waveform, or type exact seconds.
Cue pointsnamed markers Set named positions inside the clip; markers draw on the waveform. The active cue overrides trim start on launch.
Clip BPMfree entry Tag the clip's native tempo. When synced, the engine time-stretches it to the master BPM — pitch preserved.
Pitch−24 … +24 st Semitone transposition, independent of tempo. The editor shows the detected key and what it becomes as you drag.
Reverseon/off Plays the sample backwards; composable with pitch and BPM sync.
Crossfade loop0–500 ms Blends the loop's tail into its head so the loop point doesn't click.
Attack / Release0–5000 ms Per-clip envelope applied in the engine.
Clip gain−24 … +12 dB Per-clip gain staging before the track fader.
Follow actionNone / Next / Random / Loop back What happens when a one-shot ends.
LFOsee below Per-clip modulation, synced to the clock.

Per-clip LFO

Enable the LFO to modulate volume or pitch with a sine or triangle wave. Rate is tempo-synced, from ¼ bar to 4 bars, and depth runs 0–1.

Plantilpunkt — the granular track

The first column is not a clip track: it is a permanent granular instrument that plays one sample as a cloud of short, overlapping grains. It's what you reach for when you want a spectral freeze, an endless texture pad, or a rhythm warped into something else entirely. Drop a sample on its drop a sample zone (or drag from the library), then press its ▶ PLAY.

KnobRangeWhat it does
POS0–100% Read position in the sample.
SIZE5–500 ms Grain length.
DENS1–32 Simultaneous grains. Output is normalized by density, so high counts don't clip.
SPRY1–500 ms Random scatter of each grain's start around POS.
P.SC0–12 st Random per-grain pitch scatter.
RATE−2× … +2× Scan speed: the position cursor traverses the sample; negative scans in reverse; 0 holds still.

Mixer & FX

Levels

Per-track FX chain

Open with the FX button on a track header. Signal flows EQ → compressor → delay → reverb:

EffectParameters
3-band EQ Lo shelf 200 Hz · mid peak 1 kHz (Q 0.7) · hi shelf 6 kHz.
Compressor Threshold, ratio, attack, release, makeup gain.
Delay Time (up to 4 s, BPM-synced divisions available), feedback, wet.
Reverb Freeverb — wet, room size, damping.

Audio output & routing

Kandecksky owns its own audio device via the native engine — it does not play through the browser layer. Open OUTPUT on the transport bar to manage it:

Tip — recording stems into a DAW Route tracks to separate pairs of a virtual multichannel device (e.g. BlackHole 16ch on macOS), then record those pairs as inputs in your DAW.

Recording & export

Generative engine

Toggle with GEN or G. A per-track control strip appears below the faders; each track gets a trigger mode plus timing and probability shaping. Generative triggers bypass launch quantize — they land exactly on their scheduled step.

Trigger modes

ModeBehavior
RandomPick a random loaded clip each trigger.
RotateCycle through loaded clips in order.
EuclideanBjörklund rhythm — N pulses over M steps, with a phase offset.
MarkovWeighted next-clip choice with configurable memory.
Step sequencer16-step grid — left-click toggles a step, right-click sets that step's clip target.

Per-track shaping

Division (1/16 → 2 bars) · clock multiply/divide (÷4 → ×4) · probability · swing (0–100%) · humanize (±ms) · ratchet (%) · euclidean phase · step condition (always / every 2–4 / odd / even) · density envelope (ramp probability from A→B over N bars).

Evolving patterns

Performance tools

Performance macros — MACRO

Map a single MIDI CC to several parameters at once: track volumes, FX sends, grain controls, each with its own range. A spare knob on your controller is the obvious candidate. Build macros in the MACRO modal; they persist across sessions.

Set list mode — SETS

Queue multiple saved set files and step through them with Next ▶ / ◀ Prev — or from hardware via a MIDI Learn target. The list survives restarts.

Stutter & slip

Covered in Clip grid: Shift+hold a playing pad repeats the last ⅛ note; holding a pad 200 ms plays it immediately without quantize.

MIDI & controllers

Kandecksky is not tied to one piece of hardware. A controller profile describes a device's factory pad/CC layout; MIDI Learn overrides sit on top of whichever profile is active and always win. Between the two, any common MIDI controller can drive the app.

Connecting

Open ⚙ MIDI, pick the MIDI input and output (the output is used for LED feedback where the hardware supports it), and choose a Controller Profile. Connection and profile persist — your controller reconnects automatically on every launch.

Controller profiles

ProfileUse it for
Akai APC20 The APC20's fixed factory layout, including full LED feedback (table below).
Generic pad controller Most pad/grid controllers: pads map chromatically from note 36 (the drum-rack convention), row by row across the 8×5 grid. Volume faders on CC 7 (per channel), master on CC 14, knobs on CC 20–27. Dedicated scene-launch / track-select / stop buttons aren't assumed — bind those with MIDI Learn.
None No factory layout at all: only MIDI Learn mappings (and the mouse/keyboard) reach the grid. Ideal for keyboards, mixers, or any controller whose layout matches neither profile — learn exactly the controls you want.

APC20 profile layout

HardwareFunction
8×5 pad bank (notes 0–39) Clip grid. LEDs mirror state: playing · queued · stopping — or the cell's assigned color when idle.
Scene buttons (82–86)Launch a whole row.
Track faders (CC 7, ch 1–5)Track volumes.
Master fader (CC 14)Master volume.
Track select (64–68)Track selection.
Clip stop (48–52)Per-track stop.
Shift (98)Stutter modifier and layout overrides.
Device knobs (CC 16–23) Free — ideal for MIDI Learn and macros.
Note Note numbers can vary between firmware revisions — when in doubt, use MIDI Learn to confirm what your unit sends.

MIDI Learn

There are 35 learnable targets, covering every control in the app: transport, quantize cycling, all grain parameters, master and track volumes, BPM, set-list advance, layout overrides. In ⚙ MIDI, choose a target, click Learn, move your hardware control. Learned mappings beat the active profile's layout, save immediately, and keep working if you later switch profiles.

MIDI out

OSC & DAW integration

Receiving (DAW → Kandecksky)

With sync source DAW OSC, Kandecksky listens on UDP (default port 9000) for tempo and play/stop from the DAW — the sync badge reads OSC and the master clock follows.

Sending (Kandecksky → host)

Enable OSC Send in ⚙ MIDI (default target 127.0.0.1:8000). On every clip launch and stop Kandecksky fires:

Use these to drive visuals, lighting, or DAW actions from your performance.

Getting audio into a DAW

See Audio output & routing — pick a virtual multichannel device and use per-track direct outs for stems.

Sets, set lists & persistence

Heads-up Sets reference your audio files by path — they do not copy them. Moving or deleting the source files breaks the set's clips.

Palettes & display

Keyboard shortcuts

KeysAction
SpaceStart clock / play
Shift+SpaceStop all
TTap tempo
GToggle generative mode
F1Open this user guide
Ctrl+= / / 0 UI zoom in / out / reset ( on macOS)
Double-click cellOpen waveform editor
Right-click cellClip menu
Hold cell/pad (200 ms)Slip mode — play immediately
Shift+hold playing padStutter (⅛-note repeat)
Double-click track headerRename track

Troubleshooting

No sound

Recording captures silence (macOS)

macOS gates audio input behind the microphone permission. If you denied the prompt, recording proceeds but captures silence. Grant access in System Settings → Privacy & Security → Microphone, then relaunch.

"App can't be opened" (macOS)

Development builds are unsigned, so Gatekeeper blocks a plain double-click. Right-click the app → OpenOpen. One time only.

Controller not responding

No virtual MIDI port (Windows)

Windows has no native virtual MIDI ports. Install loopMIDI and choose it as the Note Out Port.

Clicks when changing BPM

Tempo-synced clips restart from their loop start with a new stretch when the BPM changes; a brief click at that boundary is expected behavior.