Home | EMS | CMP | Photos | Admissions | Resources | Contact Us  

Current Projects


Polyphonic Pitch Detection and Instrumental Voice Separation

James Beauchamp and Mert Bay. Ongoing project.

DISSCO (Digital Instrument for Sound Synthesis and Composition)

An integrated system for composition and sound synthesis available on sourceFORGE.net. An on-going project, latest version (DISSCO-2.0) May 2013.


SoundMaker web-base interface
Poster Presentation at the 2009 International Computer Music Conference, McGill University, Montreal, Canada.

Less Recent Projects


This is an enhanced version of the sound synthesis program Music 4BF, originally developed at Princeton University. Music 4C (M4C) is coded in C for Unix computers. Instruments are written using the full power of the C language and are referred to in the score by name rather than by number. Files can be referred to by name in the score. Like for most Music N type of programs, the score consists of a series of I statements for specifying note parameters and F cards for specifying stored functions. The result is a sound file which is played back when the execution of an M4C job is completed. The M4C library consists of a package of unit generator routines, which are the building blocks used in designing instruments. M4CTEST is a NeXT application which is used to interactively test new M4C instruments. Part of M4C was re-written to run in parallel using MPI, a message passing library.


DIASS is a M4C instrument for additive synthesis. It was conceived with composers in mind and allows a very large number of partials for each sound as well as minute control over their behaviour. Partials can be exactly tuned or may form an inharmonic spectrum; during the duration of the sound a movement between these two alternatives may occur: out of tune overtones focusing and forming a timbre or a well defined timbre being decomposed into individual sine waves. Due to the very large number of controls and inputs, diassin, a score writer is necessary to facilitate the handling of the instrument. DIASS runs both on the IBM RS-6000 and NeXT computers in CMP and on the IBM SP at Argonne National Laboratory.


Andrew Horner (Hong Kong University of Science and Technology) and James Beauchamp have collaborated on a project to find efficient models for synthesis of musical instrument tones using techniques for matching synthesized results with the signals produced by original instruments. Models which have been used successfully are multiple-carrier FM, multiple-wavetable, extended nonlinear/filter, and spectral envelope synthesis. An important goal is to identify spectrally-related parameters which have a strong correlation to timbral perception and which operate appropriately over wide ranges of pitch and amplitude. Horner and Beauchamp's most recent effort has been to synthesize trumpet tones using time-variant/pitch-variant spectral envelope synthesis. A model has been designed which runs under Music 4C, making it convenient for composers to experiment with.


MP1. Most of Sever Tipei's music has been produced with MP1. First used in 1973, MP1 has preserved its conceptual framework (sounds as events in a vector space) while new features were continuously added and old ones re-written. MP1 has a stochastic layer whose output could be further structured through logical filters (sieves) and patterns (Markov chains). Since all decisions ultimately depend on a set of random numbers, multiple variants of the same piece can be produced by changing the seed for the random number generator. A collection of such multiple realizations of the same data and using the same program forms a composition class or a Manifold Composition.


GrafChord is an interface between MP1 and SCORE. GrafChord reads in an ASCII file containing the description of sounds in a composition produced with MP1 or other composition programs. The input file includes start time, duration, pitch, plus an arbitrary number of other parameters. Its output is also an ASCII file containing instructions for the music printing/editing program SCORE which is commercially available. The information is translated automatically and appears on the printed page of music. At the present time, parametric values other than durations, pitch (including chords) and dynamics still require some editing by hand.

More recently, DISSCO, has acquired the capability of automatic music printing in connection with fomus and lilypondi.


SNDAN is a package of command line programs for time-variant spectrum analysis, parameter graphics, parameter modification, and resynthesis of musical sounds. It can be used for timbre research, synthesis model development, or for construction of musical compositions. The two principal methods of analysis are PVAN, which is a fixed filter bank harmonic analysis method and MQAN, where peaks in the spectrum are tracked and have no inherent restrictions on their number or harmonic nature. FCHECK is a program used to extract pitch versus time data for 1 or 2 voices from an analysis file produced by MQAN. HARMFORMAT is used to separate the harmonics of 1 or 2 voices from an MQAN-generated file. More recently Robert Maher (University of Nebraska) and James Beauchamp have collaborated on a project to detect pitches in rapidly performed musical passages (with and without reverberation) using these techniques. Programs are available for plotting acoustical parameters (e.g., amplitude or frequency vs. time), for modification of these parameters, and for additive synthesis of sounds from analysis output files.



Visual and aural images can be produced from exactly the same data with the help of M4cave and DIASS. A C++ program using the OpenGL garphic libraries, M4cave runs in the CAVE, an immersive, room-size, 3-d environment and on the Immersadesk (a scaled down, 2-D version of the CAVE). A simulator version of it runs on the CMP SGI O2. M4cave has been used to "visualize" musical compositions and, together with DIASS, it is a promissing tool for the analysis of scientific data representing the output of computational experiments.


Music 4C will run with minor modifications on any Unix computer. Most SNDAN programs will run on any Unix computer, but a PostScript viewer is needed for screen graphics, unless Tektronix emulation is used. DISSCO runs ona UNIX/Linux (Ubuntu) computers; MP1, GrafChord, DIASS can be implemented on any Unix computer. M4cave ran on SGI machines (IRIX 6.0 or higher) on which OpenGL reside.

  Home | EMS | CMP | Photos | Admissions | Resources | Contact Us