Table of Contents
Tools
A comparative study of several sound processing tools done at LAC2010 tools round-table. The table should represent what the tools are meant for. This way the table can guide a new user to the right tool for their job.
Legend and Keys
use-case | see legend below |
---|---|
dev/user | Taget audience: Users or Developers |
cross-platf. | also runs on platforms other than GNU/Linux |
video | app offers support for video processing/generation |
batch | the tool itself offers batch processing: it supports offline (audio) rendering |
scoring | app offers native support for scored pieces or interprets musical scores. |
livecoding | can be used for livecoding |
embed. | embeddable (ie. app is available in the form of a library) |
GUI | graphical user interface |
---|---|
txt-UI | textual interface |
sync. | supports synchronous (sample-based) processing at fixed samplerate(s) (typically audio and video). |
async. | asynchronous (event-based) processing (typically MIDI, OSC and the like) |
multirate | can process synchronous streams of (audio) data at different samplerates. |
1-sample | can process 1 sample at a time |
functional | functional programming paradigm (stateless) |
exec | code is interpreted or requires compilation |
Use-case Legend
- P: scored Piece
- D: pure DSP
- I: interactive
- A:analysis
Comparison Table
Tool | use case | dev/ user | cross- platf. | video | batch | scoring | live coding | embed. | GUI | txt UI | sync. | async. | multi rate | 1- sample | func- tional | RT | GC | exec |
---|
NOTE: THIS TABLE IS BEST EDITED WITH A MONOSPACE FONT.
name usecase X vid bat sco lvc emb GUI txt snc asy mult 1s fun rt gc exec --!
|CLAM | DAI |dev |(y)|(n)|(y) |(n) |(n)|(y) |(y) |(y) |(y) |(y) |(y) |(y)|(n)|(y) |(n) |compiled |
Pd | IAP | user | (y) | (y) | (y) | (y)* | (y) | (n) | (y) | (n) | (y) | (y) | (n)* | (y) | (n) | (y) | (n) | interpreted |
Faust | D | dev | (y) | (n) | (y) | (n) | (n) | (y) | (y) | (y) | (y) | (n) | (n) 1) | (y) | (y) | (y) | (n) | compiled |
Chuck | IA | user | (y) | (n) | (y) | (n) | (y) | (n) | (n) | (y) | (y) | (y) | (y) | (y) | (n) | (y) | (n) | interpreted |
Csound | PI | user | (y) | (n) | (y) | (y) | (n)2) | (y) | (n)3) | (y) | (y) | (y) | (n) | (n) | (n) | (y) | (n) | interpreted |
SC3 | PI | user | (y) | (y) | (y)? | (y) | (y) | (y)* | (n) | (y) | (y) | (y) | (n) | (n) | (y) | (y) | (y) | interpreted |
Snd-RT | PDI? | user | (y) | (n) | (y)? | (n)? | (y) | (n) | (y) | (y) | (y) | (y) | (y) | (y) | (y) | (y) | (y) | compiled |
Lua-AV | PDI | user | (y) | (y) | (y) | (y) | (y) | (y) | (y) | (y) | (y) | (y) | interpreted/JIT | |||||
Fluxus | user | (y) | (y) | (y) | (y) | (y) | (y) | (y) | interpreted | |||||||||
Gstreamer | dev | (n) | (y) | (n) | compiled | |||||||||||||
CLM | DIA? | user | (y) | (n) | (y)? | (y) | (n) | (y) | (y) | (y) | (y) | (y) | (y) | (y) | (y) | (n) | (y) | both |
nyquist | user | (y) | (n) | (y) | interpreted |
Note: the (*)'s are missing footnotes from the original document that came to be at LAC2010. Attendees of said round-table please clarify.