Due to recent developments on a project at CCRMA related to sonification of complex data[Ben Tal et al. 2001], it is now possible to synthesize simple vowel sounds using techniques described in §4 with simple scripts written in Common Lisp2. To create and run such scripts, it is first necessary to obtain and install the Common Lisp Music (CLM) package, and then obtain the vowel function, written by Michelle Daniels[Daniels 2001].
Here is a short Lisp script that generates a short vowel sound in RIFF (WAV) file format:
(compile-file "~/audio/speech/vowel/clm_vowel/danielsm/vowel.ins") (load "~/audio/speech/vowel/clm_vowel/danielsm/vowel") (with-sound (:header-type mus-riff :output "~/audio/speech/vowel/clm_vowel/rjc_clm_vowel_ex.wav") (vowel 0 10 10 :pulse-freq 100))The first two lines compile and load the file vowel.ins, which contains the definition of Daniels' vowel instrument (this file may be obtained from Michelle Daniels' CLM vowel site), which, in this example, resides in the author's ~/audio/speech/vowel/clm_vowel/danielsm/ directory. The function with-sound is a CLM routine that generates sound output. The optional parameter header-type has been set to mus-riff to indicate WAV output is desired, and the optional parameter output has been set to the desired file name. Finally, the vowel call within the with-sound function creates a vowel sound starting at the beginning of the file (the value
In order to run the script, it is first necessary to set up the Common Lisp
environment to load the appropriate CLM libraries. Under XEmacs, this may be
accomplished by prepending the bundled
.emacs
file into one's .emacs file, starting XEmacs, and pressing C-x C-l, where C denotes the Ctrl key on the
keyboard.3
The WAV file produced by the script may be heard at
http://www-ccrma.stanford.edu/~rjc/audio/speech/vowel/clm_vowel/rjc_clm_vowel_ex.wav.