This is a repository of User-Defined Opcodes for the Csound music synthesis software. User-Defined Opcodes are opcodes for Csound created using Csound orchestra text. More information about User-Defined Opcodes can be found here.
- Signal Generators
- ADSD - An envelope generator modelling the classic analogue ADSD envelopes
- BufFiPl1 - Plays a mono sample from a GEN01 function table, including sample rate conversion
- BufFiPl2 - Plays a stereo sample from two GEN01 function tables, including sample rate conversion
- BufFiPl4 - Plays a four channel sample from four GEN01 function tables, including sample rate conversion
- BufFiPl8 - Plays an eight channel sample from eight GEN01 function tables, including sample rate conversion
- BufPlay1 - Plays audio from a mono buffer (function table), with different options
- BufPlay2 - Plays audio from a stereo buffer (two function tables), with different options
- FilePlay1 - Plays a mono signal from a mono or stereo soundfile
- FilePlay2 - Plays a stereo signal from a mono or stereo soundfile
- footarray - Interface for a foot array which outputs program change MIDI messages. Can be used with any MIDI program change capable device.
- GaussTrig - Outputs a-rate impulses around a certain frequency.
- Linek - performs a linear interpolation from one value to another value in a certain time whenever a trigger is received
- LpPhsr - creates a time pointer for loops
- msrOsc - Simple Generator
- p5glove - Unit generator for P5 data glove
- PartikkelSimpA - A simplified version of the Partikkel opcode, but with some additional parameters
- PartikkelSimpB - The same as PartikkelSimpA, but with a time pointer input
- pgmin - Read program change messages from MIDI input.
- RandomWalkA - Generate random walk at a-rate
- RandomWalkK - Generate random walk at k-rate
- rbatonPercPad - Senses trigger/whack strength as well as X and Y coordinates of the two batons in a Max Mathew's Radio Baton system.
- rbatonPot - Implements a sensor for the 4 pots, 2 footswitches and B15+ button on the Max Mathew's Radio Baton unit.
- rbatonXYZ - polls X, Y, and Z coordinates of a Max Mathew's Radio Baton.
- stereoGrain - Granular synthesis similar to granule but in stereo with control rate parameters and unlimited transpositions.
- vowgen - fof-based vocal generator with morfable vowels
- Signal Modifiers
- Effects
- Baboon - UDO wrapper for the babo opcode
- decimator - Sample rate / Bit depth reduce. Based on the work of Steven Cook. k-rate parameters.
- ensembleChorus - A stereo chorus opcode with multiple voices.
- freqShift - Detunes an audio signal
- PitchShifter - Delay-line pitchshifter
- SCReverb - 8 delay line stereo FDN reverb
- SigRec - A table-based signal recorder (looping sampler), with pitch control
- SigReverse - A table-based reversing opcode.
- trackerSplice - signal splicer
- Filters
- Fofilter - A formant filter version of the FOF opcode.
- Moogladder - An improved implementation of the Moog ladder filter
- Statevar - A digital version of the analogue state variable filter.
- tap_tubewarmth - tap_tubewarmth - A port of Tom Szilagyi's TAP TubeWarmth LADSPA plugin to a Csound User-Defined Opcode
- Vocoder - channel vocoder with user-specified number of bands
- vowel - vowel filter with morfable vowels
- Panning and Spatialization
- bformatQuad - Converts quadrophonic to b-format.
- bformatStereo - Converts stereo to b-format ambisonics.
- PanPotStereo - pans stereo input to stereo output
- pan_delay_and_filtered - Pan using delay and filters
- pan_equal_power - Equal Power Panning
- pan_gm2 - Equal Power Panning scheme defined by MIDI Association for GM2 in RP-036
- pan_simple - Simple Linear Pan
- pan_sin - Pan using Sin/Cos to create more even power between channels
- pan_sqrt - sqrt method for panning
- quadBformat - Converts b-format to quadrophonic.
- stereoAsymmetry - Side-only panning of a stereo signal
- stereoBalance - Stereo 'panning' using the balance technique.
- stereoBformat - Converts b-format ambisonics to uhj stereo.
- stereoMpan - Middle panorama panning of the 'M' component of a stereo signal
- stereoMS - Converts Stereo to MS and MS to Stereo.
- stereoRotate - Stereo 'panning' using the middle-side technique.
- stereoWidth - Changes the image width of a stereo signal
- declick - removes clicks from signal start and end
- Residual - extracts stochastic components (transients etc) from a sound (using csound 5 opcodes)
- Utilities
- ampdbN - Normalized conversion from db to amplitude.
- ampSlider - Converts a scaled (0-1) value to a value resembling a hardware mixer slider.
- BufCt1 - creates a function table of ilen seconds for recording
- BufCt2 - creates two function tables of ilen seconds for recording
- BufFiCt1 - creates a gen01 function table from a mono soundfile
- BufFiCt2 - creates two gen01 function table from a stereo soundfile
- BufFiCt4 - creates fout gen01 function table from a four channel soundfile
- BufFiCt8 - creates eight gen01 function table from an eight channel soundfile
- BufFiCtNd1 - creates a non deferred function table from a mono soundfile and returns its length
- BufFiCtNd2 - creates two non deferred function tables from a stereo soundfile and returns the length
- BufRec1 - Records in a mono buffer (function table)
- BufRec2 - Records in a stereo buffer (= two function tables)
- Counter - Step counter
- cpsmid - Converts MIDI Note Number to Cycles per second (Hz)
- deflutter - deflutter k-rate input (data smoothing)
- ExpCurve - Normalised exponential curve with variable steepness.
- F2M - Comverts a frequency to the next possible MIDI note number
- F2MC - converts a frequency to a MIDI.Cent note number
- FilDir - returns the directory of a file path
- FileToPvsBuf - Writes an audio file to a pvs buffer
- FilNam - returns the name of a file path
- FilSuf - returns the suffix of a filename or path, optional in lower case
- findPowerOfTwo - Given a value in seconds, finds a power of two size equal to or greater than it in samples
- flip - Flips an incoming floating point value at k-rate.
- FreqByCentTab - frequency calculation of a step of a scale which is defined by a list of cent values
- FreqByEqScale - frequency calculation for one step of an equal tempered scale
- FreqByRatioTab - frequency calculation of a step of a scale which is defined by a list of proportions
- ftreverse - reverses an ftable's contents in place at k-rate
- gainslider - Logarithmic gain slider
- getFrequency - Returns frequency whether being passed in pch or frequency
- hysteresis - Implements classic 2-threshold hysteresis. Useful for performance controllers.
- KeyOnce - Returns '1' once if a certain key has been pressed or released.
- KeyStay - Returns '1' as long as a certain key is hold.
- LogCurve - Normalised logarithmic curve with variable steepness.
- lowpass - A k-rate smoothing UDO that is useful for averaging performance controller data.
- midiMonitor - Displays midi channel and control number information
- MS2S - Converts a floating point number in the format min.sec to seconds
- PfieldsToTable - Transfers score parameter fields to a function table
- PhsEdge - Reports whether the upper or lower border of a phasor has been reached.
- Scala - Scales an incoming a-signal from a certain range to another range.
- scale - Scales incoming value to user-definable range. Similar to scale object found in popular dataflow languages.
- Scali - Scales an incoming i-variable from a certain range to another range.
- Scalk - Scales an incoming k-signal from a certain range to another range.
- SinesToSSTI - returns a function table with one of the four standard waveforms, produced by the addition of harmonics
- Stayed - Reports if a control signal has stayed at the same value for a certain time.
- StrayElMem - Tests whether a string is contained as an element in an array-string
- StrayGetEl - Gets one element from a string-array
- StrayGetNum - Gets one number from a string-array
- StrayLen - Returns the length of an array-string
- StrayNumLen - Returns the length of numerical elements in an array-string
- StrayNumMem - Tests whether a number is a member of an array-string
- StrayNumSum - Adds the elements in a numerical array-string
- StrayNumToFt - Converts a string-array which just consists of numbers or simple math expressions to a function table
- StrayRemDup - Removes duplicates in an array-string
- StrayRev - Reverses the elements of an array-string
- StraySetEl - Inserts an element in an array-string at a certain position
- StraySetNum - Inserts a number in an array-string at a certain position
- StraySub - Returns a subset of elements in an array-string
- StrNumP - tests whether a string is a numerical string
- TableDump - Prints a function table with formatting options.
- TableDumpSimp - prints the content of a table in a simple way
- TableToSF - writes the content of a table to a soundfile
- TabMem - Looks whether a number is in a function table
- TabPermRand_i - Permutes the values of a function table randomly
- TabRmDp - Removes duplicates from a function table
- tieStatus - Returns the status of a note in a group of tied notes
- Tuner - Tunes a given fundamental to a user-provided scale
- Y_x4p_i - Calcucaltes a Y value from a given X and 2 pairs of X/Y points, at init-time
- Y_x4p_k - Calcucaltes a Y value from a given X and 2 pairs of X/Y points, at k-time
- Uncategorized
- -
- boomerangPointer - Pointer to read a function table forwards then backwards or vice versa.
- filterBank - Defines a bank of bandpass filters in parallel whose outputs can be scaled using a function table.
- linearPointer - Pointer to read a function table linearly, forwards or backwards.
- pvshift - Pitch shifting and spectral stretching with pvs streams
- RecursiveDiskin - Alters kpitch and iskiptime each time it calls itself to create a little bit of texture.
- sampleSlicer - Reads a function table in incremental slices.
- sittinginaroom - A simple,recursive opcode that has pleasant effects. The name pretty much describes what it does.