The Canonical Csound Reference Manual

Barry Vercoe

MIT Media Lab

Other Contributors

Edited by

John ffitch

Jean Piché

Peter Nix

Richard Boulanger

Rasmus Ekman

David Boothe

Kevin Conder

Steven Yi

Michael Gogins

Andrés Cabrera


Table of Contents

Preface
Preface to the Csound Manual
Copyright Notice
Acknowledgements
History of the Canonical Csound Reference Manual
Licenses
Csound and CsoundVST
Manual
Virtual Synthesis Technology
I. Csound 5 User's Guide
Introduction
Recent Developments
New Features in Csound 5
Features of CsoundVST
Csound Links
Installing
Downloading
Configuring
CsoundVST
Using
Real-Time Audio
Windows with ASIO
Using Csound5 with JACK
Csound
The csound Command
CsoundVST
Standalone
Python Scripting
VST Plugin
Building Csound
To Do
II. Csound5 Opcodes
SoundFont Opcodes
DSSI and LADSPA for Csound
Credits
VST for Csound
Credits
Loris Opcodes
Examples
Credits
OSC and Csound
Credits
Python Opcodes
Introduction
Orchestra Syntax
Credits
Mixer Opcodes
String Conversion Opcodes
III. Overview
Introduction
Where to Get Public Csound and the Csound Manual
How to Install Csound
Linux
Macintosh
MS-DOS and Windows 95/NT
Windows 95/98/2000
Other Platforms
The Csound Mailing List
Bug Reports
The Csound Command
Order of Precedence
Description
Command-line Flags
Unified File Format for Orchestras and Scores
Description
Structured Data File Format
Command Line Parameter File
Score File Preprocessing
The Extract Feature
Independent Pre-Processing with Scsort
Syntax of the Orchestra
Directories and Files
Nomenclature
Orchestra Statement Types
Constants and Variables
Expressions
Orchestra Header Statements
Instrument and Opcode Block Statements
Variable Initialization
Named Instruments
Instrument Control
Clock Control
Conditional Values
Duration Control Statements
Introduction to FLTK Widgets and GUI controllers
FLTK Containers
FLTK Valuators
Other FLTK Widgets
Instrument Invocation
Macros
Program Flow Control
Real-time Performance Control
Reinitialization
Sensing and Control
Sub-instrument Control
Time Reading
Function Table Control
Table Queries
Read/Write Operations
Table Selection
Mathematical Operations
Amplitude Converters
Arithmetic and Logic Operations
Mathematical Functions
Opcode Equivalents of Functions
Random Functions
Trigonometric Functions
MIDI Support
Controller Input
Converters
Event Extenders
Generic Input and Output
Note-on/Note-off
MIDI Message Output
Real-time Messages
Slider Banks
Pitch Converters
Functions
Tuning Opcodes
Signal Generators
Additive Synthesis/Resynthesis
Basic Oscillators
Dynamic Spectrum Oscillators
FM Synthesis
Granular Synthesis
Linear and Exponential Generators
Linear Predictive Coding (LPC) Resynthesis
Models and Emulations
Phasors
Random (Noise) Generators
Sample Playback
Scanned Synthesis
Short-time Fourier Transform (STFT) Resynthesis
Table Access
Wave Terrain Synthesis
Waveguide Physical Modeling
Signal Input and Output
File Input and Output
Input
Output
Printing and Display
Sound File Queries
Signal Modifiers
Amplitude Modifiers
Convolution and Morphing
Delay
Envelope Modifiers
Panning and Spatialization
Reverberation
Sample Level Operators
Signal Limiters
Special Effects
Specialized Filters
Standard Filters
Waveguides
Spectral Processing
Non-standard Spectral Processing
Tools for Real-time Spectral Processing
Vectorial Opcodes
Tables of vectors operators
Operations Between a Vectorial and a Scalar Signal
Operations Between two Vectorial Signals
Vectorial Envelope Generators
Limiting and wrapping of vectorial control signals
Vectorial Control-rate Delay Paths
Vectorial Random Signal Generators
Zak Patch System
The Standard Numeric Score
Preprocessing of Standard Scores
Carry
Tempo
Sort
N.B.
Next-P and Previous-P Symbols
Ramping
Score Macros
Multiple File Score
Description
Syntax
Performance
Credits
Evaluation of Expressions
Example
Credits
Score Statements
Sine/Cosine Generators
Line/Exponential Segment Generators
File Access GEN Routines
Numeric Value Access GEN Routines
Window Function GEN Routines
Random Function GEN Routines
Waveshaping GEN Routines
Amplitude Scaling GEN Routines
Mixing GEN Routines
IV. Reference
Orchestra Opcodes and Operators
!= - Determines if one value is not equal to another. != conditional expressions ? :
#define - Defines a macro. #define #defineorchestra macrosorchestra
#include - Includes an external file for processing. #includeorchestra multiple file orchestras
#undef - Un-defines a macro. #undef #undeforchestra macrosorchestra
#ifdef - Conditional reading of code. #ifdef #ifdeforchestra
$NAME - Calls a defined macro. $NAME $NAMEorchestra macrosorchestra
% - Modulus operator. %
&& - Logical AND operator. &&
> - Determines if one value is greater than another. > conditional expressions ? :
>= - Determines if one value is greater than or equal to another. >= conditional expressions ? :
< - Determines if one value is less than another. < conditional expressions ? :
<= - Determines if one value is less than or equal to another. <= conditional expressions ? :
* - Multiplication operator. *
+ - Addition operator +
- - Subtraction operator. -
/ - Division operator. /
= - Performs a simple assignment. =
== - Compares two values for equality. == conditional expressions ? :
^ - Power of operator. ^
round - Returns the integer value nearest to x ; if the fractional part of x is exactly 0.5, the direction of rounding is undefined. round
|| - Logical OR operator. ||
0dbfs - Sets the value of 0 decibels using full scale amplitude. 0dbfs
& - Bitwise AND operator. &
| - Bitwise OR operator. |
¬ - Bitwise NOT operator. ¬
# - Bitwise NON EQUIVALENCE operator. #
a - Converts a k-rate parameter to an a-rate value with interpolation. a
abetarand - Deprecated. abetarand
abexprnd - Deprecated. abexprnd
abs - Returns an absolute value. abs
acauchy - Deprecated. acauchy
active - Returns the number of active instances of an instrument. active
adsr - Calculates the classical ADSR envelope using linear segments. adsr
adsyn - Output is an additive set of individually controlled sinusoids, using an oscillator bank. adsyn
adsynt - Performs additive synthesis with an arbitrary number of partials, not necessarily harmonic. adsynt
adsynt2 - Performs additive synthesis with an arbitrary number of partials -not necessarily harmonic- with interpolation. adsynt2
aexprand - Deprecated. aexprand
aftouch - Get the current after-touch value for this channel. aftouch
agauss - Deprecated. agauss
agogobel - Deprecated. agogobel
alinrand - Deprecated. alinrand
alpass - Reverberates an input signal with a flat frequency response. alpass
ampdb - Returns the amplitude equivalent of the decibel value x. ampdb
ampdbfs - Returns the amplitude equivalent of the decibel value x, which is relative to full scale amplitude. ampdbfs
ampmidi - Get the velocity of the current MIDI event. ampmidi
apcauchy - Deprecated. apcauchy
apoisson - Deprecated. apoisson
apow - Deprecated. apow
areson - A notch filter whose transfer functions are the complements of the reson opcode. areson
aresonk - A notch filter whose transfer functions are the complements of the reson opcode. aresonk
atone - A notch filter whose transfer functions are the complements of the tone opcode. atone
atonek - A notch filter whose transfer functions are the complements of the tone opcode. atonek
atonex - Emulates a stack of filters using the atone opcode. atonex
atrirand - Deprecated. atrirand
aunirand - Deprecated. aunirand
aweibull - Deprecated. aweibull
babo - A physical model reverberator. babo
balance - Adjust one audio signal according to the values of another. balance
bamboo - Semi-physical model of a bamboo sound. bamboo
bbcutm - Generates breakbeat-style cut-ups of a mono audio stream. bbcutm
bbcuts - Generates breakbeat-style cut-ups of a stereo audio stream. bbcuts
betarand - Beta distribution random number generator (positive values only). betarand x-class noise generators
bexprnd - Exponential distribution random number generator. bexprnd x-class noise generators
bformenc - Codes a signal into the ambisonic B format bformenc
bformdec - Decodes an ambisonic B format signal bformdec
binit - PVS tracks to amplitude+frequency conversion. binit
biquad - A sweepable general purpose biquadratic digital filter. biquad
biquada - A sweepable general purpose biquadratic digital filter with a-rate parameters. biquada
birnd - Returns a random number in a bi-polar range. birnd
bqrez - A second-order multi-mode filter. bqrez
butbp - Same as the butterbp opcode. butbp
butbr - Same as the butterbr opcode. butbr
buthp - Same as the butterhp opcode. buthp
butlp - Same as the butterlp opcode. butlp
butterbp - A band-pass Butterworth filter. butterbp
butterbr - A band-reject Butterworth filter. butterbr
butterhp - A high-pass Butterworth filter. butterhp
butterlp - A low-pass Butterworth filter. butterlp
button - Sense on-screen controls. button
buzz - Output is a set of harmonically related sine partials. buzz
cabasa - Semi-physical model of a cabasa sound. cabasa
cauchy - Cauchy distribution random number generator. cauchy x-class noise generators
ceil - Returns the smallest integer not less than x ceil
cent - Calculates a factor to raise/lower a frequency by a given amount of cents. cent
cggoto - Conditionally transfer control on every pass. cggoto
chanctrl - Get the current value of a MIDI channel controller. chanctrl
changed - k-rate signal change detector. changed
chani - Reads data from the software bus chani
chano - Send data to the outwards software bus chano
checkbox - Sense on-screen controls. checkbox
chn - Declare a channel of the named software bus. chn
chnclear - Clears an audio output channel of the named software bus. chnclear
chnexport - Export a global variable as a channel of the bus. chnexport
chnget - Reads data from the software bus. chnget
chnmix - Writes audio data to the named software bus, mixing to the previous output. chnmix
chnparams - Query parameters of a channel. chnparams
chnset - Writes data to the named software bus. chnset
cigoto - Conditionally transfer control during the i-time pass. cigoto
ckgoto - Conditionally transfer control during the p-time passes. ckgoto
clear - Zeroes a list of audio signals. clear
clfilt - Implements low-pass and high-pass filters of different styles. clfilt
clip - Clips a signal to a predefined limit. clip
clock - Deprecated. clock
clockoff - Stops one of a number of internal clocks. clockoff
clockon - Starts one of a number of internal clocks. clockon
cngoto - Transfers control on every pass when a condition is not true. cngoto
comb - Reverberates an input signal with a colored frequency response. comb
control - Configurable slider controls for realtime user input. control
convle - Same as the convolve opcode. convle
convolve - Convolves a signal and an impulse response. convolve
cos - Performs a cosine function. cos
cosh - Performs a hyperbolic cosine function. cosh
cosinv - Performs a arccosine function. cosinv
cps2pch - Converts a pitch-class value into cycles-per-second for equal divisions of the octave. cps2pch
cpsmidi - Get the note number of the current MIDI event, expressed in cycles-per-second. cpsmidi
cpsmidib - Get the note number of the current MIDI event and modify it by the current pitch-bend value, express it in cycles-per-second. cpsmidib
cpsoct - Converts an octave-point-decimal value to cycles-per-second. cpsoct
cpspch - Converts a pitch-class value to cycles-per-second. cpspch
cpstmid - Get a MIDI note number (allows customized micro-tuning scales). cpstmid
cpstun - Returns micro-tuning values at k-rate. cpstun
cpstuni - Returns micro-tuning values at init-rate. cpstuni
cpsxpch - Converts a pitch-class value into cycles-per-second (Hz) for equal divisions of any interval. cpsxpch
cpuprc - Control allocation of cpu resources on a per-instrument basis, to optimize realtime output. cpuprc
cross2 - Cross synthesis using FFT's. cross2
crunch - Semi-physical model of a crunch sound. crunch
ctrl14 - Allows a floating-point 14-bit MIDI signal scaled with a minimum and a maximum range. ctrl14
ctrl21 - Allows a floating-point 21-bit MIDI signal scaled with a minimum and a maximum range. ctrl21
ctrl7 - Allows a floating-point 7-bit MIDI signal scaled with a minimum and a maximum range. ctrl7
ctrlinit - Sets the initial values for a set of MIDI controllers. ctrlinit
cuserrnd - Continuous USER-defined-distribution RaNDom generator. cuserrnd
dam - A dynamic compressor/expander. dam
db - Returns the amplitude equivalent for a given decibel amount. db
dbamp - Returns the decibel equivalent of the raw amplitude x. dbamp
dbfsamp - Returns the decibel equivalent of the raw amplitude x, relative to full scale amplitude. dbfsamp
dcblock - A DC blocking filter. dcblock
dconv - A direct convolution opcode. dconv
delay - Delays an input signal by some time interval. delay
delay1 - Delays an input signal by one sample. delay1
delayk - Delays an input signal by some time interval. delayk
delayr - Reads from an automatically established digital delay line. delayr
delayw - Writes the audio signal to a digital delay line. delayw
deltap - Taps a delay line at variable offset times. deltap
deltap3 - Taps a delay line at variable offset times, uses cubic interpolation. deltape
deltapi - Taps a delay line at variable offset times, uses interpolation. deltapi
deltapn - Taps a delay line at variable offset times. deltapn
deltapx - Read to or write from a delay line with interpolation. deltapx
deltapxw - Mixes the input signal to a delay line. deltapxw
denorm - Mixes low level noise to a list of a-rate signals denorm
diff - Modify a signal by differentiation. diff
diskin - Reads audio data from an external device or stream and can alter its pitch. diskin
diskin2 - Reads audio data from a file, and can alter its pitch using one of several available interpolation types, as well as convert the sample rate to match the orchestra sr setting. diskin2
dispfft - Displays the Fourier Transform of an audio or control signal. dispfft
display - Displays the audio or control signals as an amplitude vs. time graph. display
distort1 - Modified hyperbolic tangent distortion. distort1
divz - Safely divides two numbers. divz
downsamp - Modify a signal by down-sampling. downsamp
dripwater - Semi-physical model of a water drop. dripwater
dssiactivate - Activates or deactivates a DSSI or LADSPA plugin. dssiactivate
dssiaudio - Processes audio using a LADSPA or DSSI plugin. dssiaudio
dssictls - Send control information to a LADSPA or DSSI plugin. dssictls
dssiinit - Loads a DSSI or LADSPA plugin. dssiinit
dssilist - Lists all available DSSI and LADSPA plugins. dssilist
dumpk - Periodically writes an orchestra control-signal value to an external file. dumpk
dumpk2 - Periodically writes two orchestra control-signal values to an external file. dumpk2
dumpk3 - Periodically writes three orchestra control-signal values to an external file. dumpk3
dumpk4 - Periodically writes four orchestra control-signal values to an external file. dumpk4
duserrnd - Discrete USER-defined-distribution RaNDom generator. duserrnd
else - Executes a block of code when an "if...then" condition is false. else
elseif - Defines another "if...then" condition when a "if...then" condition is false. elseif
endif - Closes a block of code that begins with an "if...then" statement. endif
endin - Ends the current instrument block. endin
endop - Marks the end of an user-defined opcode block. endop
envlpx - Applies an envelope consisting of 3 segments. envlpx
envlpxr - The envlpx opcode with a final release segment. envlpxr
event - Generates a score event from an instrument. event
event_i - Generates a score event from an instrument. event_i
exitnow - Exit csound as fast as possible, with no cleaning up. exitnow
exp - Returns e raised to the x-th power. exp
expon - Trace an exponential curve between specified points. expon
exprand - Exponential distribution random number generator (positive values only). exprand x-class noise generators
expseg - Trace a series of exponential segments between specified points. expseg
expsega - An exponential segment generator operating at a-rate. expsega
expsegr - Trace a series of exponential segments between specified points including a release segment. expsegr
filelen - Returns the length of a sound file. filelen
filenchnls - Returns the number of channels in a sound file. filenchnls
filepeak - Returns the peak absolute value of a sound file. filepeak
filesr - Returns the sample rate of a sound file. filesr
filter2 - Performs filtering using a transposed form-II digital filter lattice with no time-varying control. filter2
fin - Read signals from a file at a-rate. fin
fini - Read signals from a file at i-rate. fini
fink - Read signals from a file at k-rate. fink
fiopen - Opens a file in a specific mode. fiopen
flanger - A user controlled flanger. flanger
flashtxt - Allows text to be displayed from instruments like sliders flashtxt
FLbox - A FLTK widget that displays text inside of a box. FLbox
FLbutBank - A FLTK widget opcode that creates a bank of buttons. FLbutBank
FLbutton - A FLTK widget opcode that creates a button. FLbutton
FLcolor - A FLTK opcode that sets the primary colors. FLcolor
FLcolor2 - A FLTK opcode that sets the secondary (selection) color. FLcolor2
FLcount - A FLTK widget opcode that creates a counter. FLcount
FLgetsnap - Retrieves a previously stored FLTK snapshot. FLgetsnap
FLgroup - A FLTK container opcode that groups child widgets. FLgroup
FLgroupEnd - Marks the end of a group of FLTK child widgets. FLgroupEnd
FLgroupEnd - Marks the end of a group of FLTK child widgets. FLgroup_end
FLhide - Hides the target FLTK widget. FLhide
FLjoy - A FLTK opcode that acts like a joystick. FLjoy
FLkeyb - Experimental, no documentation exists. May be deprecated in future versions. FLkeyb
FLknob - A FLTK widget opcode that creates a knob. FLknob
FLlabel - A FLTK opcode that modifies the appearance of a text label. FLlabel
FLloadsnap - Loads all snapshots into the memory bank of the current orchestra. FLloadsnap
flooper - Function-table-based crossfading looper. flooper
floor - Returns the largest integer not greater than x floor
FLpack - Provides the functionality of compressing and aligning FLTK widgets. FLpack
FLpackEnd - Marks the end of a group of compressed or aligned FLTK widgets. FLpackEnd
FLpackEnd - Marks the end of a group of compressed or aligned FLTK widgets. FLpack_end
FLpanel - Creates a window that contains FLTK widgets. FLpanel
FLpanelEnd - Marks the end of a group of FLTK widgets contained inside of a window (panel). FLpanelEnd
FLpanel_end - Marks the end of a group of FLTK widgets contained inside of a window (panel). FLpanel_end
FLprintk - A FLTK opcode that prints a k-rate value at specified intervals. FLprintk
FLprintk2 - A FLTK opcode that prints a new value every time a control-rate variable changes. FLprintk2
FLroller - A FLTK widget that creates a transversal knob. FLroller
FLrun - Starts the FLTK widget thread. FLrun
FLsavesnap - Saves all snapshots currently created into a file. FLsavesnap
FLscroll - A FLTK opcode that adds scroll bars to an area. FLscroll
FLscrollEnd - A FLTK opcode that marks the end of an area with scrollbars. FLscrollEnd
FLscroll_end - A FLTK opcode that marks the end of an area with scrollbars. FLscrollEnd
FLsetAlign - Sets the text alignment of a label of a FLTK widget. FLsetAlign
FLsetBox - Sets the appearance of a box surrounding a FLTK widget. FLsetBox
FLsetColor - Sets the primary color of a FLTK widget. FLsetColor
FLsetColor2 - Sets the secondary (or selection) color of a FLTK widget. FLsetColor2
FLsetFont - Sets the font type of a FLTK widget. FLsetFont
FLsetPosition - Sets the position of a FLTK widget. FLsetPosition
FLsetSize - Resizes a FLTK widget. FLsetSize
FLsetsnap - Stores the current status of all FLTK valuators into a snapshot location. FLsetsnap
FLsetText - Sets the label of a FLTK widget. FLsetText
FLsetTextColor - Sets the color of the text label of a FLTK widget. FLsetTextColor
FLsetTextSize - Sets the size of the text label of a FLTK widget. FLsetTextSize
FLsetTextType - Sets some font attributes of the text label of a FLTK widget. FLsetTextType
FLsetVal_i - Sets the value of a FLTK valuator to a number provided by the user. FLsetVal_i
FLsetVal - Sets the value of a FLTK valuator at control-rate. FLsetVal
FLshow - Restores the visibility of a previously hidden FLTK widget. FLshow
FLslidBnk - A FLTK widget containing a bank of horizontal sliders. FLslidBnk
FLslider - Puts a slider into the corresponding FLTK container. FLslider
FLtabs - Creates a tabbed FLTK interface. FLtabs
FLtabsEnd - Marks the end of a tabbed FLTK interface. FLtabsEnd
FLtabs_end - Marks the end of a tabbed FLTK interface. FLtabs)end
FLtext - A FLTK widget opcode that creates a textbox. FLtext
FLupdate - Same as the FLrun opcode. FLupdate
fluidAllOut - Collects all audio from all Fluidsynth engines in a performance fluidAllOut
fluidCCi - Sends a MIDI controller data message to fluid. fluidCCi
fluidCCk - Sends a MIDI controller data message to fluid. fluidCCk
fluidControl - Sends MIDI note on, note off, and other messages to a SoundFont preset. fluidControl
fluidEngine - Instantiates a fluidsynth engine. fluidEngine
fluidLoad - Loads a SoundFont into a fluidEngine, optionally listing SoundFont contents. fluidLoad
fluidNote - Plays a note on a channel in a fluidSynth engine. fluidNote
fluidOut - Outputs sound from a given fluidEngine fluidOut
fluidProgramSelect - Assigns a preset from a SoundFont to a channel on a fluidEngine. fluidProgramSelect
FLvalue - Shows the current value of a FLTK valuator. FLvalue
fmb3 - Uses FM synthesis to create a Hammond B3 organ sound. fmb3
fmbell - Uses FM synthesis to create a tublar bell sound. fmbell
fmmetal - Uses FM synthesis to create a Heavy Metal sound. fmmetal
fmpercfl - Uses FM synthesis to create a percussive flute sound. fmpercfl
fmrhode - Uses FM synthesis to create a Fender Rhodes electric piano sound. fmrhode
fmvoice - FM Singing Voice Synthesis fmvoice
fmwurlie - Uses FM synthesis to create a Wurlitzer electric piano sound. fmwurlie
fof - Produces sinusoid bursts useful for formant and granular synthesis. fof
fof2 - Produces sinusoid bursts including k-rate incremental indexing with each successive burst. fof2
fofilter - Formant filter. fofilter
fog - Audio output is a succession of grains derived from data in a stored function table fog
fold - Adds artificial foldover to an audio signal. fold
follow - Envelope follower unit generator. follow
follow2 - Another controllable envelope extractor. follow2
foscil - A basic frequency modulated oscillator. foscil
foscili - Basic frequency modulated oscillator with linear interpolation. foscili
fout - Outputs a-rate signals to an arbitrary number of channels. fout
fouti - Outputs i-rate signals of an arbitrary number of channels to a specified file. fouti
foutir - Outputs i-rate signals from an arbitrary number of channels to a specified file. foutir
foutk - Outputs k-rate signals of an arbitrary number of channels to a specified file, in raw (headerless) format. foutk
fprintks - Similar to printks but prints to a file. fprintks
fprints - Similar to prints but prints to a file. fprints
frac - Returns the fractional part of a decimal number. frac
freeverb - Opcode version of Jezar's Freeverb freeverb
ftchnls - Returns the number of channels in a stored function table. ftchnls
ftconv - Low latency multichannel convolution, using a function table as impulse response source. ftconv
ftfree - Deletes function table. ftfree
ftgen - Generate a score function table from within the orchestra. ftgen
ftgentmp - Generate a score function table from within the orchestra, which is deleted at the end of the note. ftgentmp
ftlen - Returns the size of a stored function table. ftlen
ftload - Load a set of previously-allocated tables from a file. ftload
ftloadk - Load a set of previously-allocated tables from a file. ftloadk
ftlptim - Returns the loop segment start-time of a stored function table number. ftlptim
ftmorf - Morphs between multiple ftables as specified in a list. ftmorf
ftsave - Save a set of previously-allocated tables to a file. ftsave
ftsavek - Save a set of previously-allocated tables to a file. ftsavek
ftsr - Returns the sampling-rate of a stored function table. ftsr
gain - Adjusts the amplitude audio signal according to a root-mean-square value. gain
gauss - Gaussian distribution random number generator. gauss x-class noise generators
gbuzz - Output is a set of harmonically related cosine partials. gbuzz
gogobel - Audio output is a tone related to the striking of a cow bell or similar. gogobel
goto - Transfer control on every pass. goto
grain - Generates granular synthesis textures. grain
grain2 - Easy-to-use granular synthesis texture generator. grain2
grain3 - Generate granular synthesis textures with more user control. grain3
granule - A more complex granular synthesis texture generator. granule
guiro - Semi-physical model of a guiro sound. guiro
harmon - Analyze an audio input and generate harmonizing voices in synchrony. harmon
hilbert - A Hilbert transformer. hilbert
hrtfer - Creates 3D audio for two speakers. hrtfer
hsboscil - An oscillator which takes tonality and brightness as arguments. hsboscil
i - Returns an init-type equivalent of a k-rate argument. i
ibetarand - Deprecated. ibetarand
ibexprnd - Deprecated. ibexprnd
icauchy - Deprecated. icauchy
ictrl14 - Deprecated. ictrl14
ictrl21 - Deprecated. ictrl21
ictrl7 - Deprecated. ictrl7
iexprand - Deprecated. iexprand
if - Branches conditionally at initialization or during performance time. if
igauss - Deprecated. igauss
igoto - Transfer control during the i-time pass. igoto
ihold - Creates a held note. ihold
ilinrand - Deprecated. ilinrand
imidic14 - Deprecated. imidic14
imidic21 - Deprecated. imidic21
imidic7 - Deprecated. imidic7
in - Reads mono audio data from an external device or stream. in
in32 - Reads a 32-channel audio signal from an external device or stream. in32
inch - Reads from a numbered channel in an external audio signal or stream. inch
inh - Reads six-channel audio data from an external device or stream. inh
init - Puts the value of the i-time expression into a k- or a-rate variable. init
initc14 - Initializes the controllers used to create a 14-bit MIDI value. initc14
initc21 - Initializes the controllers used to create a 21-bit MIDI value. initc21
initc7 - Initializes the controller used to create a 7-bit MIDI value. initc7
ino - Reads eight-channel audio data from an external device or stream. ino
inq - Reads quad audio data from an external device or stream. inq
ins - Reads stereo audio data from an external device or stream. ins
instimek - Deprecated. instimek
instimes - Deprecated. instimes
instr - Starts an instrument block. instr
int - Extracts an integer from a decimal number. int
integ - Modify a signal by integration. integ
interp - Converts a control signal to an audio signal using linear interpolation. interp
invalue - Reads a k-rate signal from a user-defined channel. invalue
inx - Reads a 16-channel audio signal from an external device or stream. inx
inz - Reads multi-channel audio samples into a ZAK array from an external device or stream. inz
ioff - Deprecated. ioff
ion - Deprecated. ion
iondur - Deprecated. iondur
iondur2 - Deprecated. iondur2
ioutat - Deprecated. ioutat
ioutc - Deprecated. ioutc
ioutc14 - Deprecated. ioutc14
ioutpat - Deprecated. ioutpat
ioutpb - Deprecated. ioutpb
ioutpc - Deprecated. ioutpc
ipcauchy - Deprecated. ipcauchy
ipoisson - Deprecated. ipoisson
ipow - Deprecated. ipow
is16b14 - Deprecated. is16b14
is32b14 - Deprecated. is32b14
islider16 - Deprecated. islider16
islider32 - Deprecated. islider32
islider64 - Deprecated. islider64
islider8 - Deprecated. islider8
itablecopy - Deprecated. itablecopy
itablegpw - Deprecated. itablegpw
itablemix - Deprecated. itablemix
itablew - Deprecated. itablew
itrirand - Deprecated. itrirand
iunirand - Deprecated. iunirand
iweibull - Deprecated. iweibull
jitter - Generates a segmented line whose segments are randomly generated. jitter
jitter2 - Generates a segmented line with user-controllable random segments. jitter2
jspline - A jitter-spline generator. jspline
k - Converts a i-rate parameter to an k-rate value. a
kbetarand - Deprecated. kbetarand
kbexprnd - Deprecated. kbexprnd
kcauchy - Deprecated. kcauchy
kdump - Deprecated. kdump
kdump2 - Deprecated. kdump2
kdump3 - Deprecated. kdump3
kdump4 - Deprecated. kdump4
kexprand - Deprecated. kexprand
kfilter2 - Deprecated. kfilter2
kgauss - Deprecated. kgauss
kgoto - Transfer control during the p-time passes. kgoto
klinrand - Deprecated. klinrand
kon - Deprecated. kon
koutat - Deprecated. koutat
koutc - Deprecated. koutc
koutc14 - Deprecated. koutc14
koutpat - Deprecated. koutpat
koutpb - Deprecated. koutpb
koutpc - Deprecated. koutpc
kpcauchy - Deprecated. kpcauchy
kpoisson - Deprecated. kpoisson
kpow - Deprecated. kpow
kr - Sets the control rate. kr
kread - Deprecated. kread
kread2 - Deprecated. kread2
kread3 - Deprecated. kread3
kread4 - Deprecated. kread4
ksmps - Sets the number of samples in a control period. ksmps
ktableseg - Same as the tableseg opcode. ktableseg
ktrirand - Deprecated. ktrirand
kunirand - Deprecated. kunirand
kweibull - Deprecated. kweibull
lfo - A low frequency oscillator of various shapes. lfo
limit - Sets the lower and upper limits of the value it processes. limit
line - Trace a straight line between specified points. line
linen - Applies a straight line rise and decay pattern to an input amp signal. linen
linenr - The linen opcode extended with a final release segment. linenr
lineto - Generate glissandos starting from a control signal. lineto
linrand - Linear distribution random number generator (positive values only). linrand x-class noise generators
linseg - Trace a series of line segments between specified points. linseg
linsegr - Trace a series of line segments between specified points including a release segment. linsegr
locsend - Distributes the audio signals of a previous locsig opcode. locsend
locsig - Takes and input signal and distributes between 2 or 4 channels. locsig
log - Returns a natural log. log
log10 - Returns a base 10 log. log10
logbtwo - Performs a logarithmic base two calculation. logbtwo
loop - Four looping constructions. loop
loopseg - Generate control signal consisting of linear segments delimited by two or more specified points. loopseg
loopsegp - Control signals based on linear segments. loopsegp
lorenz - Implements the Lorenz system of equations. lorenz
lorisread - Imports a set of bandwidth-enhanced partials from a SDIF-format data file, applying control-rate frequency, amplitude, and bandwidth scaling envelopes, and stores the modified partials in memory. lorisread
lorismorph - Morphs two stored sets of bandwidth-enhanced partials and stores a new set of partials representing the morphed sound. The morph is performed by linearly interpolating the parameter envelopes (frequency, amplitude, and bandwidth, or noisiness) of the bandwidth-enhanced partials according to control-rate frequency, amplitude, and bandwidth morphing functions.lorismorph
lorisplay - renders a stored set of bandwidth-enhanced partials using the method of Bandwidth-Enhanced Additive Synthesis implemented in the Loris software, applying control-rate frequency, amplitude, and bandwidth scaling envelopes.lorisplay
loscil - Read sampled sound from a table. loscil
loscil3 - Read sampled sound from a table using cubic interpolation. loscil3
lowpass2 - A resonant lowpass filter. lowpass2
lowres - Another resonant lowpass filter. lowres
lowresx - Simulates layers of serially connected resonant lowpass filters. lowresx
lpf18 - A 3-pole sweepable resonant lowpass filter. lpf18
lpfreson - Resynthesises a signal from the data passed internally by a previous lpread, applying formant shifting. lpfreson
lphasor - Generates a table index for sample playback lphasor
lpinterp - Computes a new set of poles from the interpolation between two analysis. lpinterp
lposcil - Read sampled sound from a table with optional looping and high precision. lposcil
lposcil3 - Read sampled sound from a table with high precision and cubic interpolation. lposcil3
lpread - Reads a control file of time-ordered information frames. lpread
lpreson - Resynthesises a signal from the data passed internally by a previous lpread. lpreson
lpshold - Generate control signal consisting of held segments. lpshold
lpsholdp - Control signals based on held segments. lpsholdp
lpslot - Selects the slot to be use by further lp opcodes. lpslot
mac - Multiplies and accumulates a- and k-rate signals. mac
maca - Multiply and accumulate a-rate signals only. maca
madsr - Calculates the classical ADSR envelope using the linsegr mechanism. madsr
mandel - Mandelbrot set mandel
mandol - An emulation of a mandolin. mandol
marimba - Physical model related to the striking of a wooden block. marimba
massign - Assigns a MIDI channel number to a Csound instrument. massign
max - Produces a signal that is the maximum of any number of input signals. max
maxabs - Produces a signal that is the maximum of the absolute values of any number of input signals. maxabs
maxabsaccum - Accumulates the maximum of the absolute values of audio signals. maxabsaccum
maxaccum - Accumulates the maximum value of audio signals. maxaccum
maxalloc - Limits the number of allocations of an instrument. maxalloc
max_k - Local maximum (or minimum) value of an incoming asig signal max_k
mclock - Sends a MIDI CLOCK message. mclock
mdelay - A MIDI delay opcode. mdelay
metro - Trigger Metronome metro
midic14 - Allows a floating-point 14-bit MIDI signal scaled with a minimum and a maximum range. midic14
midic21 - Allows a floating-point 21-bit MIDI signal scaled with a minimum and a maximum range. midic21
midic7 - Allows a floating-point 7-bit MIDI signal scaled with a minimum and a maximum range. midic7
midichannelaftertouch - Gets a MIDI channel's aftertouch value. midichannelaftertouch
midichn - Returns the MIDI channel number from which the note was activated. midichn
midicontrolchange - Gets a MIDI control change value. midicontrolchange
midictrl - Get the current value (0-127) of a specified MIDI controller. midictrl
mididefault - Changes values, depending on MIDI activation. mididefault
midiin - Returns a generic MIDI message received by the MIDI IN port. midiin
midinoteoff - Gets a MIDI noteoff value. midinoteoff
midinoteoncps - Gets a MIDI note number as a cycles-per-second frequency. midinoteoncps
midinoteonkey - Gets a MIDI note number value. midinoteonkey
midinoteonoct - Gets a MIDI note number value as octave-point-decimal value. midinoteonoct
midinoteonpch - Gets a MIDI note number as a pitch-class value. midinoteonpch
midion - Plays MIDI notes. midion
midion2 - Sends noteon and noteoff messages to the MIDI OUT port. midion2
midiout - Sends a generic MIDI message to the MIDI OUT port. midiout
midipitchbend - Gets a MIDI pitchbend value. midipitchbend
midipolyaftertouch - Gets a MIDI polyphonic aftertouch value. midipolyaftertouch
midiprogramchange - Gets a MIDI program change value. midiprogramchange
miditempo - Returns the current tempo at k-rate, of either the MIDI file (if available) or the score miditempo
min - Produces a signal that is the minimum of any number of input signals. min
minabs - Produces a signal that is the minimum of the absolute values of any number of input signals. minabs
minabsaccum - Accumulates the minimum of the absolute values of audio signals. minabsaccum
minaccum - Accumulates the minimum value of audio signals. minaccum
mirror - Reflects the signal that exceeds the low and high thresholds. mirror
MixerSetLevel - Sets the level of a send to a buss. MixerSetLevel
MixerGetLevel - Gets the level of a send to a buss. MixerGetLevel
MixerSend - Mixes an arate signal into a channel of a buss. MixerSend
MixerReceive - Receives an arate signal from a channel of a buss. MixerReceive
MixerClear - Resets all channels of a buss to 0. MixerClear
moog - An emulation of a mini-Moog synthesizer. moog
moogladder - Moog ladder lowpass filter. moogladder
moogvcf - A digital emulation of the Moog diode ladder filter configuration. moogvcf
moscil - Sends a stream of the MIDI notes. moscil
mpulse - Generates a set of impulses. mpulse
mrtmsg - Send system real-time messages to the MIDI OUT port. mrtmsg
multitap - Multitap delay line implementation. multitap
mute - Mutes/unmutes new instances of a given instrument. mute
mxadsr - Calculates the classical ADSR envelope using the expsegr mechanism. mxadsr
nchnls - Sets the number of channels of audio output. nchnls
nestedap - Three different nested all-pass filters. nestedap
nlfilt - A filter with a non-linear effect. nlfilt
noise - A white noise generator with an IIR lowpass filter. noise
noteoff - Send a noteoff message to the MIDI OUT port. noteoff
noteon - Send a noteon message to the MIDI OUT port. noteon
noteondur - Sends a noteon and a noteoff MIDI message both with the same channel, number and velocity. noteondur
noteondur2 - Sends a noteon and a noteoff MIDI message both with the same channel, number and velocity. noteondur2
notnum - Get a note number from a MIDI event. notnum
nreverb - A reverberator consisting of 6 parallel comb-lowpass filters. nreverb
nrpn - Sends a Non-Registered Parameter Number to the MIDI OUT port. nrpn
nsamp - Returns the number of samples loaded into a stored function table number. nsamp
nstrnum - Returns the number of a named instrument. nstrnum
ntrpol - Calculates the weighted mean value of two input signals. ntrpol
octave - Calculates a factor to raise/lower a frequency by a given amount of octaves. octave
octcps - Converts a cycles-per-second value to octave-point-decimal. octcps
octmidi - Get the note number, in octave-point-decimal units, of the current MIDI event. octmidi
octmidib - Get the note number of the current MIDI event and modify it by the current pitch-bend value, express it in octave-point-decimal. octmidib
octpch - Converts a pitch-class value to octave-point-decimal. octpch
opcode - Defines the start of user-defined opcode block. opcode
OSCsend - Sends data to other processes using the OSC protocol OSCsend
OSCinit - Start a listening process for OSC messages to a particular port. OSCinit
OSClisten - Listen for OSC messages to a particular path. OSClisten
oscbnk - Mixes the output of any number of oscillators. oscbnk
oscil - A simple oscillator. oscil
oscil1 - Accesses table values by incremental sampling. oscil1
oscil1i - Accesses table values by incremental sampling with linear interpolation. oscil1i
oscil3 - A simple oscillator with cubic interpolation. oscil3
oscili - A simple oscillator with linear interpolation. oscili
oscilikt - A linearly interpolated oscillator that allows changing the table number at k-rate. oscilikt
osciliktp - A linearly interpolated oscillator that allows allows phase modulation. osciliktp
oscilikts - A linearly interpolated oscillator with sync status that allows changing the table number at k-rate. oscilikts
osciln - Accesses table values at a user-defined frequency. osciln
oscils - A simple, fast sine oscillator oscils
oscilx - Same as the osciln opcode. oscilx
out - Writes mono audio data to an external device or stream. out
out32 - Writes 32-channel audio data to an external device or stream. out32
outc - Writes audio data with an arbitrary number of channels to an external device or stream. outc
outch - Writes multi-channel audio data, with user-controllable channels, to an external device or stream. outch
outh - Writes 6-channel audio data to an external device or stream. outh
outiat - Sends MIDI aftertouch messages at i-rate. outiat
outic - Sends MIDI controller output at i-rate. outic
outic14 - Sends 14-bit MIDI controller output at i-rate. outic14
outipat - Sends polyphonic MIDI aftertouch messages at i-rate. outipat
outipb - Sends MIDI pitch-bend messages at i-rate. outipb
outipc - Sends MIDI program change messages at i-rate outipc
outkat - Sends MIDI aftertouch messages at k-rate. outkat
outkc - Sends MIDI controller messages at k-rate. outkc
outkc14 - Sends 14-bit MIDI controller output at k-rate. outkc14
outkpat - Sends polyphonic MIDI aftertouch messages at k-rate. outkpat
outkpb - Sends MIDI pitch-bend messages at k-rate. outkpb
outkpc - Sends MIDI program change messages at k-rate. outkpc
outo - Writes 8-channel audio data to an external device or stream. outo
outq - Writes 4-channel audio data to an external device or stream. outq
outq1 - Writes samples to quad channel 1 of an external device or stream. outq1
outq2 - Writes samples to quad channel 2 of an external device or stream. outq2
outq3 - Writes samples to quad channel 3 of an external device or stream. outq3
outq4 - Writes samples to quad channel 4 of an external device or stream. outq4
outs - Writes stereo audio data to an external device or stream. outs
outs1 - Writes samples to stereo channel 1 of an external device or stream. outs1
outs2 - Writes samples to stereo channel 2 of an external device or stream. outs2
outvalue - Sends a k-rate signal to a user-defined channel. outvalue
outx - Writes 16-channel audio data to an external device or stream. outx
outz - Writes multi-channel audio data from a ZAK array to an external device or stream. outz
p - Show the value in a given p-field. p
pan - Distribute an audio signal amongst four channels. pan
pareq - Implementation of Zoelzer's parametric equalizer filters. pareq
partials - Partial track spectral analysis. partials
pcauchy - Cauchy distribution random number generator (positive values only). pcauchy x-class noise generators
pchbend - Get the current pitch-bend value for this channel. pchbend
pchmidi - Get the note number of the current MIDI event, expressed in pitch-class units. pchmidi
pchmidib - Get the note number of the current MIDI event and modify it by the current pitch-bend value, express it in pitch-class units. pchmidib
pchoct - Converts an octave-point-decimal value to pitch-class. pchoct
pconvolve - Convolution based on a uniformly partitioned overlap-save algorithm pconvolve
peak - Maintains the output equal to the highest absolute value received. peak
peakk - Deprecated. peakk
pgmassign - Assigns an instrument number to a specified MIDI program. pgmassign
phaser1 - First-order allpass filters arranged in a series. phaser1
phaser2 - Second-order allpass filters arranged in a series. phaser2
phasor - Produce a normalized moving phase value. phasor
phasorbnk - Produce an arbitrary number of normalized moving phase values. phasorbnk
pinkish - Generates approximate pink noise. pinkish
pitch - Tracks the pitch of a signal. pitch
pitchamdf - Follows the pitch of a signal based on the AMDF method. pitchamdf
planet - Simulates a planet orbiting in a binary star system. planet
pluck - Produces a naturally decaying plucked string or drum sound. pluck
poisson - Poisson distribution random number generator (positive values only). poisson x-class noise generators
polyaft - Returns the polyphonic after-touch pressure of the selected note number. polyaft
port - Applies portamento to a step-valued control signal. port
portk - Applies portamento to a step-valued control signal. portk
poscil - High precision oscillator. poscil
poscil3 - High precision oscillator with cubic interpolation. poscil3
pow - Computes one argument to the power of another argument. pow
powoftwo - Performs a power-of-two calculation. powoftwo
prealloc - Creates space for instruments but does not run them. prealloc
print - Displays the values init, control, or audio signals. print
printf - printf-style formatted output printf printf_i
printk - Prints one k-rate value at specified intervals. printk
printk2 - Prints a new value every time a control variable changes. printk2
printks - Prints at k-rate using a printf() style syntax. printks
prints - Prints at init-time using a printf() style syntax. prints
product - Multiplies any number of a-rate signals. product
pset - Defines and initializes numeric arrays at orchestra load time. pset
puts - Print a string constant or variable puts
pvadd - Reads from a pvoc file and uses the data to perform additive synthesis. pvadd
pvbufread - Reads from a phase vocoder analysis file and makes the retrieved data available. pvbufread
pvcross - Applies the amplitudes from one phase vocoder analysis file to the data from a second file. pvcross
pvinterp - Interpolates between the amplitudes and frequencies of two phase vocoder analysis files. pvinterp
pvoc - Implements signal reconstruction using an fft-based phase vocoder. pvoc
pvread - Reads from a phase vocoder analysis file and returns the frequency and amplitude from a single analysis channel or bin. pvread
pvsadsyn - Resynthesize using a fast oscillator-bank. pvsadsyn
pvsanal - Generate an fsig from a mono audio source ain, using phase vocoder overlap-add analysis. pvsanal
pvsarp - Arpeggiate the spectral components of a streaming pv signal. pvsarp
pvscross - Performs cross-synthesis between two source fsigs. pvscross
pvscent - Calculate the spectral centroid of a signal. pvscent
pvsdemix - Spectral azimuth-based de-mixing of stereo sources. pvsdemix
pvsfread - Read a selected channel from a PVOC-EX analysis file. pvsfread
pvsftr - Reads amplitude and/or frequency data from function tables. pvsftr
pvsftw - Writes amplitude and/or frequency data to function tables. pvsftw
pvsifd - Instantaneous Frequency Distribution, magnitude and phase analysis. pvsifd
pvsinfo - Get information from a PVOC-EX formatted source. pvsinfo
pvsinit - Initialise a spectral (f) variable to zero. pvsinit
pvsmaska - Modify amplitudes using a function table, with dynamic scaling. pvsmaska
pvsynth - Resynthesise using a FFT overlap-add. pvsynth
pvscale - Scale the frequency components of a pv stream. pvscale
pvshift - Shift the frequency components of a pv stream, stretching/compressing its spectrum. pvshift
pvsmix - Mix 'seamlessly' two pv signals. pvsmix
pvsfilter - Multiply amplitudes of a pvoc stream by those of a second pvoc stream, with dynamic scaling. pvsfilter
pvsblur - Average the amp/freq time functions of each analysis channel for a specified time. pvsblur
pvstencil - Transforms a pvoc stream according to a masking function table. pvstencil
pvsvoc - Combine the spectral envelope of one fsig with the excitation (frequencies) of another. pvsvoc
pyassign Opcodes - Assign the value of the given Csound variable to a Python variable possibly destroying its previous content. pyassign
pycall Opcodes - Invoke the specified Python callable at k-time and i-time (i suffix), passing the given arguments. The call is perfomed in the global environment, and the result (the returning value) is copied into the Csound output variables specified. pycall
pyeval Opcodes - Evaluate a generic Python expression and store the result in a Csound variable at k-time or i-time (i suffix). pyeval
pyexec Opcodes - Execute a script from a file at k-time or i-time (i suffix). pyexec
pyinit Opcodes - Initialize the Python interpreter. pyinit
pyrun Opcodes - Run a Python statement or block of statements. pyrun
rand - Generates a controlled random number series. rand
randh - Generates random numbers and holds them for a period of time. randh
randi - Generates a controlled random number series with interpolation between each new number. randi
random - Generates is a controlled pseudo-random number series between min and max values. random
randomh - Generates random numbers with a user-defined limit and holds them for a period of time. randomh
randomi - Generates a user-controlled random number series with interpolation between each new number. randomi
rbjeq - Parametric equalizer and filter opcode with 7 filter types, based on algorithm by Robert Bristow-Johnson. rbjeq
readclock - Reads the value of an internal clock. readclock
readk - Periodically reads an orchestra control-signal value from an external file. readk
readk2 - Periodically reads two orchestra control-signal values from an external file. readk2
readk3 - Periodically reads three orchestra control-signal values from an external file. readk3
readk4 - Periodically reads four orchestra control-signal values from an external file. readk4
reinit - Suspends a performance while a special initialization pass is executed. reinit
release - Indicates whether a note is in its release stage. release
repluck - Physical model of the plucked string. repluck
reson - A second-order resonant filter. reson
resonk - A second-order resonant filter. resonk
resonr - A bandpass filter with variable frequency response. resonr
resonx - Emulates a stack of filters using the reson opcode. resonx
resonxk - Control signal resonant filter stack. resonxk
resony - A bank of second-order bandpass filters, connected in parallel. resony
resonz - A bandpass filter with variable frequency response. resonz
resyn - Streaming partial track additive synthesis with cubic phase interpolation with pitch control and support for timescale-modified input resyn
reverb - Reverberates an input signal with a natural room frequency response. reverb
reverb2 - Same as the nreverb opcode. reverb2
reverbsc - 8 delay line stereo FDN reverb, based on work by Sean Costello reverbsc
rezzy - A resonant low-pass filter. rezzy
rigoto - Transfers control during a reinit pass. rigoto
rireturn - Terminates a reinit pass. rireturn
rms - Determines the root-mean-square amplitude of an audio signal. rms
rnd - Returns a random number in a unipolar range at the rate given by the input argument. rnd
rnd31 - 31-bit bipolar random opcodes with controllable distribution. rnd31
rspline - Generate random spline curves. rspline
rtclock - Read the real time clock from the operating system. rtclock
s16b14 - Creates a bank of 16 different 14-bit MIDI control message numbers. s16b14
s32b14 - Creates a bank of 32 different 14-bit MIDI control message numbers. s32b14
samphold - Performs a sample-and-hold operation on its input. samphold
sandpaper - Semi-physical model of a sandpaper sound. sandpaper
scanhammer - Copies from one table to another with a gain control. scanhammer
scans - Generate audio output using scanned synthesis. scans
scantable - A simpler scanned synthesis implementation. scantable
scanu - Compute the waveform and the wavetable for use in scanned synthesis. scanu
schedkwhen - Adds a new score event generated by a k-rate trigger. schedkwhen
schedkwhennamed - Similar to schedkwhen but uses a named instrument at init-time. schedkwhennamed
schedule - Adds a new score event. schedule
schedwhen - Adds a new score event. schedwhen
seed - Sets the global seed value. seed
sekere - Semi-physical model of a sekere sound. sekere
semitone - Calculates a factor to raise/lower a frequency by a given amount of semitones. semitone
sense - Same as the sensekey opcode. sense
sensekey - Returns the ASCII code of a key that has been pressed. sensekey
seqtime - Generates a trigger signal according to the values stored in a table. seqtime
seqtime2 - Generates a trigger signal according to the values stored in a table. seqtime2
setctrl - Configurable slider controls for realtime user input. setctrl
setksmps - Sets the local ksmps value in a user-defined opcode block. setksmps
sfilist - Prints a list of all instruments of a previously loaded SoundFont2 (SF2) file. sfilist
sfinstr - Plays a SoundFont2 (SF2) sample instrument, generating a stereo sound. sfinstr
sfinstr3 - Plays a SoundFont2 (SF2) sample instrument, generating a stereo sound with cubic interpolation. sfinstr3
sfinstr3m - Plays a SoundFont2 (SF2) sample instrument, generating a mono sound with cubic interpolation. sfinstr3m
sfinstrm - Plays a SoundFont2 (SF2) sample instrument, generating a mono sound. sfinstrm
sfload - Loads an entire SoundFont2 (SF2) sample file into memory. sfload
sfpassign - Assigns all presets of a SoundFont2 (SF2) sample file to a sequence of progressive index numbers. sfpassign
sfplay - Plays a SoundFont2 (SF2) sample preset, generating a stereo sound. sfplay
sfplay3 - Plays a SoundFont2 (SF2) sample preset, generating a stereo sound with cubic interpolation. sfplay3
sfplay3m - Plays a SoundFont2 (SF2) sample preset, generating a mono sound with cubic interpolation. sfplay3m
sfplaym - Plays a SoundFont2 (SF2) sample preset, generating a mono sound. sfplaym
sfplist - Prints a list of all presets of a SoundFont2 (SF2) sample file. sfplist
sfpreset - Assigns an existing preset of a SoundFont2 (SF2) sample file to an index number. sfpreset
shaker - Sounds like the shaking of a maraca or similar gourd instrument. shaker
sin - Performs a sine function. sin
sinh - Performs a hyperbolic sine function. sinh
sininv - Performs an arcsine function. sininv
sinsyn - Streaming partial track additive synthesis with cubic phase interpolation sinsyn
sleighbells - Semi-physical model of a sleighbell sound. sleighbells
slider16 - Creates a bank of 16 different MIDI control message numbers. slider16
slider16f - Creates a bank of 16 different MIDI control message numbers, filtered before output. slider16f
slider32 - Creates a bank of 32 different MIDI control message numbers. slider32
slider32f - Creates a bank of 32 different MIDI control message numbers, filtered before output. slider32f
slider64 - Creates a bank of 64 different MIDI control message numbers. slider64
slider64f - Creates a bank of 64 different MIDI control message numbers, filtered before output. slider64f
slider8 - Creates a bank of 8 different MIDI control message numbers. slider8
slider8f - Creates a bank of 8 different MIDI control message numbers, filtered before output. slider8f
sndloop - A sound looper with pitch control. sndloop
sndwarp - Reads a mono sound sample from a table and applies time-stretching and/or pitch modification. sndwarp
sndwarpst - Reads a stereo sound sample from a table and applies time-stretching and/or pitch modification. sndwarpst
soundin - Reads audio data from an external device or stream. soundin
soundout - Writes audio output to a disk file. soundout
soundouts - Writes audio output to a disk file. soundouts
space - Distributes an input signal among 4 channels using cartesian coordinates. space
spat3d - Positions the input sound in a 3D space and allows moving the sound at k-rate. spat3d
spat3di - Positions the input sound in a 3D space with the sound source position set at i-time. spat3di
spat3dt - Can be used to render an impulse response for a 3D space at i-time. spat3dt
spdist - Calculates distance values from xy coordinates. spdist
specaddm - Perform a weighted add of two input spectra. specaddm
specdiff - Finds the positive difference values between consecutive spectral frames. specdiff
specdisp - Displays the magnitude values of the spectrum. specdisp
specfilt - Filters each channel of an input spectrum. specfilt
spechist - Accumulates the values of successive spectral frames. spechist
specptrk - Estimates the pitch of the most prominent complex tone in the spectrum. specptrk
specscal - Scales an input spectral datablock with spectral envelopes. specscal
specsum - Sums the magnitudes across all channels of the spectrum. specsum
spectrum - Generate a constant-Q, exponentially-spaced DFT. spectrum
splitrig - Split a trigger signal splitrig
spsend - Generates output signals based on a previously defined space opcode. spsend
sprintf - printf-style formatted output to a string variable sprintf
sqrt - Returns a square root value. sqrt
sr - Sets the audio sampling rate. sr
statevar - State-variable filter. statevar
stix - Semi-physical model of a stick sound. stix
strcpy - Assign value to a string variable strcpy
strcat - Concatenate strings strcat
strcmp - Compare strings strcmp
streson - A string resonator with variable fundamental frequency. streson
strget - Set string variable to value from strset table or string p-field strget
strset - Allows a string to be linked with a numeric value. strset
strtod - Converts a string to a float (i-rate). strtod
strtodk - Converts a string to a float (k-rate). strtodk
strtol - Converts a string to a signed integer (i-rate). strtol
strtolk - Converts a string to a signed integer (k-rate). strtolk
subinstr - Creates and runs a numbered instrument instance. subinstr
subinstrinit - Creates and runs a numbered instrument instance at init-time. subinstrinit
sum - Sums any number of a-rate signals. sum
svfilter - A resonant second order filter, with simultaneous lowpass, highpass and bandpass outputs. svfilter
syncgrain - Synchronous granular synthesis. syncgrain
timedseq - Time Variant Sequencer timedseq
tb - Table Read Access inside expressions. tb0 tb1 tb2 tb3 tb4 tb5 tb6 tb7 tb8 tb9 tb10 tb11 tb12 tb13 tb14 tb15 tb0_init tb1_init tb2_init tb3_init tb4_init tb5_init tb6_init tb7_init tb8_init tb9_init tb10_init tb11_init tb12_init tb13_init tb14_init tb15_init
tab - Fast table opcodes. tab tab_i tabw tabw_i
tabrec - Recording and playing-back control signals. tabrec tabplay
table - Accesses table values by direct indexing. table
table3 - Accesses table values by direct indexing with cubic interpolation. table3
tablecopy - Simple, fast table copy opcode. tablecopy
tablegpw - Writes a table's guard point. tablegpw
tablei - Accesses table values by direct indexing with linear interpolation. tablei
tableicopy - Simple, fast table copy opcode. tableicopy
tableigpw - Writes a table's guard point. tableigpw
tableikt - Provides k-rate control over table numbers. tableikt
tableimix - Mixes two tables. tableimix
tableiw - Change the contents of existing function tables. tableiw
tablekt - Provides k-rate control over table numbers. tablekt
tablemix - Mixes two tables. tablemix
tableng - Interrogates a function table for length. tableng
tablera - Reads tables in sequential locations. tablera
tableseg - Creates a new function table by making linear segments between values in stored function tables. tableseg
tablew - Change the contents of existing function tables. tablew
tablewa - Writes tables in sequential locations. tablewa
tablewkt - Change the contents of existing function tables. tablewkt
tablexkt - Reads function tables with linear, cubic, or sinc interpolation. tablexkt
tablexseg - Creates a new function table by making exponential segments between values in stored function tables. tablexseg
tambourine - Semi-physical model of a tambourine sound. tambourine
tan - Performs a tangent function. tan
tanh - Performs a hyperbolic tangent function. tanh
taninv - Performs an arctangent function. taninv
taninv2 - Returns an arctangent. taninv2
tbvcf - Models some of the filter characteristics of a Roland TB303 voltage-controlled filter. tbvcf
tempest - Estimate the tempo of beat patterns in a control signal. tempest
tempo - Apply tempo control to an uninterpreted score. tempo
tempoval - Reads the current value of the tempo. tempoval
tigoto - Transfer control at i-time when a new note is being tied onto a previously held note tigoto
timeinstk - Read absolute time in k-rate cycles. timeinstk
timeinsts - Read absolute time in seconds. timeinsts
timek - Read absolute time in k-rate cycles. timek
times - Read absolute time in seconds. times
timout - Conditional branch during p-time depending on elapsed note time. timout
tival - Puts the value of the instrument's internal tie-in flag into the named i-rate variable. tival
tlineto - Generate glissandos starting from a control signal. tlineto
tone - A first-order recursive low-pass with variable frequency response. tone
tonek - A first-order recursive low-pass filter with variable frequency response. tonek
tonex - Emulates a stack of filters using the tone opcode. tonex
tradsyn - Streaming partial track additive synthesis tradsyn
transeg - Constructs a user-definable envelope. transeg
trcross - Streaming partial track cross-synthesis. trcross
trfilter - Streaming partial track filtering. trfilter
trhighest - Extracts the highest-frequency track from a streaming track input signal. trhighest
trigger - Informs when a krate signal crosses a threshold. trigger
trigseq - Accepts a trigger signal as input and outputs a group of values. trigseq
trirand - Linear distribution random number generator. trirand x-class noise generators
trlowest - Extracts the lowest-frequency track from a streaming track input signal. trlowest
trmix - Streaming partial track mixing. trmix
trscale - Streaming partial track frequency scaling. trscale
trshift - Streaming partial track frequency scaling. trshift
trsplit - Streaming partial track frequency splitting. trsplit
turnoff - Enables an instrument to turn itself off. turnoff
turnoff2 - Turn off instance(s) of other instruments at performance time. turnoff2
turnon - Activate an instrument for an indefinite time. turnon
unirand - Uniform distribution random number generator (positive values only). unirand x-class noise generators
upsamp - Modify a signal by up-sampling. upsamp
urd - A discrete user-defined-distribution random generator that can be used as a function. urd
vadd - Performs addition between a vectorial control signal and a scalar control signal vadd
vaddv - Performs addition between two vectorial control signals vaddv
valpass - Variably reverberates an input signal with a flat frequency response. valpass
vbap16 - Distributes an audio signal among 16 channels. vbap16
vbap16move - Distribute an audio signal among 16 channels with moving virtual sources. vbap16move
vbap4 - Distributes an audio signal among 4 channels. vbap4
vbap4move - Distributes an audio signal among 4 channels with moving virtual sources. vbap4move
vbap8 - Distributes an audio signal among 8 channels. vbap8
vbap8move - Distributes an audio signal among 8 channels with moving virtual sources. vbap8move
vbaplsinit - Configures VBAP output according to loudspeaker parameters. vbaplsinit
vbapz - Writes a multi-channel audio signal to a ZAK array. vbapz
vbapzmove - Writes a multi-channel audio signal to a ZAK array with moving virtual sources. vbapzmove
vcella - Cellular Automata vcella
vco - Implementation of a band limited, analog modeled oscillator. vco
vco2 - Implementation of a band-limited oscillator using pre-calculated tables. vco2
vco2ft - Returns a table number at k-time for a given oscillator frequency and wavform. vco2ft
vco2ift - Returns a table number at i-time for a given oscillator frequency and wavform. vco2ift
vco2init - Calculates tables for use by vco2 opcode. vco2init
vcomb - Variably reverberates an input signal with a colored frequency response. vcomb
vcopy - Copies between two vectorial control signals vcopy
vcopy_i - Copies between two vectorial control signals. vcopy
vdelay - An interpolating variable time delay. vdelay
vdelay3 - An variable time delay with cubic interpolation. vdelay3
vdelayx - A variable delay opcode with high quality interpolation. vdelayx
vdelayxq - A 4-channel variable delay opcode with high quality interpolation. vdelayxq
vdelayxs - A stereo variable delay opcode with high quality interpolation. vdelayxs
vdelayxw - Variable delay opcodes with high quality interpolation. vdelayxw
vdelayxwq - Variable delay opcodes with high quality interpolation. vdelayxwq
vdelayxws - Variable delay opcodes with high quality interpolation. vdelayxws
vdivv - Performs division between two vectorial control signals vdivv
vdelayk - k-rate variable time delay. vdelayk
vecdelay - Vectorial Control-rate Delay Paths vecdelay
veloc - Get the velocity from a MIDI event. veloc
vexp - Performs power-of operations between a vectorial control signal and a scalar control signal vexp
vexpseg - Vectorial envelope generator vexpseg
vexpv - Performs exponential operations between two vectorial control signals vexpv
vibes - Physical model related to the striking of a metal block. vibes
vibr - Easier-to-use user-controllable vibrato. vibr
vibrato - Generates a natural-sounding user-controllable vibrato. vibrato
vincr - Accumulates audio signals. vincr
vlimit - Limiting and Wrapping Vectorial Signals vlimit
vlinseg - Vectorial envelope generator vlinseg
vlowres - A bank of filters in which the cutoff frequency can be separated under user control. vlowres
vmap - Maps elements from a vectorial control signal vmap
vmirror - Limiting and Wrapping Vectorial Signals vmirror
vmult - Performs multiplication between a vectorial control signal and a scalar control signal vmult
vmultv - Performs mutiplication between two vectorial control signals vmultv
voice - An emulation of a human voice. voice
vport - Vectorial Control-rate Delay Paths vport
vpow - Performs power-of operations between a vectorial control signal and a scalar control signal vpow
vpowv - Performs power-of operations between two vectorial control signals vpowv
vpvoc - Implements signal reconstruction using an fft-based phase vocoder and an extra envelope. vpvoc
vrandh - Generate a sort of 'vectorial band-limited noise' vrandh
vrandi - Generate a sort of 'vectorial band-limited noise' vrandi
vstaudio, vstaudiog - VST audio output. vstaudio
vstbankload - Loads parameter banks to a VST plugin. vstbankload
vstedit - Opens the GUI editor widow for a VST plugin. vstedit
vstinit - Load a VST plugin into memory for use with the other vst4cs opcodes. vstinit
vstinfo - Displays the parameters and the programs of a VST plugin. vstinfo
vstmidiout - Sends MIDI information to a VST plugin. vstmidiout
vstnote - Sends a MIDI note with definite duration to a VST plugin. vstnote
vstparamset,vstparamget - Used for parameter comunication to and from a VST plugin. vstparamset
vstprogset - Loads parameter banks to a VST plugin. vstprogset
vsubv - Performs subtraction between two vectorial control signals vsubv
vtablei - Read vectors (from tables -or arrays of vectors). vtablei
vtablek - Read vectors (from tables -or arrays of vectors). vtablek
vtablea - Read vectors (from tables -or arrays of vectors). vtablea
vtablewi - Write vectors (to tables -or arrays of vectors). vtablewi
vtablewk - Write vectors (to tables -or arrays of vectors). vtablewk
vtablewa - Write vectors (to tables -or arrays of vectors). vtablewa
vtabi - Read vectors (from tables -or arrays of vectors). vtabi
vtabk - Read vectors (from tables -or arrays of vectors). vtabk
vtaba - Read vectors (from tables -or arrays of vectors). vtaba
vtabwi - Write vectors (to tables -or arrays of vectors). vtabwi
vtabwk - Write vectors (to tables -or arrays of vectors). vtabwk
vtabwa - Write vectors (to tables -or arrays of vectors). vtabwa
vwrap - Limiting and Wrapping Vectorial Signals vwrap
waveset - A simple time stretch by repeating cycles. waveset
weibull - Weibull distribution random number generator (positive values only). weibull x-class noise generators
wgbow - Creates a tone similar to a bowed string. wgbow
wgbowedbar - A physical model of a bowed bar. wgbowedbar
wgbrass - Creates a tone related to a brass instrument. wgbrass
wgclar - Creates a tone similar to a clarinet. wgclar
wgflute - Creates a tone similar to a flute. wgflute
wgpluck - A high fidelity simulation of a plucked string. wgpluck
wgpluck2 - Physical model of the plucked string. wgpluck2
wguide1 - A simple waveguide model consisting of one delay-line and one first-order lowpass filter. wguide1
wguide2 - A model of beaten plate consisting of two parallel delay-lines and two first-order lowpass filters. wguide2
wrap - Wraps-around the signal that exceeds the low and high thresholds. wrap
wterrain - A simple wave-terrain synthesis opcode. wterrain
xadsr - Calculates the classical ADSR envelope. xadsr
xin - Passes variables from a user-defined opcode block, xin
xout - Retrieves variables from a user-defined opcode block, xout
xscanmap - Allows the position and velocity of a node in a scanned process to be read. xscanmap
xscansmap - Allows the position and velocity of a node in a scanned process to be read. xscansmap
xscans - Fast scanned synthesis waveform and the wavetable generator. xscans
xscanu - Compute the waveform and the wavetable for use in scanned synthesis. xscanu
xtratim - Extend the duration of real-time generated events. xtratim
xyin - Sense the cursor position in an output window xyin
zacl - Clears one or more variables in the za space. zacl
zakinit - Establishes zak space. zakinit
zamod - Modulates one a-rate signal by a second one. zamod
zar - Reads from a location in za space at a-rate. zar
zarg - Reads from a location in za space at a-rate, adds some gain. zarg
zaw - Writes to a za variable at a-rate without mixing. zaw
zawm - Writes to a za variable at a-rate with mixing. zawm
zfilter2 - Performs filtering using a transposed form-II digital filter lattice with radial pole-shearing and angular pole-warping. zfilter2
zir - Reads from a location in zk space at i-rate. zir
ziw - Writes to a zk variable at i-rate without mixing. ziw
ziwm - Writes to a zk variable to an i-rate variable with mixing. ziwm
zkcl - Clears one or more variables in the zk space. zkcl
zkmod - Facilitates the modulation of one signal by another. zkmod
zkr - Reads from a location in zk space at k-rate. zkr
zkw - Writes to a zk variable at k-rate without mixing. zkw
zkwm - Writes to a zk variable at k-rate with mixing. zkwm
barmodel - Creates a tone similar to a stuck metal bar. barmodel
Score Statements and GEN Routines
Score Statements
GEN Routines
The Utility Programs
Directories.
Soundfile Formats.
Credits
Analysis File Generation
File Queries
File Conversion
Other Csound Utilities
Cscore
Events, Lists, and Operations
Writing a Main Program
More Advanced Examples
Compiling a Cscore Program
Extending Csound
Adding Unit Generators
Creating a Builtin Unit Generator
Adding a Plugin Unit Generator
OENTRY Reference
A. Pitch Conversion
B. Sound Intensity Values
C. Formant Values
D. Window Functions
E. SoundFont2 File Format
F. Csound64
Glossary
G. Quick Reference