This is a vowel synthesizer based on a simple tube model for the vocal tract. It's developed by Zhanao Fu for LIN228 Phonetics tutorials (Fall 2020). It features customizable settings for the number of tubes, the length and radius of each tube, the frequency and the closure period of vocal folds' vibration. You can also try a more realistic online interactive dynamic model Pink Trombone by Neil Thapen.
The glottal source is generated with a polynomial model from Rosenberg (1971). It is assumed that the tubes are loseless, and no air is going back through the mouth or the glottis. The transfer function of the filter is calculated with the Algebrite library. The FFTs are done with the DSP.js library. The color scale for the spectrograms is generated with the chroma.js library. The github repository for this synthesizer is here.
Check out this short series of introductions to the acoustics of speech production if you don't know what this is all about.
The MIT License (MIT)Copyright (c) 2020 Zhanao Fu