This article includes a list of general references but lacks sufficient corresponding inline citations. (August 2025) |
Real-Time Cmix (RTcmix) is one of the MUSIC-N family of computer music programming languages. RTcmix is descended from the MIX program developed by Paul Lansky at Princeton University in 1978 to perform algorithmic composition using digital audio files on an IBM 3031 mainframe computer. It was renamed Cmix in the 1980s after synthesis functionality was added. Real-time capability was added by David Topper, John Gibson, Brad Garton, and Douglas Scott in the mid-1990s. In addition, support for TCP socket connectivity and interactive control of the scheduler were added, as well as the ability to embed the synthesis engine into other applications such as Max or Pure Data.
Cmix/RTcmix has run on a variety of computer platforms and operating systems, including NeXT, Sun Microsystems, IRIX, Linux, and MacOS. It has always been an open-source project. It is currently developed by a group of computer music researchers both academic (at Princeton University, Columbia University, and Indiana University Bloomington) and private.
RTcmix has a number of unique features when compared with other synthesis and signal processing languages. It has a built-in MINC parser, which enables the user to write C-style code within the score file, making it closer in some respects to later music programming languages such as SuperCollider and Max/MSP than languages such as Csound. It uses a single-script instruction file with synthesis and signal processing routines loaded as shared libraries rather than separate score and instrument files.