RTcmix Instruments
An RTcmix instrument is a scorefile or interface-object command
that will create or process sound samples.
Every RTcmix instrument is a subclass of the generic
Instrument class.
When an RTcmix instrument is called, it instantiates a unique
copy of itself with the parameters for the specific 'note'
(starting time, duration, etc.) included. This instrument/note
object is then scheduled for execution at the appropriate
starting time.
A number of the RTcmix instruments listed are actually 'meta-packages'
containing several individual instruments (the
STRUM and
METAFLUTE
instruments are good examples of this). In these cases, all of the
instruments are generally derived from the same synthesis or signal-processing
algorithm.
The following RTcmix instruments are included in the RTcmix
distribution (categorized below, alphabetical listing in the frame on the left):
Signal-Processor
Modulators
- AM -- amplitude modulator (signal-processor)
- COMPLIMIT -- audio compressor/limiter
- DECIMATE -- reduce bit-representation of input sound amplitude
- DISTORT -- distortion (clip) signal-procesor
- MOCKBEND -- real-time pitch-shifter with dynamic modification of pitch
- SHAPE -- waveshape an input sound
- STGRANR -- sampling stochastic granular processing
- TRANS -- pitch-shifter
- TRANS3 -- pitch-shifter (3rd-order interpolation)
- TRANSBEND -- pitch-shifter with dynamic modification of pitch
Filters
- BUTTER -- time-varying Butterworth filter (high- or low-pass)
- ELL -- elliptical filter
- EQ -- equalizer instrument (peak/notch, shelving and high/low pass types)
- FIR -- finite impulse response filter
- FILTSWEEP -- time-varying biquad filter (band-pass)
- FOLLOWBUTTER -- envelope (amplitude) follower controlling a Butterworth filter
- HOLO -- stereo FIR filter to perform crosstalk cancellation
- IIR -- infinite impulse response filter
- JFIR -- finite impulse response filter specified by frequency curve
- LPCIN -- Linear Predective Coding (LPC) resynthesis, using input sound through the LPC filters
- MOOGVCF -- dynamic resonant low-pass filter
Delays
- COMBIT -- comb filter
- DEL1 -- single stereo delay
- DELAY -- simple regenerating delay
- FLANGE -- notch or comb "flange" filter
- FREEVERB -- good-sounding reverbator
- JDELAY -- regenerating delay + low-pass filter
- MOVE -- high-quality room simulation program for moving sources
- MROOM -- room simulation program for moving sources
- MULTICOMB -- four comb filters simultaneously
- PANECHO -- stereo "ping-pong" regenerating delays
- PLACE -- high-quality room simulation program for stationary sources
- REV -- three different reverberation algorithms
- REVERBIT -- Schroeder reverb
- ROOM -- delay line room-simulation model
- SROOM -- room simulation for stationary sources
Synthesis
- AMINST -- amplitude modulator (synthesis)
- FMINST -- frequency modulator (synthesis)
- JGRAN -- granular synthesis
- LPCPLAY -- Linear Predective Coding (LPC) resynthesis
- NOISE -- make noise
- SCULPT -- frequency/amplitude pair-based resynthesis
- SGRANR -- stochastic granular synthesis
- WAVETABLE -- wavetable oscillator
- WAVESHAPE -- waveshaping synthesis
- WIGGLE -- wavetable oscillator with frequency modulation and filter
Physical Models
- CLAR -- early clarinet physical model
- MBANDEDWG -- banded waveguide (bars/modal things, struck & bowed) physical model
- MBLOWBOTL -- simple Helmholtz resonator physical model
- MBLOWHOLE -- clarinet physical model with tonehole and register vent
- MBOWED -- bowed string physical model
- MBRASS -- brass instrument physical model
- MCLAR -- another clarinet physical model
- METAFLUTE -- early, extended flute physical model
- MMESH2D -- waveguide model of a 2D mesh
- MMODALBAR -- physical model of struck bars
- MSAXOFONY -- saxophone physical model
- MSHAKERS -- "shaken" instrument physical models
- MSITAR -- sitar physical model
- STRUM -- extended Karplus-Strong ("plucked string") algorithm, with distortion and feedback
Miscellaneous
- FOLLOWER -- simple envelope (amplitude) follower
- FOLLOWGATE -- envelope (amplitude) follower controlling an amplitude gate
- JCHOR -- granulated, random-wait chorus (signal-processor)
- MIX -- simple soundfile mixing command
- PAN -- stereo panning
- REVMIX -- reverse input soundfile
- STEREO -- stereo mixing
There are a few older 'disk-only' sound synthesis and signal-processing
routines that were originally developed for the non-realtime cmix
music programming language from which RTcmix was derived. RTcmix actually
encapsulates all of the earlier cmix code, so that these
programs that have not been ported to RTcmix still work. We include
documentation for these older instruments because many of them
do strange and wonderful things to sound. One of these days one
of us will get around to changing them into RTcmix format.
One of these days...
See the
CMIX documentation
or the relevant sections of
Chris Bailey's CMIX tutorial
for more information on how to use these instruments. Often
this only requires changing rtoutput and rtinput
scorfile commands to output and input commands,
along with the pre-creation of output soundfiles using the
sfcreate
utility.
Disk-based (non-realtime) instruments in the distribution:
- convolve -- multiply the spectra of two sounds
- denoise -- reduce noise of input sound
- gravy -- time/pitch shifter
- mrotate -- time/pitch shifter, dynamic alteration
- rotate -- time/pitch shifter
- sgran -- granular synthesis
- stgran -- granular sampling
- vwavetable -- wavetable oscillator with vibrato
- wah -- moving filter signal-processor
- wahwah -- moving filter signal-processor
- wow -- frequency modulate an input soundfile