cl-wav-synth is a wav sample editor. It comes in two parts, the main library for manipulating wav files and a (Mc)CLIM interface with a full lisp listener, a sample pane editor, a spectrum pane editor and a song pane editor.
To run the CLIM CLI interface of cl-wav-synth, you need a lisp implementation* with asdf, McCLIM and the CLIM Listener built in. Then you can load the file load.lisp or edit it for tweaking.
* Tested with CMUCL (GNU/Linux x86, MacOS X), SBCL (GNU/Linux x86 and PPC, MacOS X) and CLISP (GNU/Linux x86 and PPC, MacOS X and MS-Windows)
cl-wav-synth is a wav sample editor. The wav sample editor is driven from the lisp REPL: you can watch immediately the result of each applied functions. cl-wav-synth comes with some effects as echo, delay, pitch...
The spectrum editor is here just for educational purpose. It show the effect of adding sinus together. But it can load spectrum from the sharc project and can be used to produce instruments sounds (the sample amplitude need to be modified to have a real sound).
The song editor is a way to express a song. A song is just a list of events to write on a wav file. cl-wav-synth traverses the song list and evaluates the form of each song-sample, if the result is a wav sample, it is merged in the song wav file.
Older version
Here is a 'complex noise' made with cl-wav-synth. It's build with only one sample (a sea record) pitched down and up and echoed.
Indeed, you can do some more 'conventional' things with cl-wav-synth.
You can find here a copy of the tutorial included in the cl-wav-synth clim interface and available with the 'Tutorial' command
Exported CLI functions and tests
cl-wav-synth is under the LLGPL licence (Lisp Lesser GNU Public License).
You can browse our CVS repository or download the current development tree via anonymous cvs, as described here