Csound vs Pure Data
Both are long-lived, both are free, and both will still be here in ten years. The difference is whether you would rather write your synthesis or draw it.
Side by side
| Csound | Pure Data | |
|---|---|---|
| Interface | Text — orchestra + score | Visual patching |
| Opcode / object library | 1,500+ opcodes | Large, plus externals |
| Offline rendering | First-class | Possible, awkward |
| Real-time interaction | Supported | Natural |
| Embedding | API, plugins, mobile | libpd, embedded systems |
| Learning | Steep but systematic | Immediate, visual |
| Language | Csound | Pd (visual) |
| License | LGPL-2.1 | BSD-3-Clause |
| Platforms | macOS Windows Linux iOS Android Web | macOS Windows Linux |
| First released | ~1986 | 1996 |
| Maintained | Yes | Yes |
Where they actually differ
Reproducibility is Csound’s strength
An orchestra and score render identically every time, which makes Csound well suited to composition where the result must be exact and repeatable. Pd is happiest reacting to input in the moment.
Pd is better for interaction and installation
Patching lends itself to systems that respond to sensors, controllers and people. Combined with libpd for embedding, Pd is the more natural fit for installations and interactive work.
Csound has more DSP, Pd has more immediacy
Csound’s opcode library covers spectral, granular and physical-modelling techniques in unusual depth. Pd gets you to a working sound faster and shows you why it works.
Both embed, in different ways
Csound offers a C API and plugin builds via Cabbage. Pd offers libpd, widely used to put audio inside apps and games. Which is better depends entirely on the host.
Which should you choose?
Choose Csound when…
- You need exact, repeatable renders
- Your technique needs an unusual opcode
- You are building a plugin or embedding a synthesis engine
- You prefer writing to patching
Choose Pure Data when…
- You want to see and manipulate signal flow
- You are building something interactive
- You are working on an installation
- You are teaching synthesis visually