St. Louis, Missouri
June 18, 2000
June 18, 2000
June 21, 2000
5.167.1 - 5.167.8
Constructing a Time-Varying Multi-Vowel Synthesizer in MATLAB Paul J. Coyne, Jr. Loyola College in Maryland Department of Electrical Engineering and Engineering Science
A digital filter simulation of the vocal cavity, positioned to create a vowel, that was excited by a glottal pulse train with the filter output played through a sound card can be accomplished using MATLAB with a modest effort. The simulation of a time-varying vocal tract that generated sequential vowels, with a natural transition, required the modification of the digital filter coefficients as the glottal pulse train excited the vocal tract model. This paper presents a procedure for the implementation of a pseudo time-varying digital filter that simulated the vocal tract producing sequential vowels. The procedure allowed the controlled movement of the poles associated with one vowel into the correct position for the second vowel. The pole locations of the vowels were represented in polar form using the formant frequencies, scaled by the folding frequency. The radial locations of the poles were arrived at by matching the spectral analysis of the digital filter simulation with the actual vowel spectrum. Since MATLAB does not allow time-varying digital filters, the time scale used for the incremental changes in the digital filter coefficients was chosen to be the glottal pulse period, which was set for a male speaker. The transition interval from one vowel to the next was selected so the listener would sense a natural change. Simulation results were generated for a /u/ - /i/ vowel combination. The M-files necessary for the simulation were included as an Appendix.
This project is a candidate for inclusion in a course applying Digital Signal Processing techniques at the senior or first year graduate level. This project is an extension to a project in Burrus; et al’s book entitled Computer-Based Exercises for Signal Processing Using MATLAB1. In the Applications chapter, a Vowel Synthesis project is included in the Speech Modeling section. A discrete-time system that models the glottal pulse generation by the vocal cords or folds is driven by a periodic train of impulse in MATLAB with a period which can be set to mimic a man, a woman or a child. This glottal pulse train is then passed through a discrete-time all-pole model of the vocal tract. This model has its origin in a concatenation of lossless tubes as a model of the vocal tract2. In this project an eighth-order, all-pole, discrete- time filter is used. The vowel synthesis system is completed by passing the output of the vocal tract model through a model of the radiation of sound passing the lips3. This is accomplished using a highpass FIR filter. The final output vector in MATLAB is then played through a PC sound card using the built-in MATLAB function sound.
Coyne, P. J. (2000, June), Constructing A Time Varying Multi Vowel Synthesizer In Matlab Paper presented at 2000 Annual Conference, St. Louis, Missouri. https://peer.asee.org/8234
ASEE holds the copyright on this document. It may be read by the public free of charge. Authors may archive their work on personal websites or in institutional repositories with the following citation: © 2000 American Society for Engineering Education. Other scholars may excerpt or quote from these materials with the same citation. When excerpting or quoting from Conference Proceedings, authors should, in addition to noting the ASEE copyright, list all the original authors and their institutions and name the host city of the conference. - Last updated April 1, 2015