DUET cheat sheet

From DUET · print · built 2026-08-31

Reference

Cheat sheet#

keysdo
F5 / F8play / stop (F7 from cursor)
F2/F4/F11/F12, TABpattern / instruments / mixer / project, next column
Ctrl+V · Ctrl+T · Ctrl+Wgrid view IT/UNITY/POLY/SWM · split · column width
ALT+B / ALT+D / ALT+Lmark block / grow mark (beat→bar→rest→channel→side) / mark channel (twice: side)
ALT+C/Z/P, ALT+SHIFT+Pcopy/cut/paste, translate paste
ALT+Sstamp instrument onto block
ALT+SHIFT+C/Z/V/M/Tsystem clipboard copy/cut/paste (M mix, T types)
Ctrl+M / ALT+F9 / ALT+F10mute (voice) / mute / solo
ALT+Gsync marker
ad $00$64 in FXsend to DELAY/REVERB/CHORUS/DRIVE
Ctrl+E / Ctrl+Bexport mix/stems / bounce block
Ctrl+Uundo history
?key help on any screen

(source: s-duet-docs-grid-and-sides, s-duet-docs-clipboard, s-duet-docs-sounds-mixer-bounce; the full generated key and CLI reference lives un-ingested in raw/duet/docs/keys.md and cli.md.)

Techniques

Hard restart › DUST (DUET) #

  • duet's DUST synth makes hard restart a patch parameter: RESTART OFF / SOFT (gate down for the window) / FULL (gate down and the envelope slammed to zero) over a 1–200 ms window spent before the note; the engine peeks at the next row so the attack, not the restart, lands on the beat (source: s-duet-docs-dust-dusk).

Sound effects and game audio › DUET #

duet takes the same road explicitly: duet_engine_note_on fires an instrument by family — a PCM instrument, or a SID-Wizard instrument from the project's pool routed through a chip — with jam = 1 building a chip on demand, no pattern needed. The docs call it "a game's instruments-as-sound-effects road" (source: s-duet-docs-libduet).

Wavetable programming (waveform / arp tables) › DUSK (DUET) #

  • duet's DUSK plays a P## sample as a row of equal single-cycle frames (frames = sample length / FRAME; "2048 is the Polyend standard") and morphs between the two nearest frames; a slow LFO routed to morph "is the classic wavetable sweep"; ALIAS raw keeps the aliasing on purpose (source: s-duet-docs-dust-dusk).