TuttiDAW 코드 작곡TuttiDAW Code guide

Getting started

What TuttiDAW Code is, how a program loops, and how to play your first line.

This page has not been translated yet, so it is shown in English.

TuttiDAW Code is a small language for writing music as text. You describe a pattern (which notes or drum hits happen, and when), and TuttiDAW plays it with its own instruments and effects. The pattern repeats, so a single line is already a loop you can listen to while you change it.

The language is a superset of Strudel: most Strudel code plays here as written, and TuttiDAW adds a few methods of its own for real instruments and effects (see TuttiDAW extensions).

Your first line

Every example in this guide plays: press Play under it on the web page, or paste it into the editor at tuttidaw.com/code. Change a letter while it plays and evaluate again (Ctrl/Cmd+Enter): the change starts on the next bar.

note("c3 e3 g3 c4")
Open in /code

note(...) turns the text between the quotes into notes. Four names share one bar equally, so you hear four quarter notes.

Cycles

The unit of time is the cycle. In TuttiDAW one cycle is one bar. Every pattern is squeezed into its cycle: more steps means shorter steps.

note("c3 e3 g3 c4 e4 g4 c5 g4")
Open in /code

Eight names in one cycle play as eighth notes; the bar stays the same length.

Tempo

setcpm(n) asks for n cycles per minute. Because a cycle is a 4/4 bar, setcpm(30) is 120 BPM and setcpm(25) is 100 BPM.

setcpm(25)
note("c3 e3 g3 c4")
Open in /code

Several voices

A program can play several voices at once. Give each one a label followed by a colon. A label that starts with _ is muted, which is handy while you work on another part.

setcpm(30)
drums: s("bd sd bd sd")
bass: note("c2 c2 g1 bb1")
_lead: note("c4 e4 g4 e4")
Open in /code

$: also starts a voice without naming it. Named voices are better when you take a program into the studio, because each label becomes a track name.

Where code runs

  • The /code page plays a whole program in your browser, without an account. Its Open in TuttiDAW button saves it as a studio project.
  • Pattern Clips in the studio hold code in a MIDI clip; the notes are rendered from the code.
  • Muse, TuttiDAW's AI assistant, can write, explain and fix code for you (see Muse on /code).

Same code, same notes

Randomness in a program is seeded: the same code always gives the same notes, on every computer and every time you open it. That is what lets a project with code be shared and played back exactly.