home ~ back

Michael Edwards - Software - Common Lisp Music

Various instruments and functions for the CLM digital signal processing and synthesis environment. For more detailed descriptions of functionality see the inline comments in the code. All files, whether .ins or .lsp, are plain ASCII text files, so if your browser or operating system is unhappy when you click on them, consider right-clicking (or whatever you have to do) and downloading them, perhaps saving with another extension if necessary.


splinter

Instrument for multi-voice granulation of a sound file with sampling-rate conversion for each separate voice.


zeroexpand

A granular synthesis/time stretching instrument which uses a zero-crossing algorithm to avoid having to envelope the grains.


text-thumbs

Turn any text into the sound of someone texting (SMS) the words on a touchtone phone.


moog

Instrument to place a moog low-pass filter emulation and SVF high-pass over a soundfile. Auto-crossfade functions too.


samp1

A 'sampling' instrument: performs high-quality sampling-rate conversion (transposition) of a mono sound file.


samp2

Similar to samp1 but with extensions by Jules rawlinson and multi-channel support.


mexpand

A simple time-stretching instrument.


multi-loops

Attempts to show an interesting use of loops as well as an unpredictable though formally repeatable sequence of events.


panning

Calculate constant power panning scalers to avoid the "hole in the middle" problem of stereo panning.


plotter

A helper program for auto-plotting and displaying 2-D data using gnuplot.


get-spectrum

get-spectrum returns, as a list, the most prominent frequencies in a sound file.


convolve

Convolution of one sound file by another for cross-synthesis/morphing purposes.


formants

Apply an arbitrary number of formant filters to an optionally transposed sound file.


add-noise-filtered

Arbitratily randomize the samples of a sound file and filter the result.


pvoc

Modifications to a phase vocoder instrument originally by Michael Klingbeil.


track-rms

Prints out the rms of a soundfile at an interval of every seconds.


env

Various envelope manipulation functions.


trim-silence

Writes a new sound file with the silence at the beginning of the input file cut off.