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 |
| ||
Lisp Ports |
Common Music has been ported to the following Common Lisp
implementations:
| ||
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
| ||