Navigation:

[cmlogobb.png]

Common Music

News

Read the recent Computer Music Journal Review by Dave Phillips of Notes from the Metalevel.

New features in CM 2.9.1 (CVS HEAD):

About

Common Music (CM) is an object-oriented music composition environment. It produces sound by transforming a high-level representation of musical structure into a variety of control protocols for sound synthesis and display. Common Music defines an extensive library of compositional tools and an API through which the composer can easily modify and extend the system.

Common Music began in 1989 as a response to the proliferation of different audio hardware, software and computers that resulted from the introduction of low cost computers. As choices increased it became clear that composers would be well served by a portable, powerful and consistent interface to the myriad sound rendering possibilities. Work on Common Music began in 1989 when the author was a guest composer at CCRMA, Stanford University. Much of the system as it exists today was implemented at the Institut für Musik und Akustik at the Zentrum für Kunst und Medientechnologie in Karlsruhe, Germany, where the author worked for five years. Common Music continues to evolve today at the University of Illinois at Urbana-Champaign, where the author is now an associate professor of music composition. In 1996 Common Music received First Prize in the computer-assisted composition category at the 1er Concours International de Logiciels Musicaux in Bourges, France.

CM is released under the LLGPL (Lisp Lesser General Public License).

Download

Sources, runtime images and CVS access are all available from the Sourceforge project:

Documentation

Implementation

Common Music can be used with the following synthesis and display applications:

A. Csound (sound synthesis)
B. Fomus (music notation)
C. Common Lisp Music (sound synthesis)
D. Common Music Notation (music notation)
E. MIDI (synthesis control)
F. Midishare (MIDI I/O)
G. Plotter (data visualization)
H. Open Sound Control (synthesis control)
I. Supercollider (sound synthesis)
J. Portmidi (MIDI I/O)
K. RTS and Receive (real time extensions)

Common Music has both Common Lisp and Scheme bindings and works in the following configurations:

  Linux OS X Windows
ACL A–CDE––HI–– A–CDE––HI–– A––DE––HI––
CLISP A––DE––HI–– A––DE––HI–– A––DE––HI––
CMUCL ABCDEFGHIJK ABCDEF–HIJ–  
ECL A––DE––HI–– A––DE––HI–– A––DE––HI––
LispWorks A–––E––HI–– A–––E––HI–– A–––E––HI––
OpenMCL ABCDEFGHIJK
SBCL ABCDE–GHIJK ABCDE––HIJK
 
Gauche A–––E––HI–– A–––E––HI––
Guile A–––E––HI–– A–––E––HI––
STklos A–––E––HI–– A–––E––HI––
Allegro Common Lisp (ACL)
A commercial CL for Linux, Windows and OSX. Includes a native CLOS and a graphical interface.
CLISP
An opensource ANSI CL that runs practically everywhere. Includes a native CLOS, is actively supported.
CMUCL
An opensource ANSI CL for Linux. Includes a very good compiler.
ECL
Embeddable Common Lisp. An opensource ASCI CL that can be embedded in C++ applications. Includes a native CLOS.
Gauche Scheme
An opensource R5RS Scheme with an object system very similar to GOOPS. Quick startup, built-in system interface, native multilingual support.
Guile Scheme
Gnu's opensource Scheme for Linux, OSX, and Cygwin. Includes GOOPS, the Guile object system.
Lispworks
A commercial implementation of ANSI Common Lisp running on Windows, Linux, Mac OS X and UNIX LispWorks is source code compatible across all supported platforms and offers many features including an advanced Common Lisp compiler, runtime system, language extensions and the Common LispWorks IDE.
OpenMCL
An opensource version MCL for OSX and LinuxPPC. Includes a native CLOS, true (native) multi-processing, callbacks, is actively supported.
Steel Bank Common Lisp (SBCL)
An opensource ANSI CL (offshoot from CMUCL) for Linux and OS X. Includes a very good compiler and is actively supported.
STklos
An opensource Scheme. Fast and light with an efficient and powerful object system based on CLOS and an easy connection to GTK+ toolkit.

Common Lisp Links

Scheme Links

Contact

Please contact me with questions or comments or to tell me of any compositions you create using CM. To receive email information about CCRMA's family of Lisp music programs (CM, CLM and CMN) please join the CMDIST mailing list by e-mailing your request to: cmdist-request@ccrma.stanford.edu.

Rick Taube
Associate Professor Composition/Theory
School of Music
University of Illinois
Urbana, IL
Net: taube@uiuc.edu
Fax: +1 (217) 355 5780
Vox: +1 (217) 244 2684