The Canonical Csound Reference Manual
|  | Next

# The Canonical Csound Reference Manual

## Frames Version

## Version 6.07

### Barry Vercoe

MIT Media Lab

### et. al.

Table of Contents

Preface
  Preface to the Csound Manual
  History of the Canonical Csound Reference Manual
  Copyright Notice
  Getting Started with Csound
  What's new in Csound 6.07
I. Overview
  Introduction
  The Csound Command
    Order of Precedence
    Description of the command syntax
    Csound command line
    Command-line Flags (by Category)
    Csound Environment Variables
    Unified File Format for Orchestras and Scores
      Description
      Example
    Command Line Parameter File (.csoundrc)
    Score File Preprocessing
      The Extract Feature
      Independent Pre-Processing with Scsort
  Using Csound
    Csound's Console Output
    How Csound works
      Amplitude values in Csound
    Real-Time Audio
    Realtime I/O on Linux
    Windows
    Mac OSX
    Optimizing Audio I/O Latency
  Configuring
  Syntax of the Orchestra
    Orchestra Header Statements
    Instrument and Opcode Block Statements
    Ordinary Statements
    Types, Constants and Variables
      Variable Initialization
    Expressions
    Directories and Files
    Nomenclature
    Macros
    Named Instruments
    User Defined Opcodes (UDO)
    K-Rate Vectors
    Function Syntax in Csound6
  The Standard Numeric Score
    Preprocessing of Standard Scores
      Carry
      Tempo
      Sort
    Score Statements
    Next-P and Previous-P Symbols
    Ramping
    Score Macros
    Multiple File Score
    Evaluation of Expressions
    Strings in p-fields
  Front Ends
    CsoundAC
    CsoundVST
  Building Csound
  Csound Links
II. Opcodes Overview
  Signal Generators
    Additive Synthesis/Resynthesis
    Basic Oscillators
    Dynamic Spectrum Oscillators
    FM Synthesis
    Granular Synthesis
    Hyper Vectorial Synthesis
    Linear and Exponential Generators
    Envelope Generators
    Models and Emulations
    Phasors
    Random (Noise) Generators
    Sample Playback
      Soundfonts
    Scanned Synthesis
    Table Access
    Wave Terrain Synthesis
    Waveguide Physical Modeling
  Signal Input and Output
    File Input and Output
    Signal Input
    Signal Output
    Software Bus
    Printing and Display
    Sound File Queries
  Signal Modifiers
    Amplitude Modifiers and Dynamic processing
    Convolution and Morphing
    Delay
    Panning and Spatialization
    Reverberation
    Sample Level Operators
    Signal Limiters
    Special Effects
    Standard Filters
    Specialized Filters
    Waveguides
    Waveshaping and Phase Distortion
  Instrument Control
    Clock Control
    Conditional Values
    Duration Control Statements
    FLTK Widgets and GUI controllers
      FLTK Containers
      FLTK Valuators
      Other FLTK Widgets
      Modifying FLTK Widget Appearance
      General FLTK Widget-related Opcodes
    Instrument Invocation
    Program Flow Control
    Real-time Performance Control
    Initialization and Reinitialization
    Sensing and Control
    Stacks
    Sub-instrument Control
    Time Reading
  Function Table Control
    Table Queries
    Read/Write Operations
    Table Reading with Dynamic Selection
  Mathematical Operations
    Amplitude Converters
    Arithmetic and Logic Operations
    Comparators and Accumulators
    Mathematical Functions
    Opcode Equivalents of Functions
    Random Functions
    Trigonometric Functions
    Linear Algebra Opcodes — Scalar, vector, and matrix arithmetic on real and complex values.
    Array Opcodes
  Pitch Converters
    Functions
    Tuning Opcodes
  Real-time MIDI Support
    Virtual MIDI Keyboard
    MIDI input
    MIDI Message Output
    Generic Input and Output
    Converters
    Event Extenders
    Note-on/Note-off Output
    MIDI/Score Interoperability opcodes
    System Realtime Messages
    Slider Banks
  Spectral Processing
    Short-time Fourier Transform (STFT) Resynthesis
    Linear Predictive Coding (LPC) Resynthesis
    Non-standard Spectral Processing
    Tools for Real-time Spectral Processing (pvs opcodes)
    ATS Spectral Processing
    Loris Opcodes
    Array-based spectral opcodes
  Strings
    String Manipulation Opcodes
    String Conversion Opcodes
  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
  Plugin Hosting
    DSSI and LADSPA for Csound
    VST for Csound
  OSC and Network
    OSC
    Network
    Remote Opcodes
  Mixer Opcodes
  Signal Flow Graph Opcodes
  Jacko Opcodes
  Lua Opcodes
  Python Opcodes
    Introduction
    Orchestra Syntax
  Image processing opcodes
  STK Opcodes
  Miscellaneous opcodes
III. Reference
  Orchestra Opcodes and Operators
    != — Determines if one value is not equal to another.
    #define — Defines a macro.
    #include — Includes an external file for processing.
    #undef — Un-defines a macro.
    #ifdef — Conditional reading of code.
    #ifndef — Conditional reading of code.
    $NAME — Calls a defined macro.
    % — Modulus operator.
    && — Logical AND operator.
    > — Determines if one value is greater than another.
    >= — Determines if one value is greater than or equal to another.
    < — Determines if one value is less than another.
    <= — Determines if one value is less than or equal to another.
    * — Multiplication operator.
    + — Addition operator
    - — Subtraction operator.
    / — Division operator.
    = — Performs a simple assignment.
    += — Performs add and assignment.
    == — Compares two values for equality.
    ^ — “Power of” operator.
    || — Logical OR operator.
    0dbfs — Sets the value of 0 decibels using full scale amplitude.
    << — Bitshift left operator.
    >> — Bitshift right operator.
    & — 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.
    abs — Returns an absolute value.
    active — Returns the number of active instances of an instrument.
    adsr — Calculates the classical ADSR envelope using linear segments.
    adsyn — Output is an additive set of individually controlled sinusoids, using an oscillator bank.
    adsynt — Performs additive synthesis with an arbitrary number of partials, not necessarily harmonic.
    adsynt2 — Performs additive synthesis with an arbitrary number of partials -not necessarily harmonic- with interpolation.
    aftouch — Get the current after-touch value for this channel.
    alpass — Reverberates an input signal with a flat frequency response.
    alwayson — Activates the indicated instrument in the orchestra header, without need for an i statement.
    ampdb — Returns the amplitude equivalent of the decibel value x.
    ampdbfs — Returns the amplitude equivalent (in 16-bit signed integer scale) of the full scale decibel (dB FS) value x.
    ampmidi — Get the velocity of the current MIDI event.
    ampmidid — Musically map MIDI velocity to peak amplitude within a specified dynamic range in decibels.
    areson — A notch filter whose transfer functions are the complements of the reson opcode.
    aresonk — A notch filter whose transfer functions are the complements of the reson opcode.
    atone A hi-pass filter whose transfer functions are the complements of the tone opcode.
    atonek A hi-pass filter whose transfer functions are the complements of the tonek opcode.
    atonex — Emulates a stack of filters using the atone opcode.
    ATSadd — uses the data from an ATS analysis file to perform additive synthesis.
    ATSaddnz — uses the data from an ATS analysis file to perform noise resynthesis.
    ATSbufread — reads data from and ATS data file and stores it in an internal data table of frequency, amplitude pairs.
    ATScross — perform cross synthesis from ATS analysis files.
    ATSinfo — reads data out of the header of an ATS file.
    ATSinterpread allows a user to determine the frequency envelope of any ATSbufread.
    ATSread — reads data from an ATS file.
    ATSreadnz — reads data from an ATS file.
    ATSpartialtap returns a frequency, amplitude pair from an ATSbufread opcode.
    ATSsinnoi — uses the data from an ATS analysis file to perform resynthesis.
    babo — A physical model reverberator.
    balance — Adjust one audio signal according to the values of another.
    bamboo — Semi-physical model of a bamboo sound.
    barmodel — Creates a tone similar to a struck metal bar.
    bbcutm — Generates breakbeat-style cut-ups of a mono audio stream.
    bbcuts — Generates breakbeat-style cut-ups of a stereo audio stream.
    betarand — Beta distribution random number generator (positive values only).
    bexprnd — Exponential distribution random number generator.
    bformenc1 — Codes a signal into the ambisonic B format.
    bformdec1 — Decodes an ambisonic B format signal
    binit — PVS tracks to amplitude+frequency conversion.
    biquad — A sweepable general purpose biquadratic digital filter.
    biquada — A sweepable general purpose biquadratic digital filter with a-rate parameters.
    birnd — Returns a random number in a bi-polar range.
    bqrez — A second-order multi-mode filter.
    butbp — Same as the butterbp opcode.
    butbr — Same as the butterbr opcode.
    buthp — Same as the butterhp opcode.
    butlp — Same as the butterlp opcode.
    butterbp — A band-pass Butterworth filter.
    butterbr — A band-reject Butterworth filter.
    butterhp — A high-pass Butterworth filter.
    butterlp — A low-pass Butterworth filter.
    button — Sense on-screen controls.
    buzz — Output is a set of harmonically related sine partials.
    c2r — Real to complex format conversion.
    cabasa — Semi-physical model of a cabasa sound.
    cauchy — Cauchy distribution random number generator.
    cauchyi — Cauchy distribution random number generator with interpolation.
    ceil — Returns the smallest integer not less than x
    cell — Cellular Automaton
    cent — Calculates a factor to raise/lower a frequency by a given amount of cents.
    centroid — Calculate the spectral centroid of a signal.
    ceps — Calculate the cepstrum of an array input, optionally liftering coefficients.
    cepsinv — Calculate the inverse cepstrum of an array.
    cggoto — Conditionally transfer control on every pass.
    chanctrl — Get the current value of a MIDI channel controller.
    changed — k-rate signal change detector.
    changed2 — k-rate signal change detector.
    chani — Reads data from the software bus
    chano — Send data to the outwards software bus
    chebyshevpoly — Efficiently evaluates the sum of Chebyshev polynomials of arbitrary order.
    checkbox — Sense on-screen controls.
    chn — Declare a channel of the named software bus.
    chnclear — Clears an audio output channel of the named software bus.
    chnexport — Export a global variable as a channel of the bus.
    chnget — Reads data from the software bus.
    chnmix — Writes audio data to the named software bus, mixing to the previous output.
    chnparams — Query parameters of a channel.
    chnset — Writes data to the named software bus.
    chuap — Simulates Chua's oscillator, an LRC oscillator with an active resistor, proved capable of bifurcation and chaotic attractors, with k-rate control of circuit elements.
    cigoto — Conditionally transfer control during the i-time pass.
    ckgoto — Conditionally transfer control during the p-time passes.
    clear — Zeroes a list of audio signals.
    clfilt — Implements low-pass and high-pass filters of different styles.
    clip — Clips a signal to a predefined limit.
    clockoff — Stops one of a number of internal clocks.
    clockon — Starts one of a number of internal clocks.
    cmplxprod — Complex product of two arrays.
    cngoto — Transfers control on every pass when a condition is not true.
    comb — Reverberates an input signal with a “colored” frequency response.
    combinv — Reverberates an input signal with a “colored” frequency response.
    compilecsd — compiles a new orchestra from an ASCII file
    compileorc — compiles a new orchestra from an ASCII file
    compilestr — compiles a new orchestra passed in as an ASCII string
    compress — Compress, limit, expand, duck or gate an audio signal.
    compress2 — Compress, limit, expand, duck or gate an audio signal.
    connect — Connects a source outlet to a sink inlet.
    control — Configurable slider controls for realtime user input.
    convle — Same as the convolve opcode.
    convolve — Convolves a signal and an impulse response.
    copya2ftab — Copy data from a vector to an f-table.
    copyf2array — Copy data from an f-table to a vector.
    cos — Performs a cosine function.
    cosseg — Trace a series of line segments between specified points with cosine interpolation.
    cossegb — Trace a series of line segments between specified absolute points with cosine interpolation.
    cossegr — Trace a series of line segments between specified points with cosine interpolation, including a release segment.
    cosh — Performs a hyperbolic cosine function.
    cosinv — Performs a arccosine function.
    cps2pch — Converts a pitch-class value into cycles-per-second (Hz) for equal divisions of the octave.
    cpsmidi — Get the note number of the current MIDI event, expressed in cycles-per-second.
    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.
    cpsmidinn — Converts a Midi note number value to cycles-per-second.
    cpsoct — Converts an octave-point-decimal value to cycles-per-second.
    cpspch — Converts a pitch-class value to cycles-per-second.
    cpstmid — Get a MIDI note number (allows customized micro-tuning scales).
    cpstun — Returns micro-tuning values at k-rate.
    cpstuni — Returns micro-tuning values at init-rate.
    cpsxpch — Converts a pitch-class value into cycles-per-second (Hz) for equal divisions of any interval.
    cpumeter — Reports the usage of cpu either total or per core.
    cpuprc — Control allocation of cpu resources on a per-instrument basis, to optimize realtime output.
    cross2 — Cross synthesis using FFT's.
    crossfm — Two mutually frequency and/or phase modulated oscillators.
    crunch — Semi-physical model of a crunch sound.
    ctrl14 — Allows a floating-point 14-bit MIDI signal scaled with a minimum and a maximum range.
    ctrl21 — Allows a floating-point 21-bit MIDI signal scaled with a minimum and a maximum range.
    ctrl7 — Allows a floating-point 7-bit MIDI signal scaled with a minimum and a maximum range.
    ctrlinit — Sets the initial values for a set of MIDI controllers.
    cuserrnd — Continuous USER-defined-distribution RaNDom generator.
    dam — A dynamic compressor/expander.
    date — Returns the number seconds since a base date.
    dates — Returns as a string the date and time specified.
    db — Returns the amplitude equivalent for a given decibel amount.
    dbamp — Returns the decibel equivalent of the raw amplitude x.
    dbfsamp — Returns the decibel equivalent of the raw amplitude x, relative to full scale amplitude.
    dcblock — A DC blocking filter.
    dcblock2 — A DC blocking filter.
    dconv — A direct convolution opcode.
    delay — Delays an input signal by some time interval.
    delay1 — Delays an input signal by one sample.
    delayk — Delays an input signal by some time interval.
    delayr — Reads from an automatically established digital delay line.
    delayw — Writes the audio signal to a digital delay line.
    deltap — Taps a delay line at variable offset times.
    deltap3 — Taps a delay line at variable offset times, uses cubic interpolation.
    deltapi — Taps a delay line at variable offset times, uses interpolation.
    deltapn — Taps a delay line at variable offset times.
    deltapx — Read from or write to a delay line with interpolation.
    deltapxw — Mixes the input signal to a delay line.
    denorm — Mixes low level noise to a list of a-rate signals
    diff — Modify a signal by differentiation.
    directory — Reads a directory and outputs to a string array a list of file names.
    diskgrain — Synchronous granular synthesis, using a soundfile as source.
    diskin — Reads audio data from an external device or stream and can alter its pitch.
    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.
    dispfft — Displays the Fourier Transform of an audio or control signal.
    display — Displays the audio or control signals as an amplitude vs. time graph.
    distort — Distort an audio signal via waveshaping and optional clipping.
    distort1 — Modified hyperbolic tangent distortion.
    divz — Safely divides two numbers.
    doppler — A fast and robust method for approximating sound propagation, achieving convincing Doppler shifts without having to solve equations.
    downsamp — Modify a signal by down-sampling.
    dripwater — Semi-physical model of a water drop.
    dssiactivate — Activates or deactivates a DSSI or LADSPA plugin.
    dssiaudio — Processes audio using a LADSPA or DSSI plugin.
    dssictls — Send control information to a LADSPA or DSSI plugin.
    dssiinit — Loads a DSSI or LADSPA plugin.
    dssilist — Lists all available DSSI and LADSPA plugins.
    dumpk — Periodically writes an orchestra control-signal value to an external file.
    dumpk2 — Periodically writes two orchestra control-signal values to an external file.
    dumpk3 — Periodically writes three orchestra control-signal values to an external file.
    dumpk4 — Periodically writes four orchestra control-signal values to an external file.
    duserrnd — Discrete USER-defined-distribution RaNDom generator.
    dust — Random impulses.
    dust2 — Random impulses.
    else — Executes a block of code when an "if...then" condition is false.
    elseif — Defines another "if...then" condition when a "if...then" condition is false.
    endif — Closes a block of code that begins with an "if...then" statement.
    endin — Ends the current instrument block.
    endop — Marks the end of an user-defined opcode block.
    envlpx — Applies an envelope consisting of 3 segments.
    envlpxr — The envlpx opcode with a final release segment.
    ephasor — produces two outputs: a periodic phase signal and a periodic exponential decaying signal.
    eqfil — Equalizer filter
    evalstr — Evalstrs evaluates a string containing Csound code, returning a value.
    event — Generates a score event from an instrument.
    event_i — Generates a score event from an instrument.
    exciter — A non-linear filter system to excite the signal.
    exitnow — Exit Csound as fast as possible, with no cleaning up.
    exp — Returns e raised to the x-th power.
    expcurve — This opcode implements a formula for generating a normalised exponential curve in range 0 - 1. It is based on the Max / MSP work of Eric Singer (c) 1994.
    expon — Trace an exponential curve between specified points.
    exprand — Exponential distribution random number generator (positive values only).
    exprandi — Exponential distribution random number generator with interpolation (positive values only).
    expseg — Trace a series of exponential segments between specified points.
    expsega — An exponential segment generator operating at a-rate.
    expsegb — Trace a series of exponential segments between specified absolute points.
    expsegba — An exponential segment generator operating at a-rate with absolute times.
    expsegr — Trace a series of exponential segments between specified points including a release segment.
    faustaudio — Instantiates and runs a compiled Faust program.
    faustcompile — Invokes the just-in-time compiler to produce a instantiable DSP process from a Faust program.
    faustctl — Adjusts a given control in a Faust DSP instance.
    faustgen — Compiles, Instantiates and runs a compiled Faust program.
    fareylen — returns the length of a Farey Sequence.
    fareyleni — returns the length of a Farey Sequence.
    ficlose — Closes a previously opened file.
    filebit — Returns the number of bits in each sample in a sound file.
    filelen — Returns the length of a sound file.
    filenchnls — Returns the number of channels in a sound file.
    filepeak — Returns the peak absolute value of a sound file.
    filescal — Phase-locked vocoder processing with onset detection/processing, 'tempo-scaling'.
    filesr — Returns the sample rate of a sound file.
    filevalid — Checks that a file can be used.
    fillarray — Generate a vector with initial values.
    fft — Complex-to-complex Fast Fourier Transform.
    filter2 — Performs filtering using a transposed form-II digital filter lattice with no time-varying control.
    fin — Read signals from a file at a-rate.
    fini — Read signals from a file at i-rate.
    fink — Read signals from a file at k-rate.
    fiopen — Opens a file in a specific mode.
    flanger — A user controlled flanger.
    flashtxt — Allows text to be displayed from instruments like sliders
    FLbox — A FLTK widget that displays text inside of a box.
    FLbutBank — A FLTK widget opcode that creates a bank of buttons.
    FLbutton — A FLTK widget opcode that creates a button.
    FLcloseButton — A FLTK widget opcode that creates a button that will close the panel window it is a part of.
    FLcolor — A FLTK opcode that sets the primary colors.
    FLcolor2 — A FLTK opcode that sets the secondary (selection) color.
    FLcount — A FLTK widget opcode that creates a counter.
    FLexecButton — A FLTK widget opcode that creates a button that executes a command.
    FLgetsnap — Retrieves a previously stored FLTK snapshot.
    FLgroup — A FLTK container opcode that groups child widgets.
    FLgroupEnd — Marks the end of a group of FLTK child widgets.
    FLgroup_end — Marks the end of a group of FLTK child widgets.
    FLhide — Hides the target FLTK widget.
    FLhvsBox — Displays a box with a grid useful for visualizing two-dimensional Hyper Vectorial Synthesis.
    FLhvsBoxSetValue — Sets the cursor position of a previously-declared FLhvsBox widget.
    FLjoy — A FLTK opcode that acts like a joystick.
    FLkeyIn — Reports keys pressed (on alphanumeric keyboard) when an FLTK panel has focus.
    FLknob — A FLTK widget opcode that creates a knob.
    FLlabel — A FLTK opcode that modifies the appearance of a text label.
    FLloadsnap — Loads all snapshots into the memory bank of the current orchestra.
    FLmouse — Returns the mouse position and the state of the three mouse buttons.
    flooper — Function-table-based crossfading looper.
    flooper2 — Function-table-based crossfading looper.
    floor — Returns the largest integer not greater than x
    FLpack — Provides the functionality of compressing and aligning FLTK widgets.
    FLpackEnd — Marks the end of a group of compressed or aligned FLTK widgets.
    FLpack_end — Marks the end of a group of compressed or aligned FLTK widgets.
    FLpanel — Creates a window that contains FLTK widgets.
    FLpanelEnd — Marks the end of a group of FLTK widgets contained inside of a window (panel).
    FLpanel_end — Marks the end of a group of FLTK widgets contained inside of a window (panel).
    FLprintk — A FLTK opcode that prints a k-rate value at specified intervals.
    FLprintk2 — A FLTK opcode that prints a new value every time a control-rate variable changes.
    FLroller — A FLTK widget that creates a transversal knob.
    FLrun — Starts the FLTK widget thread.
    FLsavesnap — Saves all snapshots currently created into a file.
    FLscroll — A FLTK opcode that adds scroll bars to an area.
    FLscrollEnd — A FLTK opcode that marks the end of an area with scrollbars.
    FLscroll_end — A FLTK opcode that marks the end of an area with scrollbars.
    FLsetAlign — Sets the text alignment of a label of a FLTK widget.
    FLsetBox — Sets the appearance of a box surrounding a FLTK widget.
    FLsetColor — Sets the primary color of a FLTK widget.
    FLsetColor2 — Sets the secondary (or selection) color of a FLTK widget.
    FLsetFont — Sets the font type of a FLTK widget.
    FLsetPosition — Sets the position of a FLTK widget.
    FLsetSize — Resizes a FLTK widget.
    FLsetsnap — Stores the current status of all FLTK valuators into a snapshot location.
    FLsetSnapGroup — Determines the snapshot group for FL valuators.
    FLsetText — Sets the label of a FLTK widget.
    FLsetTextColor — Sets the color of the text label of a FLTK widget.
    FLsetTextSize — Sets the size of the text label of a FLTK widget.
    FLsetTextType — Sets some font attributes of the text label of a FLTK widget.
    FLsetVal_i — Sets the value of a FLTK valuator to a number provided by the user.
    FLsetVal — Sets the value of a FLTK valuator at control-rate.
    FLshow — Restores the visibility of a previously hidden FLTK widget.
    FLslidBnk — A FLTK widget containing a bank of horizontal sliders.
    FLslidBnk2 — A FLTK widget containing a bank of horizontal sliders.
    FLslidBnkGetHandle — gets the handle of last slider bank created.
    FLslidBnkSet — modify the values of a slider bank.
    FLslidBnkSetk — modify the values of a slider bank.
    FLslidBnk2Set — modify the values of a slider bank.
    FLslidBnk2Setk — modify the values of a slider bank.
    FLslider — Puts a slider into the corresponding FLTK container.
    FLtabs — Creates a tabbed FLTK interface.
    FLtabsEnd — Marks the end of a tabbed FLTK interface.
    FLtabs_end — Marks the end of a tabbed FLTK interface.
    FLtext — A FLTK widget opcode that creates a textbox.
    FLupdate — Same as the FLrun opcode.
    fluidAllOut — Collects all audio from all Fluidsynth engines in a performance
    fluidCCi — Sends a MIDI controller data message to fluid.
    fluidCCk — Sends a MIDI controller data message to fluid.
    fluidControl — Sends MIDI note on, note off, and other messages to a SoundFont preset.
    fluidEngine — Instantiates a fluidsynth engine.
    fluidLoad — Loads a SoundFont into a fluidEngine, optionally listing SoundFont contents.
    fluidNote — Plays a note on a channel in a fluidSynth engine.
    fluidOut — Outputs sound from a given fluidEngine
    fluidProgramSelect — Assigns a preset from a SoundFont to a channel on a fluidEngine.
    fluidSetInterpMethod — Set interpolation method for channel in Fluid Engine
    FLvalue — Shows the current value of a FLTK valuator.
    FLvkeybd — An FLTK widget opcode that creates a virtual keyboard widget.
    FLvslidBnk — A FLTK widget containing a bank of vertical sliders.
    FLvslidBnk2 — A FLTK widget containing a bank of vertical sliders.
    FLxyin — Senses the mouse cursor position in a user-defined area inside an FLpanel.
    fmb3 — Uses FM synthesis to create a Hammond B3 organ sound.
    fmbell — Uses FM synthesis to create a tublar bell sound.
    fmmetal — Uses FM synthesis to create a “Heavy Metal” sound.
    fmpercfl — Uses FM synthesis to create a percussive flute sound.
    fmrhode — Uses FM synthesis to create a Fender Rhodes electric piano sound.
    fmvoice — FM Singing Voice Synthesis
    fmwurlie — Uses FM synthesis to create a Wurlitzer electric piano sound.
    fof — Produces sinusoid bursts useful for formant and granular synthesis.
    fof2 — Produces sinusoid bursts including k-rate incremental indexing with each successive burst.
    fofilter — Formant filter.
    fog — Audio output is a succession of grains derived from data in a stored function table
    fold — Adds artificial foldover to an audio signal.
    follow — Envelope follower unit generator.
    follow2 — Another controllable envelope extractor.
    foscil — A basic frequency modulated oscillator.
    foscili — Basic frequency modulated oscillator with linear interpolation.
    fout — Outputs a-rate signals to an arbitrary number of channels.
    fouti — Outputs i-rate signals of an arbitrary number of channels to a specified file.
    foutir — Outputs i-rate signals from an arbitrary number of channels to a specified file.
    foutk — Outputs k-rate signals of an arbitrary number of channels to a specified file, in raw (headerless) format.
    fprintks — Similar to printks but prints to a file.
    fprints — Similar to prints but prints to a file.
    frac — Returns the fractional part of a decimal number.
    fractalnoise — A fractal noise generator.
    framebuffer — Read audio signals into 1 dimensional k-rate arrays and vice-versa with a specified buffer size.
    freeverb — Opcode version of Jezar's Freeverb
    ftchnls — Returns the number of channels in a stored function table.
    ftconv — Low latency multichannel convolution, using a function table as impulse response source.
    ftcps — Returns the base frequency of a stored function table in Hz.
    ftfree — Deletes function table.
    ftgen — Generate a score function table from within the orchestra.
    ftgenonce — Generate a function table from within an instrument definition, without duplication of data.
    ftgentmp — Generate a score function table from within the orchestra, which is deleted at the end of the note.
    ftlen — Returns the size of a stored function table.
    ftload — Load a set of previously-allocated tables from a file.
    ftloadk — Load a set of previously-allocated tables from a file.
    ftlptim — Returns the loop segment start-time of a stored function table number.
    ftmorf — Morphs between multiple ftables as specified in a list.
    ftsamplebank — Reads a directory for sound files.
    ftsave — Save a set of previously-allocated tables to a file.
    ftsavek — Save a set of previously-allocated tables to a file.
    ftsr — Returns the sampling-rate of a stored function table.
    gain — Adjusts the amplitude audio signal according to a root-mean-square value.
    gainslider — An implementation of a logarithmic gain curve which is similar to the gainslider~ object from Cycling 74 Max / MSP.
    gauss — Gaussian distribution random number generator.
    gaussi — Gaussian distribution random number generator with interpolation.
    gausstrig — Random impulses around a certain frequency.
    gbuzz — Output is a set of harmonically related cosine partials.
    genarray — Generate a vector with an arithmetic sequence.
    genarray_i — Generate a vector with an arithmetic sequence.
    gendy — Dynamic stochastic approach to waveform synthesis conceived by Iannis Xenakis.
    gendyc — Dynamic stochastic approach to waveform synthesis using cubic interpolation.
    gendyx — Variation of the dynamic stochastic approach to waveform synthesis conceived by Iannis Xenakis.
    getcfg — Return Csound settings.
    getrow — Gets a given row from a 2-dimensional array as a vector.
    getseed — Reads the global seed value.
    gogobel — Audio output is a tone related to the striking of a cow bell or similar.
    goto — Transfer control on every pass.
    grain — Generates granular synthesis textures.
    grain2 — Easy-to-use granular synthesis texture generator.
    grain3 — Generate granular synthesis textures with more user control.
    granule — A more complex granular synthesis texture generator.
    guiro — Semi-physical model of a guiro sound.
    harmon — Analyze an audio input and generate harmonizing voices in synchrony.
    harmon2 — Analyze an audio input and generate harmonizing voices in synchrony with formants preserved.
    hdf5read — Read signals and arrays from an hdf5 file.
    hdf5write — Write signals and arrays to an hdf5 file.
    hilbert — A Hilbert transformer.
    hrtfearly — Generates 3D binaural audio with high-fidelity early reflections in a parametric room using a Phase Truncation algorithm.
    hrtfmove — Generates dynamic 3d binaural audio for headphones using magnitude interpolation and phase truncation.
    hrtfmove2 — Generates dynamic 3d binaural audio for headphones using a Woodworth based spherical head model with improved low frequency phase accuracy.
    hrtfreverb — A binaural, dynamic FDN based diffuse-field reverberator. The opcode works independently as an efficient, flexible reverberator.
    hrtfstat — Generates static 3d binaural audio for headphones using a Woodworth based spherical head model with improved low frequency phase accuracy.
    hsboscil — An oscillator which takes tonality and brightness as arguments.
    hvs1 — Allows one-dimensional Hyper Vectorial Synthesis (HVS) controlled by externally-updated k-variables.
    hvs2 — Allows two-dimensional Hyper Vectorial Synthesis (HVS) controlled by externally-updated k-variables.
    hvs3 — Allows three-dimensional Hyper Vectorial Synthesis (HVS) controlled by externally-updated k-variables.
    i — Returns an init-type equivalent of a k-rate argument, or directly returns an i-rate argument.
    if — Branches conditionally at initialization or during performance time.
    fftinv — Complex-to-complex Inverse Fast Fourier Transform.
    igoto — Transfer control during the i-time pass.
    ihold — Creates a held note.
    imagecreate — Create an empty image of a given size.
    imagefree — Frees memory allocated for a previously loaded or created image.
    imagegetpixel — Return the RGB pixel values of a previously opened or created image.
    imageload — Load an image.
    imagesave — Save a previously created image.
    imagesetpixel — Set the RGB value of a pixel inside a previously opened or created image.
    imagesize — Return the width and height of a previously opened or created image.
    in — Reads mono audio data from an external device or stream.
    in32 — Reads a 32-channel audio signal from an external device or stream.
    inch — Reads from numbered channels in an external audio signal or stream.
    inh — Reads six-channel audio data from an external device or stream.
    init — Puts the value of the i-time expression into a k-, a-rate or t- variable.
    initc14 — Initializes the controllers used to create a 14-bit MIDI value.
    initc21 — Initializes the controllers used to create a 21-bit MIDI value.
    initc7 — Initializes the controller used to create a 7-bit MIDI value.
    inleta — Receives an arate signal into an instrument through a named port.
    inletk — Receives a krate signal into an instrument from a named port.
    inletkid — Receives a krate signal into an instrument from a named port.
    inletf — Receives an frate signal (fsig) into an instrument from a named port.
    inletv — Receives an arate array signal into an instrument through a named port.
    ino — Reads eight-channel audio data from an external device or stream.
    inq — Reads quad audio data from an external device or stream.
    inrg — Allow input from a range of adjacent audio channels from the audio input device
    ins — Reads stereo audio data from an external device or stream.
    insremot — An opcode which can be used to implement a remote orchestra. This opcode will send note events from a source machine to one destination.
    insglobal — An opcode which can be used to implement a remote orchestra. This opcode will send note events from a source machine to many destinations.
    instr — Starts an instrument block.
    int — Extracts an integer from a decimal number.
    integ — Modify a signal by integration.
    interp — Converts a control signal to an audio signal using linear interpolation.
    invalue — Reads a k-rate signal from a user-defined channel.
    inx — Reads a 16-channel audio signal from an external device or stream.
    inz — Reads multi-channel audio samples into a ZAK array from an external device or stream.
    JackoAudioIn — Receives an audio signal from a Jack port.
    JackoAudioInConnect — Creates an audio connection from a Jack port to Csound.
    JackoAudioOut — Sends an audio signal to a Jack port.
    JackoAudioOutConnect — Creates an audio connection from Csound to a Jack port.
    JackoFreewheel — Turns Jack's freewheeling mode on or off.
    JackoInfo — Prints information about the Jack system.
    JackoInit — Initializes Csound as a Jack client.
    JackoMidiInConnect — Creates a MIDI connection from a Jack port to Csound.
    JackoMidiOutConnect — Creates a MIDI connection from Csound to a Jack port.
    JackoMidiOut — Sends a MIDI channel message to a Jack port.
    JackoNoteOut — Sends a MIDI channel message to a Jack port.
    JackoOn — Enables or disables all Jack ports.
    JackoTransport — Control the Jack transport.
    jacktransport — Start/stop jack_transport and can optionally relocate the playback head.
    jitter — Generates a segmented line whose segments are randomly generated.
    jitter2 — Generates a segmented line with user-controllable random segments.
    joystick — Reads data from a joystick controller.
    jspline — A jitter-spline generator.
    k — Converts a i-rate parameter to an k-rate value. Or converts an a-rate value to a k-rate value by down-sampling.
    kgoto — Transfer control during the performance-time passes.
    kr — Sets the control rate.
    ksmps — Sets the number of samples in a control period.
    lenarray — Evaluates the size or shape length of an array.
    lfo — A low frequency oscillator of various shapes.
    limit — Sets the lower and upper limits of the value it processes.
    line — Trace a straight line between specified points.
    linen — Applies a straight line rise and decay pattern to an input amp signal.
    linenr — The linen opcode extended with a final release segment.
    lineto — Generate glissandos starting from a control signal.
    linrand — Linear distribution random number generator (positive values only).
    linseg — Trace a series of line segments between specified points.
    linsegb — Trace a series of line segments between specified absolute points.
    linsegr — Trace a series of line segments between specified points including a release segment.
    locsend — Distributes the audio signals of a previous locsig opcode.
    locsig — Takes an input signal and distributes between 2 or 4 channels.
    log — Returns a natural log of a number, or an array (with optional arbitrary base).
    log10 — Returns a base 10 log.
    log2 — Returns a base 2 log.
    logbtwo — Performs a logarithmic base two calculation.
    logcurve — This opcode implements a formula for generating a normalised logarithmic curve in range 0 - 1. It is based on the Max / MSP work of Eric Singer (c) 1994.
    loop_ge — Looping constructions.
    loop_gt — Looping constructions.
    loop_le — Looping constructions.
    loop_lt — Looping constructions.
    loopseg — Generate control signal consisting of linear segments delimited by two or more specified points.
    loopsegp — Control signals based on linear segments.
    looptseg — Generate control signal consisting of exponential or linear segments delimited by two or more specified points.
    loopxseg — Generate control signal consisting of exponential segments delimited by two or more specified points.
    lorenz — Implements the Lorenz system of equations.
    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.
    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.
    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.
    loscil — Read sampled sound from a table.
    loscil3 — Read sampled sound from a table using cubic interpolation.
    loscilx — Read multi-channel sampled sound from a table.
    lowpass2 — A resonant lowpass filter.
    lowres — Another resonant lowpass filter.
    lowresx — Simulates layers of serially connected resonant lowpass filters.
    lpf18 — A 3-pole sweepable resonant lowpass filter.
    lpfreson — Resynthesises a signal from the data passed internally by a previous lpread, applying formant shifting.
    lphasor — Generates a table index for sample playback
    lpinterp — Computes a new set of poles from the interpolation between two analysis.
    lposcil — Read sampled sound from a table with looping and high precision.
    lposcil3 — Read sampled sound from a table with high precision and cubic interpolation.
    lposcila — Read sampled sound from a table with looping and high precision.
    lposcilsa — Read stereo sampled sound from a table with looping and high precision.
    lposcilsa2 — Read stereo sampled sound from a table with looping and high precision.
    lpread — Reads a control file of time-ordered information frames.
    lpreson — Resynthesises a signal from the data passed internally by a previous lpread.
    lpshold — Generate control signal consisting of held segments.
    lpsholdp — Control signals based on held segments.
    lpslot — Selects the slot to be use by further lp opcodes.
    lua_exec — Executes an arbitrary block of Lua code from the Csound orchestra.
    lua_opdef — Define an opcode in Lua at i-rate. The opcode can take any number of output and/or input arguments of any type.
    lua_opcall — Calls a Lua opcode at i-rate only. Any number of output and/or input arguments may be passed. All arguments must be passed on the right-hand side. Outputs are returned in the argument.
    mac — Multiplies and accumulates a- and k-rate signals.
    maca — Multiply and accumulate a-rate signals only.
    madsr — Calculates the classical ADSR envelope using the linsegr mechanism.
    mags — Obtains the magnitudes of a complex-number array
    mandel — Mandelbrot set
    mandol — An emulation of a mandolin.
    maparray — Apply a function to every element of a vector.
    marimba — Physical model related to the striking of a wooden block.
    massign — Assigns a MIDI channel number to a Csound instrument.
    max — Produces a signal that is the maximum of any number of input signals.
    maxabs — Produces a signal that is the maximum of the absolute values of any number of input signals.
    maxabsaccum — Accumulates the maximum of the absolute values of audio signals.
    maxaccum — Accumulates the maximum value of audio signals.
    maxalloc — Limits the number of allocations of an instrument.
    max_k — Local maximum (or minimum) value of an incoming asig signal
    maxarray — returns the maximum value in an array.
    mclock — Sends a MIDI CLOCK message.
    mdelay — A MIDI delay opcode.
    median — A median filter, a variant FIR lowpass filter.
    mediank — A median filter, a variant FIR lowpass filter.
    metro — Trigger Metronome
    midglobal — An opcode which can be used to implement a remote midi orchestra. This opcode will broadcast the midi events to all the machines involved in the remote concert.
    midic14 — Allows a floating-point 14-bit MIDI signal scaled with a minimum and a maximum range.
    midic21 — Allows a floating-point 21-bit MIDI signal scaled with a minimum and a maximum range.
    midic7 — Allows a floating-point 7-bit MIDI signal scaled with a minimum and a maximum range.
    midichannelaftertouch — Gets a MIDI channel's aftertouch value.
    midichn — Returns the MIDI channel number from which the note was activated.
    midicontrolchange — Gets a MIDI control change value.
    midictrl — Get the current value (0-127) of a specified MIDI controller.
    mididefault — Changes values, depending on MIDI activation.
    midiin — Returns a generic MIDI message received by the MIDI IN port.
    midifilestatus — Returns the playback status of MIDI file input.
    midinoteoff — Gets a MIDI noteoff value.
    midinoteoncps — Gets a MIDI note number as a cycles-per-second frequency.
    midinoteonkey — Gets a MIDI note number value.
    midinoteonoct — Gets a MIDI note number value as octave-point-decimal value.
    midinoteonpch — Gets a MIDI note number as a pitch-class value.
    midion2 — Sends noteon and noteoff messages to the MIDI OUT port.
    midion — Generates MIDI note messages at k-rate.
    midiout — Sends a generic MIDI message to the MIDI OUT port.
    midipitchbend — Gets a MIDI pitchbend value.
    midipolyaftertouch — Gets a MIDI polyphonic aftertouch value.
    midiprogramchange — Gets a MIDI program change value.
    miditempo — Returns the current tempo at k-rate, of either the MIDI file (if available) or the score
    midremot — An opcode which can be used to implement a remote midi orchestra. This opcode will send midi events from a source machine to one destination.
    min — Produces a signal that is the minimum of any number of input signals.
    minabs — Produces a signal that is the minimum of the absolute values of any number of input signals.
    minabsaccum — Accumulates the minimum of the absolute values of audio signals.
    minaccum — Accumulates the minimum value of audio signals.
    mincer — Phase-locked vocoder processing.
    minarray — returns the minimum value in an array.
    mirror — Reflects the signal that exceeds the low and high thresholds.
    MixerSetLevel — Sets the level of a send to a buss.
    MixerSetLevel_i — Sets the level of a send to a buss.
    MixerGetLevel — Gets the level of a send to a buss.
    MixerSend — Mixes an arate signal into a channel of a buss.
    MixerReceive — Receives an arate signal from a channel of a buss.
    MixerClear — Resets all channels of a buss to 0.
    mode — A filter that simulates a mass-spring-damper system
    modmatrix — Modulation matrix opcode with optimizations for sparse matrices.
    monitor — Returns the audio spout frame.
    moog — An emulation of a mini-Moog synthesizer.
    moogladder — Moog ladder lowpass filter.
    moogladder2 — Moog ladder lowpass filter.
    moogvcf — A digital emulation of the Moog diode ladder filter configuration.
    moogvcf2 — A digital emulation of the Moog diode ladder filter configuration.
    moscil — Sends a stream of the MIDI notes.
    mp3in — Reads mono or stereo audio data from an external MP3 file.
    mp3len — Returns the length of an MP3 sound file.
    mp3scal — Phase-locked vocoder processing with onset detection/processing, 'tempo-scaling'.
    mpulse — Generates a set of impulses.
    mrtmsg — Send system real-time messages to the MIDI OUT port.
    multitap — Multitap delay line implementation.
    mute — Mutes/unmutes new instances of a given instrument.
    mvchpf — Moog voltage-controlled highpass filter emulation.
    mvclpf1 — Moog voltage-controlled lowpass filter emulation.
    mvclpf2 — Moog voltage-controlled lowpass filter emulation.
    mvclpf3 — Moog voltage-controlled lowpass filter emulation.
    mvclpf4 — Moog voltage-controlled lowpass filter emulation.
    mxadsr — Calculates the classical ADSR envelope using the expsegr mechanism.
    nchnls — Sets the number of channels of audio output.
    nchnls_hw — Returns the number of audio channels in the underlying hardware.
    nchnls_i — Sets the number of channels of audio input.
    nestedap — Three different nested all-pass filters.
    nlfilt — A filter with a non-linear effect.
    nlfilt2 — A filter with a non-linear effect and blowup protection.
    noise — A white noise generator with an IIR lowpass filter.
    noteoff — Send a noteoff message to the MIDI OUT port.
    noteon — Send a noteon message to the MIDI OUT port.
    noteondur2 — Sends a noteon and a noteoff MIDI message both with the same channel, number and velocity.
    noteondur — Sends a noteon and a noteoff MIDI message both with the same channel, number and velocity.
    notnum — Get a note number from a MIDI event.
    nreverb — A reverberator consisting of 6 parallel comb-lowpass filters.
    nrpn — Sends a Non-Registered Parameter Number to the MIDI OUT port.
    nsamp — Returns the number of samples loaded into a stored function table number.
    nstance — Schedules a new instrument instance, storing the instance handle in a variable.
    nstrnum — Returns the number of a named instrument.
    ntrpol — Calculates the weighted mean value of two input signals.
    octave — Calculates a factor to raise/lower a frequency by a given amount of octaves.
    octcps — Converts a cycles-per-second value to octave-point-decimal.
    octmidi — Get the note number, in octave-point-decimal units, of the current MIDI event.
    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.
    octmidinn — Converts a Midi note number value to octave-point-decimal.
    octpch — Converts a pitch-class value to octave-point-decimal.
    olabuffer — Sum overlapping frames of audio as k-rate arrays and read as an audio signal
    opcode — Defines the start of user-defined opcode block.
    oscbnk — Mixes the output of any number of oscillators.
    oscil1 — Accesses table values by incremental sampling.
    oscil1i — Accesses table values by incremental sampling with linear interpolation.
    oscil3 — A simple oscillator with cubic interpolation.
    oscil — A simple oscillator.
    oscili — A simple oscillator with linear interpolation.
    oscilikt — A linearly interpolated oscillator that allows changing the table number at k-rate.
    osciliktp — A linearly interpolated oscillator that allows allows phase modulation.
    oscilikts — A linearly interpolated oscillator with sync status that allows changing the table number at k-rate.
    osciln — Accesses table values at a user-defined frequency.
    oscils — A simple, fast sine oscillator
    oscilx — Same as the osciln opcode.
    OSCinit — Start a listening process for OSC messages to a particular port.
    OSClisten — Listen for OSC messages to a particular path.
    OSCsend — Sends data to other processes using the OSC protocol
    out32 — Writes 32-channel audio data to an external device or stream.
    out — Writes audio data to an external device or stream.
    outc — Writes audio data with an arbitrary number of channels to an external device or stream.
    outch — Writes multi-channel audio data, with user-controllable channels, to an external device or stream.
    outh — Writes 6-channel audio data to an external device or stream.
    outiat — Sends MIDI aftertouch messages at i-rate.
    outic14 — Sends 14-bit MIDI controller output at i-rate.
    outic — Sends MIDI controller output at i-rate.
    outipat — Sends polyphonic MIDI aftertouch messages at i-rate.
    outipb — Sends MIDI pitch-bend messages at i-rate.
    outipc — Sends MIDI program change messages at i-rate
    outkat — Sends MIDI aftertouch messages at k-rate.
    outkc14 — Sends 14-bit MIDI controller output at k-rate.
    outkc — Sends MIDI controller messages at k-rate.
    outkpat — Sends polyphonic MIDI aftertouch messages at k-rate.
    outkpb — Sends MIDI pitch-bend messages at k-rate.
    outkpc — Sends MIDI program change messages at k-rate.
    outleta — Sends an arate signal out from an instrument to a named port.
    outletf — Sends a frate signal (fsig) out from an instrument to a named port.
    outletk — Sends a krate signal out from an instrument to a named port.
    outletkid — Sends a krate signal out from an instrument to a named port.
    outletv — Sends an arate array signal out from an instrument to a named port.
    outo — Writes 8-channel audio data to an external device or stream.
    outq1 — Writes samples to quad channel 1 of an external device or stream.
    outq2 — Writes samples to quad channel 2 of an external device or stream.
    outq3 — Writes samples to quad channel 3 of an external device or stream.
    outq4 — Writes samples to quad channel 4 of an external device or stream.
    outq — Writes 4-channel audio data to an external device or stream.
    outrg — Allow output to a range of adjacent audio channels on the audio output device
    outs1 — Writes samples to stereo channel 1 of an external device or stream.
    outs2 — Writes samples to stereo channel 2 of an external device or stream.
    outs — Writes stereo audio data to an external device or stream.
    outvalue — Sends an i-rate or k-rate signal or string to a user-defined channel.
    outx — Writes 16-channel audio data to an external device or stream.
    outz — Writes multi-channel audio data from a ZAK array to an external device or stream.
    p5gconnect — Reads data from a P5 Glove controller.
    p5gdata — Reads data fields from an external P5 Glove.
    p — Show the value in a given p-field.
    pan2 — Distribute an audio signal across two channels.
    pan — Distribute an audio signal amongst four channels.
    pareq — Implementation of Zoelzer's parametric equalizer filters.
    partials — Partial track spectral analysis.
    partikkel — Granular synthesizer with "per grain" control over many of its parameters. Has a sync input to sychronize its internal grain scheduler clock to an external clock source.
    partikkelsync — Outputs partikkel's grain scheduler clock pulse and phase to synchronize several instances of the partikkel opcode to the same clock source.
    passign — Assigns a range of p-fields to ivariables.
    paulstretch — Extreme time-stretching algorithm by Nasca Octavian Paul.
    pcauchy — Cauchy distribution random number generator (positive values only).
    pchbend — Get the current pitch-bend value for this channel.
    pchmidi — Get the note number of the current MIDI event, expressed in pitch-class units.
    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.
    pchmidinn — Converts a Midi note number value to octave point pitch-class units.
    pchoct — Converts an octave-point-decimal value to pitch-class.
    pconvolve — Convolution based on a uniformly partitioned overlap-save algorithm
    pcount — Returns the number of pfields belonging to a note event.
    pdclip — Performs linear clipping on an audio signal or a phasor.
    pdhalf — Distorts a phasor for reading the two halves of a table at different rates.
    pdhalfy — Distorts a phasor for reading two unequal portions of a table in equal periods.
    peak — Maintains the output equal to the highest absolute value received.
    pgmassign — Assigns an instrument number to a specified MIDI program.
    phaser1 — First-order allpass filters arranged in a series.
    phaser2 — Second-order allpass filters arranged in a series.
    phasor — Produce a normalized moving phase value.
    phasorbnk — Produce an arbitrary number of normalized moving phase values.
    phs — Obtains the phases of a complex-number array
    pindex — Returns the value of a specified pfield.
    pinker — Generates pink noise.
    pinkish — Generates approximate pink noise.
    pitch — Tracks the pitch of a signal.
    pitchamdf — Follows the pitch of a signal based on the AMDF method.
    planet — Simulates a planet orbiting in a binary star system.
    platerev — Models the reverberation of a metal plate.
    plltrack — Tracks the pitch of a signal.
    pluck — Produces a naturally decaying plucked string or drum sound.
    poisson — Poisson distribution random number generator (positive values only).
    pol2rect — Polar to rectangular format conversion.
    polyaft — Returns the polyphonic after-touch pressure of the selected note number.
    polynomial — Efficiently evaluates a polynomial of arbitrary order.
    port — Applies portamento to a step-valued control signal.
    portk — Applies portamento to a step-valued control signal.
    poscil3 — High precision oscillator with cubic interpolation.
    poscil — High precision oscillator.
    pow — Computes one argument to the power of another argument.
    powershape — Waveshapes a signal by raising it to a variable exponent.
    powoftwo — Performs a power-of-two calculation.
    prealloc — Creates space for instruments but does not run them.
    prepiano — Creates a tone similar to a piano string prepared in a Cageian fashion.
    print — Displays the values init (i-rate) variables.
    printf — printf-style formatted output
    printk2 — Prints a new value every time a control variable changes.
    printk — Prints one k-rate value at specified intervals.
    printks — Prints at k-rate using a printf() style syntax.
    printks2 — Prints a new value every time a control variable changes using a printf() style syntax.
    prints — Prints at init-time using a printf() style syntax.
    product — Multiplies any number of a-rate signals.
    pset — Defines and initializes numeric arrays at orchestra load time.
    ptable — Accesses table values by direct indexing.
    ptablei — Accesses table values by direct indexing with linear interpolation.
    ptable3 — Accesses table values by direct indexing with cubic interpolation.
    ptablew — Change the contents of existing function tables of any length.
    ptrack — Tracks the pitch of a signal.
    puts — Print a string constant or variable
    pvadd — Reads from a pvoc file and uses the data to perform additive synthesis.
    pvbufread — Reads from a phase vocoder analysis file and makes the retrieved data available.
    pvcross — Applies the amplitudes from one phase vocoder analysis file to the data from a second file.
    pvinterp — Interpolates between the amplitudes and frequencies of two phase vocoder analysis files.
    pvoc — Implements signal reconstruction using an fft-based phase vocoder.
    pvread — Reads from a phase vocoder analysis file and returns the frequency and amplitude from a single analysis channel or bin.
    pvsadsyn — Resynthesize using a fast oscillator-bank.
    pvsanal — Generate an fsig from a mono audio source ain, using phase vocoder overlap-add analysis.
    pvsarp — Arpeggiate the spectral components of a streaming pv signal.
    pvsbandp — A band pass filter working in the spectral domain.
    pvsbandr — A band reject filter working in the spectral domain.
    pvsbin — Obtain the amp and freq values off a PVS signal bin.
    pvsblur — Average the amp/freq time functions of each analysis channel for a specified time.
    pvsbuffer — This opcode creates and writes to a circular buffer for f-signals (streaming PV signals).
    pvsbufread — This opcode reads a circular buffer of f-signals (streaming PV signals).
    pvsbufread2 — This opcode reads a circular buffer of f-signals (streaming PV signals), with binwise additional delays.
    pvscale — Scale the frequency components of a pv stream.
    pvscent — Calculate the spectral centroid of a signal.
    pvsceps — Calculate the cepstrum of a pvs input, optionally liftering coefficients.
    pvscross — Performs cross-synthesis between two source fsigs.
    pvsdemix — Spectral azimuth-based de-mixing of stereo sources.
    pvsdiskin — Read a selected channel from a PVOC-EX analysis file.
    pvsdisp — Displays a PVS signal as an amplitude vs. freq graph.
    pvsfilter — Multiply amplitudes of a pvoc stream by those of a second pvoc stream, with dynamic scaling.
    pvsfread — Read a selected channel from a PVOC-EX analysis file.
    pvsfreeze — Freeze the amplitude and frequency time functions of a pv stream according to a control-rate trigger.
    pvsftr — Reads amplitude and/or frequency data from function tables.
    pvsftw — Writes amplitude and/or frequency data to function tables.
    pvsfwrite — Write a fsig to a PVOCEX file.
    pvsgain — Scale the amplitude of a pv stream.
    pvshift — Shift the frequency components of a pv stream, stretching/compressing its spectrum.
    pvsifd — Instantaneous Frequency Distribution, magnitude and phase analysis.
    pvsinfo — Get information from a PVOC-EX formatted source.
    pvsinit — Initialise a spectral (f) variable to zero.
    pvsin — Retrieve an fsig from the input software bus; a pvs equivalent to chani.
    pvslock — Frequency lock an input fsig
    pvsmaska — Modify amplitudes using a function table, with dynamic scaling.
    pvsmix — Mix 'seamlessly' two pv signals.
    pvsmorph — Performs morphing (or interpolation) between two source fsigs.
    pvsmooth — Smooth the amplitude and frequency time functions of a pv stream using parallel 1st order lowpass IIR filters with time-varying cutoff frequency.
    pvsout — Write a fsig to the pvs output bus.
    pvsosc — PVS-based oscillator simulator.
    pvspitch — Track the pitch and amplitude of a PVS signal.
    pvstanal — Phase vocoder analysis processing with onset detection/processing.
    pvstencil — Transforms a pvoc stream according to a masking function table.
    pvsvoc — Combine the spectral envelope of one fsig with the excitation (frequencies) of another.
    pvsynth — Resynthesise using a FFT overlap-add.
    pvswarp — Warp the spectral envelope of a PVS signal
    pvs2tab — Copies spectral data to k-rate arrays (or t-variables). Also known as pvs2array.
    pyassign Opcodes — Assign the value of the given Csound variable to a Python variable possibly destroying its previous content.
    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.
    pyeval Opcodes — Evaluate a generic Python expression and store the result in a Csound variable at k-time or i-time (i suffix).
    pyexec Opcodes — Execute a script from a file at k-time or i-time (i suffix).
    pyinit Opcodes — Initialize the Python interpreter.
    pyrun Opcodes — Run a Python statement or block of statements.
    pwd — Asks the underlying operating system for the current directory name as a string.
    qinf — Questions whether the argument is a infinite number
    qnan — Questions whether the argument is not a number
    r2c — Real to complex format conversion.
    rand — Generates a controlled random number series.
    randh — Generates random numbers and holds them for a period of time.
    randi — Generates a controlled random number series with interpolation between each new number.
    random — Generates a controlled pseudo-random number series between min and max values.
    randomh — Generates random numbers with a user-defined limit and holds them for a period of time.
    randomi — Generates a user-controlled random number series with interpolation between each new number.
    rbjeq — Parametric equalizer and filter opcode with 7 filter types, based on algorithm by Robert Bristow-Johnson.
    readclock — Reads the value of an internal clock.
    readf — Read a line of text from an external file.
    readfi — Read a line of text from an external file.
    readk — Periodically reads an orchestra control-signal value from an external file.
    readk2 — Periodically reads two orchestra control-signal values from an external file.
    readk3 — Periodically reads three orchestra control-signal values from an external file.
    readk4 — Periodically reads four orchestra control-signal values from an external file.
    readscore — Read, preprocess and schedule a score from an input string.
    readscratch — returns a value stored in the instance of an instrument.
    rect2pol — Rectangular to polar format conversion.
    reinit — Suspends a performance while a special initialization pass is executed.
    release — Indicates whether a note is in its “release” stage.
    remoteport — Defines the port for use with the remote system.
    remove — Removes the definition of an instrument.
    repluck — Physical model of the plucked string.
    reson — A second-order resonant filter.
    resonk — A second-order resonant filter.
    resonr — A bandpass filter with variable frequency response.
    resonx — Emulates a stack of filters using the reson opcode.
    resonxk — Control signal resonant filter stack.
    resony — A bank of second-order bandpass filters, connected in parallel.
    resonz — A bandpass filter with variable frequency response.
    resyn — Streaming partial track additive synthesis with cubic phase interpolation with pitch control and support for timescale-modified input
    return — Returns a value from an instrument.
    reverb — Reverberates an input signal with a “natural room” frequency response.
    reverb2 — Same as the nreverb opcode.
    reverbsc — 8 delay line stereo FDN reverb, based on work by Sean Costello
    rewindscore — Rewinds the playback position of the current score performance.
    rezzy — A resonant low-pass filter.
    rfft — Fast Fourier Transform of a real-value array.
    rifft — Complex-to-real Inverse Fast Fourier Transform.
    rigoto — Transfers control during a reinit pass.
    rireturn — Terminates a reinit pass.
    rms — Determines the root-mean-square amplitude of an audio signal.
    rnd — Returns a random number in a unipolar range at the rate given by the input argument.
    rnd31 — 31-bit bipolar random opcodes with controllable distribution.
    round — Returns the integer value nearest to x ; if the fractional part of x is exactly 0.5, the direction of rounding is undefined.
    rspline — Generate random spline curves.
    rtclock — Read the real time clock from the operating system.
    S — Returns an S-type equivalent of an init-time or k-rate argument.
    s16b14 — Creates a bank of 16 different 14-bit MIDI control message numbers.
    s32b14 — Creates a bank of 32 different 14-bit MIDI control message numbers.
    samphold — Performs a sample-and-hold operation on its input.
    sandpaper — Semi-physical model of a sandpaper sound.
    scale — Arbitrary signal scaling.
    scalearray — Scales the values in a range of a vector (one dimensional array).
    scanhammer — Copies from one table to another with a gain control.
    scans — Generate audio output using scanned synthesis.
    scantable — A simpler scanned synthesis implementation.
    scanu — Compute the waveform and the wavetable for use in scanned synthesis.
    schedkwhen — Adds a new score event generated by a k-rate trigger.
    schedkwhennamed — Similar to schedkwhen but uses a named instrument at init-time.
    schedule — Adds a new score event.
    schedwhen — Adds a new score event.
    scoreline — Issues one or more score line events from an instrument.
    scoreline_i — Issues one or more score line events from an instrument at i-time.
    seed — Sets the global seed value.
    sekere — Semi-physical model of a sekere sound.
    semitone — Calculates a factor to raise/lower a frequency by a given amount of semitones.
    sense — Same as the sensekey opcode.
    sensekey — Returns the ASCII code of a key that has been pressed.
    serialBegin — Open a serial port.
    serialEnd — Close a serial port.
    serialFlush — Flush data from a serial port.
    serialPrint — Print data from a serial port.
    serialRead — Read data from a serial port.
    serialWrite_i — Write data to a serial port.
    serialWrite — Write data to a serial port.
    seqtime2 — Generates a trigger signal according to the values stored in a table.
    seqtime — Generates a trigger signal according to the values stored in a table.
    setctrl — Configurable slider controls for realtime user input.
    setksmps — Sets the local ksmps value in an instrument or user-defined opcode block
    setrow — Sets a given row of a 2-dimensional array from a vector.
    setscorepos — Sets the playback position of the current score performance to a given position.
    sfilist — Prints a list of all instruments of a previously loaded SoundFont2 (SF2) file.
    sfinstr3 — Plays a SoundFont2 (SF2) sample instrument, generating a stereo sound with cubic interpolation.
    sfinstr3m — Plays a SoundFont2 (SF2) sample instrument, generating a mono sound with cubic interpolation.
    sfinstr — Plays a SoundFont2 (SF2) sample instrument, generating a stereo sound.
    sfinstrm — Plays a SoundFont2 (SF2) sample instrument, generating a mono sound.
    sfload — Loads an entire SoundFont2 (SF2) sample file into memory.
    sflooper — Plays a SoundFont2 (SF2) sample preset, generating a stereo sound, with user-defined time-varying crossfade looping.
    sfpassign — Assigns all presets of a SoundFont2 (SF2) sample file to a sequence of progressive index numbers.
    sfplay3 — Plays a SoundFont2 (SF2) sample preset, generating a stereo sound with cubic interpolation.
    sfplay3m — Plays a SoundFont2 (SF2) sample preset, generating a mono sound with cubic interpolation.
    sfplay — Plays a SoundFont2 (SF2) sample preset, generating a stereo sound.
    sfplaym — Plays a SoundFont2 (SF2) sample preset, generating a mono sound.
    sfplist — Prints a list of all presets of a SoundFont2 (SF2) sample file.
    sfpreset — Assigns an existing preset of a SoundFont2 (SF2) sample file to an index number.
    shaker — Sounds like the shaking of a maraca or similar gourd instrument.
    shiftin — Shifts the contents of an audio variable into a 1-dimensional array.
    shiftout — Shifts the contents of a 1-dimensional array into an audio variable.
    signum — Performs a signum function.
    sin — Performs a sine function.
    sinh — Performs a hyperbolic sine function.
    sininv — Performs an arcsine function.
    sinsyn — Streaming partial track additive synthesis with cubic phase interpolation
    sleighbells — Semi-physical model of a sleighbell sound.
    slicearray — Take a slice of a vector.
    slider16 — Creates a bank of 16 different MIDI control message numbers.
    slider16f — Creates a bank of 16 different MIDI control message numbers, filtered before output.
    slider16table — Stores a bank of 16 different MIDI control messages to a table.
    slider16tablef — Stores a bank of 16 different MIDI control messages to a table, filtered before output.
    slider32 — Creates a bank of 32 different MIDI control message numbers.
    slider32f — Creates a bank of 32 different MIDI control message numbers, filtered before output.
    slider32table — Stores a bank of 32 different MIDI control messages to a table.
    slider32tablef — Stores a bank of 32 different MIDI control messages to a table, filtered before output.
    slider64 — Creates a bank of 64 different MIDI control message numbers.
    slider64f — Creates a bank of 64 different MIDI control message numbers, filtered before output.
    slider64table — Stores a bank of 64 different MIDI control messages to a table.
    slider64tablef — Stores a bank of 64 different MIDI control messages to a table, filtered before output.
    slider8 — Creates a bank of 8 different MIDI control message numbers.
    slider8f — Creates a bank of 8 different MIDI control message numbers, filtered before output.
    slider8table — Stores a bank of 8 different MIDI control messages to a table.
    slider8tablef — Stores a bank of 8 different MIDI control messages to a table, filtered before output.
    sliderKawai — Creates a bank of 16 different MIDI control message numbers from a KAWAI MM-16 midi mixer.
    sndloop — A sound looper with pitch control.
    sndwarp — Reads a mono sound sample from a table and applies time-stretching and/or pitch modification.
    sndwarpst — Reads a stereo sound sample from a table and applies time-stretching and/or pitch modification.
    sockrecv — Receives data from other processes using the low-level UDP or TCP protocols
    socksend — Sends data to other processes using the low-level UDP or TCP protocols
    soundin — Reads audio data from an external device or stream.
    space — Distributes an input signal among 4 channels using cartesian coordinates.
    spat3d — Positions the input sound in a 3D space and allows moving the sound at k-rate.
    spat3di — Positions the input sound in a 3D space with the sound source position set at i-time.
    spat3dt — Can be used to render an impulse response for a 3D space at i-time.
    spdist — Calculates distance values from xy coordinates.
    specaddm — Perform a weighted add of two input spectra.
    specdiff — Finds the positive difference values between consecutive spectral frames.
    specdisp — Displays the magnitude values of the spectrum.
    specfilt — Filters each channel of an input spectrum.
    spechist — Accumulates the values of successive spectral frames.
    specptrk — Estimates the pitch of the most prominent complex tone in the spectrum.
    specscal — Scales an input spectral datablock with spectral envelopes.
    specsum — Sums the magnitudes across all channels of the spectrum.
    spectrum — Generate a constant-Q, exponentially-spaced DFT.
    splitrig — Split a trigger signal
    sprintf — printf-style formatted output to a string variable.
    sprintfk — printf-style formatted output to a string variable at k-rate.
    spsend — Generates output signals based on a previously defined space opcode.
    sqrt — Returns a square root value.
    sr — Sets the audio sampling rate.
    statevar — State-variable filter.
    stix — Semi-physical model of a stick sound.
    STKBandedWG — STKBandedWG uses banded waveguide techniques to model a variety of sounds.
    STKBeeThree — STK Hammond-oid organ-like FM synthesis instrument.
    STKBlowBotl — STKBlowBotl uses a helmholtz resonator (biquad filter) with a polynomial jet excitation.
    STKBlowHole — STK clarinet physical model with one register hole and one tonehole.
    STKBowed — STKBowed is a bowed string instrument.
    STKBrass — STKBrass is a simple brass instrument.
    STKClarinet — STKClarinet uses a simple clarinet physical model.
    STKDrummer — STKDrummer is a drum sampling synthesizer.
    STKFlute — STKFlute uses a simple flute physical model.
    STKFMVoices — STKFMVoices is a singing FM synthesis instrument.
    STKHevyMetl — STKHevyMetl produces metal sounds.
    STKMandolin — STKMandolin produces mamdolin-like sounds.
    STKModalBar — STKModalBar is a resonant bar instrument.
    STKMoog — STKMoog produces moog-like swept filter sounds.
    STKPercFlut — STKPercFlut is a percussive flute FM synthesis instrument.
    STKPlucked — STKPlucked uses a plucked string physical model.
    STKResonate — STKResonate is a noise driven formant filter.
    STKRhodey — STK Fender Rhodes-like electric piano FM synthesis instrument.
    STKSaxofony — STKSaxofony is a faux conical bore reed instrument.
    STKShakers — STKShakers is an instrument that simulates environmental sounds or collisions of multiple independent sound producing objects.
    STKSimple — STKSimple is a wavetable/noise instrument.
    STKSitar — STKSitar uses a plucked string physical model.
    STKStifKarp — STKStifKarp is a plucked stiff string instrument.
    STKTubeBell — STKTubeBell is a tubular bell (orchestral chime) FM synthesis instrument.
    STKVoicForm — STKVoicForm is a four formant synthesis instrument.
    STKWhistle — STKWhistle produces whistle sounds.
    STKWurley — STKWurley simulates a Wurlitzer electric piano FM synthesis instrument.
    strchar — Return the ASCII code of a character in a string
    strchark — Return the ASCII code of a character in a string
    strcpy — Assign value to a string variable
    strcpyk — Assign value to a string variable (k-rate)
    strcat — Concatenate strings
    strcatk — Concatenate strings (k-rate)
    strcmp — Compare strings
    strcmpk — Compare strings
    streson — A string resonator with variable fundamental frequency.
    strfromurl — Set string variable to value read from an URL
    strget — Set string variable to value from strset table or string p-field
    strindex — Return the position of the first occurence of a string in another string
    strindexk — Return the position of the first occurence of a string in another string
    strlen — Return the length of a string
    strlenk — Return the length of a string
    strlower — Convert a string to lower case
    strlowerk — Convert a string to lower case
    strrindex — Return the position of the last occurence of a string in another string
    strrindexk — Return the position of the last occurence of a string in another string
    strset — Allows a string to be linked with a numeric value.
    strsub — Extract a substring
    strsubk — Extract a substring
    strtod — Converts a string to a float (i-rate).
    strtodk — Converts a string to a float (k-rate).
    strtol — Converts a string to a signed integer (i-rate).
    strtolk — Converts a string to a signed integer (k-rate).
    strupper — Convert a string to upper case
    strupperk — Convert a string to upper case
    subinstr — Creates and runs a numbered instrument instance.
    subinstrinit — Creates and runs a numbered instrument instance at init-time.
    sum — Sums any number of a-rate signals.
    sumarray — returns the sum of the elements in an array.
    svfilter — A resonant second order filter, with simultaneous lowpass, highpass and bandpass outputs.
    syncgrain — Synchronous granular synthesis.
    syncloop — Synchronous granular synthesis.
    syncphasor — Produces a normalized moving phase value with sync input and output.
    system — Call an external program via the system call
    tb — Table Read Access inside expressions.
    tab — Fast table opcodes.
    tabifd — Instantaneous Frequency Distribution, magnitude and phase analysis.
    table — Accesses table values by direct indexing.
    table3 — Accesses table values by direct indexing with cubic interpolation.
    tablecopy — Simple, fast table copy opcode.
    tablefilter — Filters a source table and writes result into a destination table.
    tablefilteri — Filters a source table and writes result into a destination table.
    tablegpw — Writes a table's guard point.
    tablei — Accesses table values by direct indexing with linear interpolation.
    tableicopy — Simple, fast table copy opcode.
    tableigpw — Writes a table's guard point.
    tableikt — Provides k-rate control over table numbers.
    tableimix — Mixes two tables.
    tableiw — Change the contents of existing function tables.
    tablekt — Provides k-rate control over table numbers.
    tablemix — Mixes two tables.
    tableng — Interrogates a function table for length.
    tablera — Reads tables in sequential locations.
    tableseg — Creates a new function table by making linear segments between values in stored function tables.
    tableshuffle — shuffles the content of a function table so that each element of the source table is put into a different random position.
    tablew — Change the contents of existing function tables.
    tablewa — Writes tables in sequential locations.
    tablewkt — Change the contents of existing function tables.
    tablexkt — Reads function tables with linear, cubic, or sinc interpolation.
    tablexseg — Creates a new function table by making exponential segments between values in stored function tables.
    tabmorph — Allow morphing between a set of tables.
    tabmorpha — Allow morphing between a set of tables at audio rate with interpolation.
    tabmorphak — Allow morphing between a set of tables at audio rate with interpolation.
    tabmorphi — Allow morphing between a set of tables with interpolation.
    tabplay — Playing-back control signals.
    tabrec — Recording of control signals.
    tabsum — Adding values in a range of a table.
    tab2pvs — Copies spectral data from k-rate arrays (or t-variables.). Also known as pvsfromarray.
    tambourine — Semi-physical model of a tambourine sound.
    tan — Performs a tangent function.
    tanh — Performs a hyperbolic tangent function.
    taninv — Performs an arctangent function.
    taninv2 — Returns an arctangent.
    tbvcf — Models some of the filter characteristics of a Roland TB303 voltage-controlled filter.
    tempest — Estimate the tempo of beat patterns in a control signal.
    tempo — Apply tempo control to an uninterpreted score.
    temposcal — Phase-locked vocoder processing with onset detection/processing, 'tempo-scaling'.
    tempoval — Reads the current value of the tempo.
    tigoto — Transfer control at i-time when a new note is being tied onto a previously held note
    timedseq — Time Variant Sequencer
    timeinstk — Read absolute time in k-rate cycles.
    timeinsts — Read absolute time in seconds.
    timek — Read absolute time in k-rate cycles.
    times — Read absolute time in seconds.
    timout — Conditional branch during p-time depending on elapsed note time.
    tival — Puts the value of the instrument's internal “tie-in” flag into the named i-rate variable.
    tlineto — Generate glissandos starting from a control signal.
    tone — A first-order recursive low-pass filter with variable frequency response.
    tonek — A first-order recursive low-pass filter with variable frequency response.
    tonex — Emulates a stack of filters using the tone opcode.
    trandom — Generates a controlled pseudo-random number series between min and max values according to a trigger.
    tradsyn — Streaming partial track additive synthesis
    transeg — Constructs a user-definable envelope.
    transegb — Constructs a user-definable envelope in absolute time.
    transegr — Constructs a user-definable envelope with extended release segment.
    trcross — Streaming partial track cross-synthesis.
    trfilter — Streaming partial track filtering.
    trhighest — Extracts the highest-frequency track from a streaming track input signal.
    trigger — Informs when a krate signal crosses a threshold.
    trigseq — Accepts a trigger signal as input and outputs a group of values.
    trirand — Triangular distribution random number generator
    trlowest — Extracts the lowest-frequency track from a streaming track input signal.
    trmix — Streaming partial track mixing.
    trscale — Streaming partial track frequency scaling.
    trshift — Streaming partial track frequency scaling.
    trsplit — Streaming partial track frequency splitting.
    turnoff — Enables an instrument to turn itself off or to turn an instance of another instrument off.
    turnoff2 — Turn off instance(s) of other instruments at performance time.
    turnon — Activate an instrument for an indefinite time.
    unirand — Uniform distribution random number generator (positive values only).
    until — A syntactic looping construction.
    unwrap — Applies a unwrapping operation to an array of phase values.
    upsamp — Modify a signal by up-sampling.
    urandom — truly random opcodes with controllable range.
    urd — A discrete user-defined-distribution random generator that can be used as a function.
    vactrol — Envelope follower unit generator.
    vadd — Adds a scalar value to a vector in a table.
    vadd_i — Adds a scalar value to a vector in a table.
    vaddv — Performs addition between two vectorial control signals.
    vaddv_i — Performs addition between two vectorial control signals at init time.
    vaget — Access values of the current buffer of an a-rate variable by indexing.
    valpass — Variably reverberates an input signal with a flat frequency response.
    vaset — Write value of into the current buffer of an a-rate variable by index.
    vbap — Distributes an audio signal among many channels.
    vbapmove — Distributes an audio signal among many channels with moving virtual sources.
    vbapg — Calculates the gains for a sound location between multiple channels.
    vbapgmove — Calculates the gains for a sound location between multiple channels with moving virtual sources.
    vbap16 — Distributes an audio signal among 16 channels.
    vbap16move — Distribute an audio signal among 16 channels with moving virtual sources.
    vbap4 — Distributes an audio signal among 4 channels.
    vbap4move — Distributes an audio signal among 4 channels with moving virtual sources.
    vbap8 — Distributes an audio signal among 8 channels.
    vbap8move — Distributes an audio signal among 8 channels with moving virtual sources.
    vbaplsinit — Configures VBAP output according to loudspeaker parameters.
    vbapz — Writes a multi-channel audio signal to a ZAK array.
    vbapzmove — Writes a multi-channel audio signal to a ZAK array with moving virtual sources.
    vcella — Cellular Automata
    vco — Implementation of a band limited, analog modeled oscillator.
    vco2 — Implementation of a band-limited oscillator using pre-calculated tables.
    vco2ft — Returns a table number at k-time for a given oscillator frequency and wavform.
    vco2ift — Returns a table number at i-time for a given oscillator frequency and wavform.
    vco2init — Calculates tables for use by vco2 opcode.
    vcomb — Variably reverberates an input signal with a “colored” frequency response.
    vcopy — Copies between two vectorial control signals
    vcopy_i — Copies a vector from one table to another.
    vdelay — An interpolating variable time delay.
    vdelay3 — A variable time delay with cubic interpolation.
    vdelayx — A variable delay opcode with high quality interpolation.
    vdelayxq — A 4-channel variable delay opcode with high quality interpolation.
    vdelayxs — A stereo variable delay opcode with high quality interpolation.
    vdelayxw — Variable delay opcodes with high quality interpolation.
    vdelayxwq — Variable delay opcodes with high quality interpolation.
    vdelayxws — Variable delay opcodes with high quality interpolation.
    vdelayk — k-rate variable time delay.
    vdivv — Performs division between two vectorial control signals
    vdivv_i — Performs division between two vectorial control signals at init time.
    vecdelay — Vectorial Control-rate Delay Paths
    veloc — Get the velocity from a MIDI event.
    vexp — Performs power-of operations between a vector and a scalar
    vexp_i — Performs power-of operations between a vector and a scalar
    vexpseg — Vectorial envelope generator
    vexpv — Performs exponential operations between two vectorial control signals
    vexpv_i — Performs exponential operations between two vectorial control signals at init time.
    vibes — Physical model related to the striking of a metal block.
    vibr — Easier-to-use user-controllable vibrato.
    vibrato — Generates a natural-sounding user-controllable vibrato.
    vincr — Accumulates audio signals.
    vlimit — Limiting and Wrapping Vectorial Signals
    vlinseg — Vectorial envelope generator
    vlowres — A bank of filters in which the cutoff frequency can be separated under user control.
    vmap — Maps elements from a vector according to indexes contained in another vector.
    vmirror — Limiting and Wrapping Vectorial Signals
    vmult — Multiplies a vector in a table by a scalar value.
    vmult_i — Multiplies a vector in a table by a scalar value.
    vmultv — Performs mutiplication between two vectorial control signals
    vmultv_i — Performs mutiplication between two vectorial control signals at init time.
    voice — An emulation of a human voice.
    vosim — Simple vocal simulation based on glottal pulses with formant characteristics.
    vphaseseg — Allows one-dimensional HVS (Hyper-Vectorial Synthesis).
    vport — Vectorial Control-rate Delay Paths
    vpow — Raises each element of a vector to a scalar power.
    vpow_i — Raises each element of a vector to a scalar power
    vpowv — Performs power-of operations between two vectorial control signals
    vpowv_i — Performs power-of operations between two vectorial control signals at init time.
    vpvoc — Implements signal reconstruction using an fft-based phase vocoder and an extra envelope.
    vrandh — Generates a vector of random numbers stored into a table, holding the values for a period of time.
    vrandi — Generate a sort of 'vectorial band-limited noise'
    vstaudio, vstaudiog — VST audio output.
    vstbankload — Loads parameter banks to a VST plugin.
    vstedit — Opens the GUI editor window for a VST plugin.
    vstinit — Load a VST plugin into memory for use with the other vst4cs opcodes.
    vstinfo — Displays the parameters and the programs of a VST plugin.
    vstmidiout — Sends MIDI information to a VST plugin.
    vstnote — Sends a MIDI note with definite duration to a VST plugin.
    vstparamset,vstparamget — Used for parameter comunication to and from a VST plugin.
    vstprogset — Loads parameter banks to a VST plugin.
    vsubv — Performs subtraction between two vectorial control signals
    vsubv_i — Performs subtraction between two vectorial control signals at init time.
    vtable1k — Read a vector (several scalars simultaneously) from a table.
    vtablei — Read vectors (from tables -or arrays of vectors).
    vtablek — Read vectors (from tables -or arrays of vectors).
    vtablea — Read vectors (from tables -or arrays of vectors).
    vtablewi — Write vectors (to tables -or arrays of vectors).
    vtablewk — Write vectors (to tables -or arrays of vectors).
    vtablewa — Write vectors (to tables -or arrays of vectors).
    vtabi — Read vectors (from tables -or arrays of vectors).
    vtabk — Read vectors (from tables -or arrays of vectors).
    vtaba — Read vectors (from tables -or arrays of vectors).
    vtabwi — Write vectors (to tables -or arrays of vectors).
    vtabwk — Write vectors (to tables -or arrays of vectors).
    vtabwa — Write vectors (to tables -or arrays of vectors).
    vwrap — Limiting and Wrapping Vectorial Signals
    waveset — A simple time stretch by repeating cycles.
    websocket — Read and write signals and arrays using a websocket connection.
    weibull — Weibull distribution random number generator (positive values only).
    wgbow — Creates a tone similar to a bowed string.
    wgbowedbar — A physical model of a bowed bar.
    wgbrass — Creates a tone related to a brass instrument.
    wgclar — Creates a tone similar to a clarinet.
    wgflute — Creates a tone similar to a flute.
    wgpluck — A high fidelity simulation of a plucked string.
    wgpluck2 — Physical model of the plucked string.
    wguide1 — A simple waveguide model consisting of one delay-line and one first-order lowpass filter.
    wguide2 — A model of beaten plate consisting of two parallel delay-lines and two first-order lowpass filters.
    while — A syntactic looping construction.
    wiiconnect — Reads data from a number of external Nintendo Wiimote controllers.
    wiidata — Reads data fields from a number of external Nintendo Wiimote controllers.
    wiirange — Sets scaling and range limits for certain Wiimote fields.
    wiisend — Sends data to one of a number of external Nintendo Wiimote controllers.
    window — Applies a window to an array.
    wrap — Wraps-around the signal that exceeds the low and high thresholds.
    writescratch — writes a value into the scratchpad of the instance of an instrument.
    wterrain — A simple wave-terrain synthesis opcode.
    xadsr — Calculates the classical ADSR envelope.
    xin — Passes variables to a user-defined opcode block,
    xout — Retrieves variables from a user-defined opcode block,
    xscanmap — Allows the position and velocity of a node in a scanned process to be read.
    xscansmap — Allows the position and velocity of a node in a scanned process to be read.
    xscans — Fast scanned synthesis waveform and the wavetable generator.
    xscanu — Compute the waveform and the wavetable for use in scanned synthesis.
    xtratim — Extend the duration of real-time generated events.
    xyin — Sense the cursor position in an output window
    zacl — Clears one or more variables in the za space.
    zakinit — Establishes zak space.
    zamod — Modulates one a-rate signal by a second one.
    zar — Reads from a location in za space at a-rate.
    zarg — Reads from a location in za space at a-rate, adds some gain.
    zaw — Writes to a za variable at a-rate without mixing.
    zawm — Writes to a za variable at a-rate with mixing.
    zfilter2 — Performs filtering using a transposed form-II digital filter lattice with radial pole-shearing and angular pole-warping.
    zir — Reads from a location in zk space at i-rate.
    ziw — Writes to a zk variable at i-rate without mixing.
    ziwm — Writes to a zk variable to an i-rate variable with mixing.
    zkcl — Clears one or more variables in the zk space.
    zkmod — Facilitates the modulation of one signal by another.
    zkr — Reads from a location in zk space at k-rate.
    zkw — Writes to a zk variable at k-rate without mixing.
    zkwm — Writes to a zk variable at k-rate with mixing.
  Score Statements and GEN Routines
    Score Statements
    a Statement (or Advance Statement) — Advance score time by a specified amount.
    b Statement — This statement resets the clock.
    e Statement — This statement may be used to mark the end of the last section of the score.
    f Statement (or Function Table Statement) — Causes a GEN subroutine to place values in a stored function table.
    i Statement (Instrument or Note Statement) — Makes an instrument active at a specific time and for a certain duration.
    m Statement (Mark Statement) — Sets a named mark in the score.
    n Statement — Repeats a section.
    q Statement — This statement may be used to quiet an instrument.
    r Statement (Repeat Statement) — Starts a repeated section.
    s Statement — Marks the end of a section.
    t Statement (Tempo Statement) — Sets the tempo.
    v Statement — Provides for locally variable time warping of score events.
    x Statement — Skip the rest of the current section.
    y Statement (or Seed Statement) — Set seed for random numbers.
    { Statement — Begins a non-sectional, nestable loop.
    } Statement — Ends a non-sectional, nestable loop.
    GEN Routines
    GEN01 — Transfers data from a soundfile into a function table.
    GEN02 — Transfers data from immediate pfields into a function table.
    GEN03 — Generates a stored function table by evaluating a polynomial.
    GEN04 — Generates a normalizing function.
    GEN05 — Constructs functions from segments of exponential curves.
    GEN06 — Generates a function comprised of segments of cubic polynomials.
    GEN07 — Constructs functions from segments of straight lines.
    GEN08 — Generate a piecewise cubic spline curve.
    GEN09 — Generate composite waveforms made up of weighted sums of simple sinusoids.
    GEN10 — Generate composite waveforms made up of weighted sums of simple sinusoids.
    GEN11 — Generates an additive set of cosine partials.
    GEN12 — Generates the log of a modified Bessel function of the second kind.
    GEN13 — Stores a polynomial whose coefficients derive from the Chebyshev polynomials of the first kind.
    GEN14 — Stores a polynomial whose coefficients derive from Chebyshevs of the second kind.
    GEN15 — Creates two tables of stored polynomial functions.
    GEN16 — Creates a table from a starting value to an ending value.
    GEN17 — Creates a step function from given x-y pairs.
    GEN18 — Writes composite waveforms made up of pre-existing waveforms.
    GEN19 — Generate composite waveforms made up of weighted sums of simple sinusoids.
    GEN20 — Generates functions of different windows.
    GEN21 — Generates tables of different random distributions.
    GEN23 — Reads numeric values from a text file.
    GEN24 — Reads numeric values from another allocated function-table and rescales them.
    GEN25 — Construct functions from segments of exponential curves in breakpoint fashion.
    GEN27 — Construct functions from segments of straight lines in breakpoint fashion.
    GEN28 — Reads a text file which contains a time-tagged trajectory.
    GEN30 — Generates harmonic partials by analyzing an existing table.
    GEN31 — Mixes any waveform specified in an existing table.
    GEN32 — Mixes any waveform, resampled with either FFT or linear interpolation.
    GEN33 — Generate composite waveforms by mixing simple sinusoids.
    GEN34 — Generate composite waveforms by mixing simple sinusoids.
    GEN40 — Generates a random distribution using a distribution histogram.
    GEN41 — Generates a random list of numerical pairs.
    GEN42 — Generates a random distribution of discrete ranges of values.
    GEN43 — Loads a PVOCEX file containing a PV analysis.
    GEN49 — Transfers data from an MP3 soundfile into a function table.
    GEN51 — This subroutine fills a table with a fully customized micro-tuning scale, in the manner of Csound opcodes cpstun, cpstuni and cpstmid.
    GEN52 — Creates an interleaved multichannel table from the specified source tables, in the format expected by the ftconv opcode.
    GENtanh — Generate a table with values on the tanh function.
    GENexp — Generate a table with values on the exp function.
    GENsone — Generate a table with values of the sone function.
    GENfarey — Fills a table with the Farey Sequence Fn of the integer n.
    GENwave — Generates a compactly supported wavelet function.
    GENpadsynth — Generate a sample table using the padsynth algorithm.
  Experimental Orchestra Opcodes and GEN Routines
    Experimental Orchestra Opcodes
    cudanal — Generate an fsig from a mono audio source ain, using phase vocoder overlap-add analysis and GPU hardware. Experimental and only available as source code at the moment.
    cudasynth — Synthesis by additive synthesis and inverse FFT. Experimental and only available as source code at the moment.
    cudasliding — Perform sliding phase vocoder algorithm with simplified transformational FM using GPU hardware. Experimental and only available as source code at the moment.
  Deprecated Orchestra Opcodes and GEN Routines
    Deprecated Orchestra Opcodes
    abetarand — Deprecated.
    abexprnd — Deprecated.
    acauchy — Deprecated.
    aexprand — Deprecated.
    agauss — Deprecated.
    agogobel — Deprecated.
    alinrand — Deprecated.
    apcauchy — Deprecated.
    apoisson — Deprecated.
    apow — Deprecated.
    array — Deprecated.
    atrirand — Deprecated.
    aunirand — Deprecated.
    aweibull — Deprecated.
    bformdec — Deprecated. Decodes an ambisonic B format signal.
    bformenc — Deprecated. Codes a signal into the ambisonic B format.
    clock — Deprecated.
    hrtfer — Creates 3D audio for two speakers.
    ibetarand — Deprecated.
    ibexprnd — Deprecated.
    icauchy — Deprecated.
    ictrl14 — Deprecated.
    ictrl21 — Deprecated.
    ictrl7 — Deprecated.
    iexprand — Deprecated.
    igauss — Deprecated.
    ilinrand — Deprecated.
    imidic14 — Deprecated.
    imidic21 — Deprecated.
    imidic7 — Deprecated.
    instimek — Deprecated.
    instimes — Deprecated.
    ioff — Deprecated.
    ion — Deprecated.
    iondur2 — Deprecated.
    iondur — Deprecated.
    ioutat — Deprecated.
    ioutc14 — Deprecated.
    ioutc — Deprecated.
    ioutpat — Deprecated.
    ioutpb — Deprecated.
    ioutpc — Deprecated.
    ipcauchy — Deprecated.
    ipoisson — Deprecated.
    ipow — Deprecated.
    is16b14 — Deprecated.
    is32b14 — Deprecated.
    islider16 — Deprecated.
    islider32 — Deprecated.
    islider64 — Deprecated.
    islider8 — Deprecated.
    itablecopy — Deprecated.
    itablegpw — Deprecated.
    itablemix — Deprecated.
    itablew — Deprecated.
    itrirand — Deprecated.
    iunirand — Deprecated.
    iweibull — Deprecated.
    kbetarand — Deprecated.
    kbexprnd — Deprecated.
    kcauchy — Deprecated.
    kdump2 — Deprecated.
    kdump3 — Deprecated.
    kdump4 — Deprecated.
    kdump — Deprecated.
    kexprand — Deprecated.
    kfilter2 — Deprecated.
    kgauss — Deprecated.
    klinrand — Deprecated.
    kon — Deprecated.
    koutat — Deprecated.
    koutc14 — Deprecated.
    koutc — Deprecated.
    koutpat — Deprecated.
    koutpb — Deprecated.
    koutpc — Deprecated.
    kpcauchy — Deprecated.
    kpoisson — Deprecated.
    kpow — Deprecated.
    kread2 — Deprecated.
    kread3 — Deprecated.
    kread4 — Deprecated.
    kread — Deprecated.
    ktableseg — Deprecated.
    ktrirand — Deprecated.
    kunirand — Deprecated.
    kweibull — Deprecated.
    sndload Loads a sound file into memory for use by loscilx
    peakk — Deprecated.
    pop — Pops values from the global stack. Deprecated.
    pop_f — Pops an f-sig frame from the global stack. Deprecated.
    push — Pushes a value into the global stack. Deprecated.
    push_f — Pushes an f-sig frame into the global stack. Deprecated.
    soundout — Deprecated. Writes audio output to a disk file.
    soundouts — Deprecated. Writes audio output to a disk file.
    stack — Initializes the stack. Deprecated.
    Deprecated Gen Routines
    GEN22 — Deprecated.
  The Utility Programs
    Directories.
    Soundfile Formats.
      Analysis File Generation (ATSA, CVANAL, HETRO, LPANAL, PVANAL)
      File Queries (SNDINFO)
      File Conversion (HET_IMPORT, HET_EXPORT, PVLOOK, PV_EXPORT, PV_IMPORT, SDIF2AD, SRCONV)
      Other Csound Utilities (CS, CSB64ENC, ENVEXT, EXTRACTOR, MAKECSD, MIXER, SCALE, MKDB)
  Cscore
    Events, Lists, and Operations
    Writing a Cscore Control Program
    Compiling a Cscore Program
    More Advanced Examples
  Csbeats
IV. Opcode Quick Reference
  Opcode Quick Reference
A. List of examples
B. Pitch Conversion
C. Sound Intensity Values
D. Formant Values
E. Modal Frequency Ratios
F. Window Functions
G. SoundFont2 File Format
H. Csound Double (64-bit) vs. Float (32-bit)
Glossary

|  | Next
|  | Preface