Common Music


[cmlogo.gif]


What is Common Music? 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 contol protocols for sound synthesis and display: MIDI, Csound, Common Lisp Music, Music Kit, C Mix, C Music, M4C, RT, Mix and Common Music Notation. Common Music defines an extensive library of compositional tools and provides a public interface through which the composer may easily modify and extend the system. All ports of Common Music provide a text-based music composition editor called Stella. A graphical interface called Capella currently runs only on the Macintosh. See Documentation for more information.

History 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 processors. As choices increased it became clear that composers would be well served by a system that defined 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. Most 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 a 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.

Implementation Common Music is implemented in Common Lisp and CLOS and runs on a variety of computers, including NeXT, Macintosh, SGI, SUN, and i386. Source code and binary images are freely available at several internet sites. In order to compile the source code you need Common Lisp. The best implementations are commercial products but there are also several good public domain implementations available on the Internet. See Lisp Ports and Installing Common Music for more information.

Synthesis Control Each synthesis target is represented as a "syntax" in Common Music. Any combination of syntaxes can be included when the system is built from its sources. The available syntaxes are:
Synthesis Target         Syntax           Works on

C Mix                    CMIX             everywhere
C Music                  CMUSIC           everywhere
Csound                   CSOUND           everywhere
Common Lisp Music        CLM              NeXTstep, IRIX, Mac
Common Music Notation    CMN              everywhere
M4C                      M4C              NeXTstep, Mac
Mix                      SGIMIX           IRIX
MIDI                     MIDI             everywhere
Music Kit                MK               NeXTstep
RT                       RT               NeXTstep, IRIX

Whenever possible, CM sends and receives directly to and from the target. Otherwise, a file can be generated and sent to the target automatically so that the process of producing sound appears seamless and transparent.

All ports of CM support reading level 0 and 1 MIDI files and writing level 0 files. Direct-to-driver MIDI input and output is supported for the following configurations:

Mac OS 7.x    MCL 3.0, 3.9
NeXTstep 3.2  ACL 3.2.1, 4.1; GCL 21.1; CLISP
Windows 3.1   ACL/PC
Documentation
References
Common Music Dictionary
MIDI Implementation
Stella Command Manual Pages
Capella Help Texts
Program Interface

Tutorials
Stella Tutorial
Capella Tutorial
Introduction to Item Streams

Installation
Installing and Building CM
Change History

Examples
Source Examples
Tobias Kunze's CM Repository

Related CM Topics
Introduction to Common Music
Tobias Kunze's CM Papers
Nicky Hind's CM and CLM Tutorials

General Lisp Documentation
Lisp Overview
Common Lisp Hints (Tutorial)
Lisp Style Tips
Lisp Primer
Lisp Tutorial
Common Lisp Resources
Interpreting Lisp
Common Lisp HyperSpec
Common Lisp: the Language (2nd Edition)
Lisp Ports Common Music has been ported to the following Common Lisp implementations:
Allegro Common Lisp (ACL)
A full-featured commercial product available for Unix and 386/Windows. It is CLTL 2, includes a native CLOS and a graphical interface.
Franz Inc., 1995 University Avenue, Berkeley, California 94704 USA
Tel: (510) 548-3600
Fax: (510) 548-8253
www: http://www.franz.com/
e-mail: info@franz.com
News: comp.lang.lisp.franz

CLISP
A public domain Common Lisp available for I386 (DOS and Windows), and Unix (including NeXTstep and SGI Irix). It is mostly CLTL 2, includes a native CLOS, no graphical interface. It is actively supported by its authors.
www: http://sayre.sysc.pdx.edu:8001/clisp
ftp: ftp://ma2s2.mathematik.uni-karlsruhe.de/pub/lisp/clisp

GNU Common Lisp (GCL)
A public domain Common Lisp available for Unix, (including NeXTstep and SGI Irix). It is mostly CLTL 2, uses PCL for CLOS, no graphical interface.
ftp: ftp://math.utexas.edu/pub/gcl/ as gcl.*.*.tgz

Macintosh Common Lisp
A full-featured commercial product available for Macintosh. It is CLTL 2, includes a native CLOS, true multi-processing, and a graphical interface. A native PPC version is scheduled for early 1996.
Digitool, Inc. One Main Street - 7th Floor Cambridge, MA 02142 USA
Tel: 617-441-5000
Fax: 617-576-7680
www: http://www.digitool.com/
ftp: ftp://ftp.digitool.com/pub/
e-mail: info@digitool.com
News: comp.lang.lisp.mcl

Common Music is known to work in the following configurations:
                 NeXT  Mac  SGI  Sun  DOS  Windows

ACL 3.1.2         x
ACL 4.2           x          x    x           x
CLISP 1996-04-17  x          x    x    x      x
GCL 1.1           x               x
MCL 3.0, 3.9            x
Contact Feel free to contact me with any questions or comments. To receive email information about software releases or to track developments in CCRMA's family of Lisp music programs: CM, CLM and CMN please join cmdist@ccrma.stanford.edu by sending your request to cmdist-request@ccrma.stanford.edu.

Rick Taube
School of Music
University of Illinois
Urbana, IL
Fax: 217 355 5780
Vox: 217 244 2684
Net: taube@uiuc.edu