cl-wav-synth

Express noises as you think

Introduction

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.

Installation

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)

Description

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.

Download

ChangeLog

Screenshots

Animations

Older version

Example

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.

Tutorial

You can find here a copy of the tutorial included in the cl-wav-synth clim interface and available with the 'Tutorial' command

Documentation

Exported CLI functions and tests

Licence

cl-wav-synth is under the LLGPL licence (Lisp Lesser GNU Public License).

Mailing Lists

CVS

You can browse our CVS repository or download the current development tree via anonymous cvs, as described here

Valid XHTML 1.0 Strict