create new tag
, view all tags

Synthesis Tools

Linux Audio > Synthesis Tools


If anything is missing, misleading, or whatever, please correct it (this is a Wiki wink ).



Pure Data (pd)

Home page: http://pd.iem.at/

Getting into it:

1. You should subscribe to pd-list: http://iem.at/mailinglists/pd-list/

2. You should then start with reading Pd's html manual, which many beginners unfortunatly like to skip and then they ask all those questions which are explained in the html manual already. This is a bit annoying of course. wink Better read it first and afterwards ask about the points you didn't fully understand.

The html docs are online here: http://www-crca.ucsd.edu/~msp/Pd_documentation/

3. After you read the html, go through the documentation patches once. They are numbered for a reason: follow that order, and don't skip the "2.control.examples" part just because you want to do audio stuff immediatly. These examples are very important, too, to get the bigger picture. All Pd patches can be edited, changed, copied etc.

Super Collider (SC)

Home page: http://www.audiosynth.com/

Getting into it: There are some really good tutorials around (especially the one by David Cottle (free "postcard"-ware, which means you have to send the author an email to ask for the tutorial as he likes to know where his tutorial is used and for what purposes), but also the one by Mark Polishook (included in the help files)) to learn Super Collider and it has a kind of online-help system, as well as its own emaillist and forum. With the SCUM-addons, you can also make your own GUI's for Super Collider in a nice and easy way.


Home page: http://www.csounds.com/


Home page: http://chuck.cs.princeton.edu/

Getting into it: There are tutorials and documentation on the site. The best way is to try the examples included with the distribution. ChucK is very young - things are getting better. version 1.2 (dracula) recently released!


Home page: http://zynaddsubfx.sourceforge.net/doc_3.html


Home page: http://ccrma.stanford.edu/software/clm/


Home page: http://cec.wustl.edu/~bjl1/nyquist-linux.html

Choosing between pd, SC, csound, ChucK, CLM and Nyquist

(Marije Baalman) If you prefer typing over moving the mouse, then it is better to use a text-based synthesis program. Super Collider is quite flexible, and not as horribly documented as a lot of people may tell.

(Atte André Jensen) I like SC as it gives possibilities to dynamically change a lot of things over time, and you can build really complex algorithms with it. I am sure that in Pd a lot of the same things would be possible, but it needs a quite different kind of programming strategy to do so.

(Frank Barknecht) Actually I think, those are the things that are a bit harder to do in Pd than in a textual language as SC is. As Atte mentioned, for example Pd doesn't do dynamic voice allocation. The design of Pd just works differently in this regard: You have to code every voice you are going to need. That's not hard, as there are language features to help with doing that, but it's definitely not the automatic, batteries included way of Csound or SC in this regard. Also if you intend to change the structure of your synthesis engine while it's running, this probably is better done in SC. Pd however really shines when it comes to glueing stuff together. I know of no other free multimedia software that supports such a wide range of possibilities to connect to "the outside world". For example: There's no need to use the Pd synthesis part at all, you can just write your algorithms in Super Collider and use Pd as a GUI for SC. The advantage is, that Pd also is a RAD-GUI-Designer tool, whereas in SC you need to first write a textual description of your SCUM GUI, if I understand this correctly.

(Ge Wang) ChucK is very young and a lot less complete than Pd, SC, and CSound. It is a unique model of programming time by controlling behavior very precisely (and concurrently) over time. It is aimed for extreme flexibility over time and parallelism, but achieves lower thoroughput than Pd, SC, or CSound.

(Kjetil Matheussen) From the manual: Common Lisp Music is a music synthesis and signal processing package in the Music V family. It provides much the same functionality as Stk, Csound, SuperCollider, PD, CMix, cmusic, and Arctic -- a collection of functions that create and manipulate sounds, aimed primarily at composers (in CLM's case anyway). The instrument builder plugs together these functions (called generators here), along with general programming glue to make computer instruments. These are then called in a note list or through some user interface (provided by Snd, for example). CLM exists in several forms: the original Common Lisp implementation (clm-3.tar.gz), a C version (sndlib.tar.gz), a Scheme version (sndlib.tar.gz with Guile), Ruby (sndlib again but using Ruby), and Forth (sndlib/gfm). The Scheme and Ruby versions are also built into the Snd editor (snd-7.tar.gz). For realtime synthesis with Common Lisp Music, one can use the realtime extension for SND: http://www.notam02.no/arkiv/doc/snd-rt/

(Kjetil Matheussen) Nyquist for Linux is a Linux port of the Unix sound / music synthesis environment Nyquist written by Roger Dannenberg at Carnegie Mellon.


  • () MarcVinyes wrote down the LAU notes from Frank Barknecht, mik, Atte André Jensen, Marije Baalman- 09 Mar 2005
  • If you edit this page: add your name here; move this to the next line; and if you've used a comment marker (your initials in parenthesis), include it before your WikiName.

Revision Comment

  • %DATE% —

Page Ratings

Edit | Attach | Watch | Print version | History: r7 < r6 < r5 < r4 < r3 | Backlinks | Raw View | Raw edit | More topic actions
Topic revision: r7 - 2005-09-26 - TWikiGuest
  • Learn about TWiki  
  • Download TWiki
This site is powered by the TWiki collaboration platform Powered by PerlCopyright © 1999-2017 by the contributing authors. All material on this collaboration platform is the property of the contributing authors.
Ideas, requests, problems regarding WikiLearn? WebBottomBar">Send feedback
See TWiki's New Look