Breadcrumb navigation
Csound is a "sound and music computing system". It is a modular synthesizer, possibly comparable to Reaktor. It can be used for sound deisng, synthesizer design, external sound processing and recording, algorithmic and other music composition or as a highly interactive instrument. Csound can read MIDI and OSC and can be connected to many other input and output controllers.
At a glance Csound can appear intimidating. But if you stop being overwhelmed by its tremendous range of capabilities and features, you will see that it can be very straight forward. Although Csound can be used to compose electro-acoustic (algorithmic) music, it can just as easily be played from a keyboard or produce very down to earth effects.
Jeanette has written a few UDOs over the years. A UDO is a User-Defined-Opcode, basically a module with inputs and outputs to control it, process audio by it or listen to its output. There is more information available on the Csound UDO database maintained by Steven Yi. Jeanette's modules include everything from voice processing effects (including autotune-like pitch correction and vocoder), to a shimmer reverb, phasor to 3D biinaural opcodes to be used with three-dimensional scenes.
List of available UDOs and instruments
"Hexacon version 1.0 - a six oscillator drone instrument" (67.73KB) Hexacon features six m_cubicon wavetable oscillators and six LFOs with nine blendable waveshapes. Both oscillators and LFOs can be controlled in unison modes or individually. Even in unison there are spread and deviation parameters. For pleasing performance the oscillators are passed through a nice long reverb. Hexacon is very much inspired by the 4ms SWN (Spherical Wavetable Navigator). For further information see the included README.
"Chord player version 1.0" (7.54KB) A chord generator/player using 43 predefined chords. Chords are chosen by index. The names corresponding to an index can be found with m_chord_get_name. Chords can be transposed by a root note or inverted. There are different note limiting strategies. Chords can be played as MIDI notes or pithces, with optional microtuning support.
"Scale Quantiser 1.1" (6.52KB) This is a set of Csound User Defined Opcodes (UDOs) to quantise both MIDI notes and pitches/frequencies in Hz to a given musical scale. The quantiser comes with 15 scales. Corresponding scale names can now be retrieved. Furthermore a text file with all names is supplied for easier Cabbage design (for listboxes or comboboxes. A demo is of both quantiser opcodes, version info and scale name printing is supplied.
"JBSO Version 1.1" (18.63KB) JBSO is a Csound framework to help in object oriented development. While still relying on the developer to manually follow a few guidelines, it automatically takes care of basic object creation, object counting, ID to name mapping and more. Version 1.1 includes a few bug fixes, error/status handling and introduces macros and constants for better readibility and standardisation.
"Handpan version 3" (18.15KB) This is a (partially) physically modelled handpan designed for live playing. It easily supports user scales, has two striking sounds based on the modwheel position. It's a stereo instrument based on the sound and layout of a Rav Vast by Russian manufacturer Rav Drum. Version 2 defined all scales - if not all keys - that Rav Drum lists on its website, both for Rav Vast (the tongue drum) and the more traditional Rav Pan handpans. It also sports a better README with a list of all scales and better instructions on how to customise and set up the instrument. Version 3 now adds some probability control.
"Vectribution 1.0" (17.39KB) This is a set of vector mixing tools for Csound. These UDOs (User Defined Opcodes) include vector mixers, signals switchers/blenders, circular shiftters, summing mixers and random signal distribution utilities. There are example CSD file showing off every opcode.
"Csound AutoSampler, version 3" (21.22KB) AutoSampler allows you to automatically sample a patch from an external synthesizer and make it into a software sample library. Version 2 automatically create an SFZ file, which can be loaded into many free and commercial samplers. You can sample in mono or stereo, adjust the note intervals to sample, record several velocity layers and even round robins to keep that extra lively feel. Version 3 adds two further samplers: an autosampler which can pause after a given number of notes, to allow retuning an analogue synthesizer, perfect for instruments that don't have perfect keytracking. The third sampler is specially designed to record drum machines. It requires the user to play notes, but allows for tweaking the sound in between recordings. It also allows for round robins, but not for velocity layering. See the documentation for more info.
"an 11-band vocoder and filterbank (version 1.2)" (2.47KB) The VC-110 is an 11-band vocoder, based on the classic design with 11 bandpass filters. It has variable Q - or bandwidth - and a formant shift control. Furthermore it offers three modes of operation. Normal vocoding: the modulator excites the carrier. Here the highest band is either taken from the modulator itself or an internal white noise source. In carrier mode the carrier is passed through the static filterbank. In modulator mode, the Modulator is passed through the filterbank. The formant shift control can be used to linearly shift all filters.
"m_chorus UDO version 1.1" (1.93KB) This is a simple mono to stereo chorus inspired by the Roland SDD-320 or Dimension C chorus, implmeneted as a Csound User Defined Opcode. A demo is included in the zip file.
"Drummalogue version 1.0" (41.06KB) Drummalogue is a collection of ten Csound User Defined Opcodes giving you ten electronic drum sounds. Each drum instrument has up to nine sound parameters, plus a trigger input and an accent control. The kick, rimshot, snare, toms, clave, shaker and cowbell can resemble classic and very well-known drum sounds, as well as holding their own ground. The clap, hihats and cymbal/crash are unique instruments with their own character.
"m_bell" (777.53KB) This is a collection of Csound UDOs (User Defined Opcodes) to model/mimic old (60s-70s) Bell/AT&T telephone calls. This includes call progress tones, pulse dialing, line noise, network internal multifreqeuncy routing tones and a phone speaker. An example is supplied showing a complete call.
"m_samplebank - a Csound samplebank" (455.87KB) This samplebank allows you to load audiofiles from one folder into several tables. You can then play the samples looped or oneshot by index, auto-incrementing, in round robin fashion (in groups) or as a wavesequence. All playback option have pitch control, the wavesequence also gives control over the rate of new samples to be played. You can play samples forwards, backwards or alternatingly. Find documentation in the UDOs and a comprehensive example in samplebank.csd with further explanations.
"The Csound m_looper" (5.44KB) This is an ftable based looper and sampler. It allows you to sample a sound, play it back with pitch control and optional repitition count and even save the recorded sample to disk. The the included .udo files and loop.csd for documentation and an example.
"m_spectrip additive oscillator UDO, version 0.5" (3.81KB) m_spectrip is a Csound UDO providing an additive oscillator with stereo spread, spectrum tilt, bright, harmonic spread and a musical comb filter. There is a short demonstration on YouTube.
"Chroming the dice - Csound sources" (440.77KB) Here are the Csound sources, including all necessary files, for "Chroming the dice".
"m_cubicon 0.5 - a 3D morphing wavetable oscillator" (205.59KB) m_cubicon is a Csound UDO (User Defined Opcode) that holds a three-dimensional cube of waves. The user can browse the waves in all directions, either morphing seamlessly or stepping through them. Eight cubes - as well as all the source wave forms/spectra - are supplied with the opcode, as well as an experimental utility to create your own waves from audiofiles and a small demonstration of the oscillator.
"m_3d_suite, version 0.8" (9.51MB) m_3d_suite contains useful helper utilities to create binaural three-dimensional scenes in Csound. That means, you can listen to them on headphones. There are tools to design rooms, move audio around, create an atmosphere. But also effects like DTMF dial tone, a siren, an engine and more. Get cinematic and play.
"In a room - Csound sources" (94.04MB) Here are the Csound sources, inclusive of all used samples, for the eponymous piece. You're welcomee to look, adapt code and use the samples, except for the voice recordings.
"m_reverb UDO, version 0.5" (2.06KB) m_reverb is a reverberator for Csound with optional shimmer and a freeze function.
"The Risset Filter" (2.97KB) This Csound module implements a multibgandpass filter, whose frequencies are controlled by a Risset glissando. A Risset glissando is an acoustic illusion, suggesting a steadily rising - or falling - tone. If the rate is slow, you will get this effect, if the rate is fast, the filter sounds like a specialist phaser. This might be THE effect for your riser!
"Control Signal Quantiser" (2.00KB) The control Signal Quantiser is a Csound UDO allow to quantise a control signal linearly or by factors or to a predefined musical scale, introducing more - or less - musically usable stepping. The quantiser is not only useful for signals controlling pitches. Give it a try!
"Aeroacoustic Physical Model for Csound" (2.56KB) The m_aeroacoustic User defined opcode (UDO) give a simplifiede physical model of wind blowing past cylinders (wires, poles, towers). The mode was developed by Rod Selfridge at Queen Mary University of London for his thesis.
"Csound SWONDER connector" (19.25KB) This code connects Csound to the wavefield synthesis software SWONDER. The example allows I/O between the two software packages.
"The Voice Processor UDOs" (17.40KB) These Csound user defined opcodes (UDOs) give you a pitch correction module, which corrects to the nearest note on a western scale, an autotune like plugin, which allows you to control the desired pitch by a MIDI keyboard and an almost classical vocoder.
"The Frequency Inverter" (330.10KB) Inspired by a "dream" of a fellow musician, the Frequency Inverter was born, it mirrors frequencies around a centre frequency, producing interesting sound textures.
"A controllable formant filter" (5.04KB) m_formant_filter is another user defined opcode (UDO) for Csound, bringing a fully controllable formant filter designed for use in a MIDI environment with keytracking and some other nice features.