next STK Formant-Filter Based Vowel Synthesis
up Formant-Filter Based Vowel Synthesis Examples
previous Formant-Filter Based Vowel Synthesis Examples


CLM Formant-Filter Based Vowel Synthesis

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 $0$ has been provided as the first argument to indicate this), 10 seconds long (as specified by the second argument), and of amplitude equal to 10. The optional parameter pulse-freq has been set to 100 Hz (the default is 200 Hz).

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.


next STK Formant-Filter Based Vowel Synthesis
up Formant-Filter Based Vowel Synthesis Examples
previous Formant-Filter Based Vowel Synthesis Examples

``Audio Speech Research Note'', Ryan J. Cassidy, published electronically by author, July 2003.
Download PDF version (audio_speech.pdf)
Download compressed PostScript version (audio_speech.ps.gz)

Copyright © 2003-11-28 by Ryan J. Cassidy.
Please email errata, comments, and suggestions to Ryan J. Cassidy <ryanc@ieee.org>
Stanford University