Real-time Cmix
Encyclopedia
Real-Time Cmix is one of the MUSIC-N
MUSIC-N
MUSIC-N refers to a family of computer music programs and programming languages descended from or influenced by MUSIC, a program written by Max Mathews in 1957 at Bell Labs. MUSIC was the first computer program for generating digital audio waveforms through direct synthesis...

 family of computer music
Computer music
Computer music is a term that was originally used within academia to describe a field of study relating to the applications of computing technology in music composition; particularly that stemming from the Western art music tradition...

 programming languages. RTcmix is descended from the MIX program developed by Paul Lansky
Paul Lansky
Paul Lansky is an American electronic-music or computer-music composer who has been producing works from the 1970s up to the present day .-Biography:...

 at Princeton University
Princeton University
Princeton University is a private research university located in Princeton, New Jersey, United States. The school is one of the eight universities of the Ivy League, and is one of the nine Colonial Colleges founded before the American Revolution....

 in 1978 to perform algorithmic composition
Algorithmic composition
Algorithmic composition is the technique of using algorithms to create music.Algorithms have been used to compose music for centuries; the procedures used to plot voice-leading in Western counterpoint, for example, can often be reduced to algorithmic determinacy...

 using digital audio
Digital audio
Digital audio is sound reproduction using pulse-code modulation and digital signals. Digital audio systems include analog-to-digital conversion , digital-to-analog conversion , digital storage, processing and transmission components...

 soundfiles on a VMS mainframe computer. After synthesis functions were added, the program was renamed Cmix in the 1980s. Real-time capability was added by Brad Garton
Brad Garton
Brad Garton is an American composer and computer musician who is professor of music at Columbia University.He has written, or helped to write, a number of computer music applications, including Real-Time Cmix, music synthesis and signal processing language for real time composition. He received...

 and David Topper in the mid-1990s, with support for TCP
Transmission Control Protocol
The Transmission Control Protocol is one of the core protocols of the Internet Protocol Suite. TCP is one of the two original components of the suite, complementing the Internet Protocol , and therefore the entire suite is commonly referred to as TCP/IP...

 socket connectivity, interactive
Interaction
Interaction is a kind of action that occurs as two or more objects have an effect upon one another. The idea of a two-way effect is essential in the concept of interaction, as opposed to a one-way causal effect...

 control of the scheduler
Scheduling (computing)
In computer science, a scheduling is the method by which threads, processes or data flows are given access to system resources . This is usually done to load balance a system effectively or achieve a target quality of service...

, and object-oriented embedding of the synthesis engine into fully featured applications.

Over the years Cmix/RTcmix has run on a variety of computer platforms and operating systems, including NeXT
NeXT
Next, Inc. was an American computer company headquartered in Redwood City, California, that developed and manufactured a series of computer workstations intended for the higher education and business markets...

, Sun Microsystems
Sun Microsystems
Sun Microsystems, Inc. was a company that sold :computers, computer components, :computer software, and :information technology services. Sun was founded on February 24, 1982...

, IRIX
IRIX
IRIX is a computer operating system developed by Silicon Graphics, Inc. to run natively on their 32- and 64-bit MIPS architecture workstations and servers. It was based on UNIX System V with BSD extensions. IRIX was the first operating system to include the XFS file system.The last major version...

, Linux
Linux
Linux is a Unix-like computer operating system assembled under the model of free and open source software development and distribution. The defining component of any Linux system is the Linux kernel, an operating system kernel first released October 5, 1991 by Linus Torvalds...

, and Mac OS X
Mac OS X
Mac OS X is a series of Unix-based operating systems and graphical user interfaces developed, marketed, and sold by Apple Inc. Since 2002, has been included with all new Macintosh computer systems...

. It is and has always been an open source
Open source
The term open source describes practices in production and development that promote access to the end product's source materials. Some consider open source a philosophy, others consider it a pragmatic methodology...

 project, differentiating it from commercial synthesizers and music software. It is currently developed by a group of computer music researchers at Princeton, Columbia University
Columbia University
Columbia University in the City of New York is a private, Ivy League university in Manhattan, New York City. Columbia is the oldest institution of higher learning in the state of New York, the fifth oldest in the United States, and one of the country's nine Colonial Colleges founded before the...

, and the University of Virginia
University of Virginia
The University of Virginia is a public research university located in Charlottesville, Virginia, United States, founded by Thomas Jefferson...

.

RTcmix has a number of unique (or highly unusual) features when compared with other synthesis and signal processing
Signal processing
Signal processing is an area of systems engineering, electrical engineering and applied mathematics that deals with operations on or analysis of signals, in either discrete or continuous time...

 languages. For one, it has a built-in MINC
MINC
MINC is a data specification language written in the mid-1980s by a Princeton University graduate student named Lars Graf.It contains many of the syntactical capabilities of the C programming language, and can be used to implement simple procedural programs that can be executed by a runtime...

 parser, which enables the user to write C
C (programming language)
C is a general-purpose computer programming language developed between 1969 and 1973 by Dennis Ritchie at the Bell Telephone Laboratories for use with the Unix operating system....

-style code within the score file, extending its innate capability for algorithmic composition and making it closer in some respects to later music software such as SuperCollider
Supercollider
A Supercollider is a high energy particle accelerator. The term may refer to:* Superconducting Super Collider, planned 80 km project in Texas, canceled in 1993...

 and Max/MSP. It uses a single-script instruction file (the score file), and synthesis and signal processing routines (called instruments) exist as compile shared libraries. This is different from MUSIC-N languages such as Csound
Csound
Csound is a computer programming language for dealing with sound, also known as a sound compiler or an audio programming language, or more precisely, a C-based audio DSL. It is called Csound because it is written in C, as opposed to some of its predecessors...

 where the instruments exist in a second file written in a specification language that builds the routines out of simple building blocks (organized as opcode
Opcode
In computer science engineering, an opcode is the portion of a machine language instruction that specifies the operation to be performed. Their specification and format are laid out in the instruction set architecture of the processor in question...

s or unit generator
Unit generator
Unit generators are the basic formal units in many MUSIC-N-style computer music programming languages. They are sometimes called opcodes , though this expression is not accurate in that these are not machine-level instructions.Unit generators form the building blocks for designing synthesis and...

s). RTcmix has similar functionality to Csound and other computer music languages, however, and their shared lineage means that scripts written for one language will be extremely familiar-looking (if not immediately comprehensible) to users of the other language.

External links

The source of this article is wikipedia, the free encyclopedia.  The text of this article is licensed under the GFDL.
 
x
OK