<!DOCTYPE html> <!--Converted with LaTeX2HTML 2002-2-1 (1.71) original version by: Nikos Drakos, CBLU, University of Leeds * revised and updated by: Marcus Hennecke, Ross Moore, Herb Swan * with significant contributions from: Jens Lippmann, Marek Rouchal, Martin Wilck and others --> <HTML> <HEAD> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <TITLE>Simple formant generator</TITLE> <META NAME="description" CONTENT="Simple formant generator"> <META NAME="keywords" CONTENT="book"> <META NAME="resource-type" CONTENT="document"> <META NAME="distribution" CONTENT="global"> <META NAME="Generator" CONTENT="LaTeX2HTML v2002-2-1"> <META HTTP-EQUIV="Content-Style-Type" CONTENT="text/css"> <LINK REL="STYLESHEET" HREF="book.css"> <LINK REL="next" HREF="node100.html"> <LINK REL="previous" HREF="node98.html"> <LINK REL="up" HREF="node97.html"> <LINK REL="next" HREF="node100.html"> </HEAD> <BODY > <!--Navigation Panel--> <A NAME="tex2html2028" HREF="node100.html"> <IMG WIDTH="37" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="next" SRC="next.png"></A> <A NAME="tex2html2022" HREF="node97.html"> <IMG WIDTH="26" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="up" SRC="up.png"></A> <A NAME="tex2html2016" HREF="node98.html"> <IMG WIDTH="63" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="previous" SRC="prev.png"></A> <A NAME="tex2html2024" HREF="node4.html"> <IMG WIDTH="65" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="contents" SRC="contents.png"></A> <A NAME="tex2html2026" HREF="node201.html"> <IMG WIDTH="43" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="index" SRC="index.png"></A> <BR> <B> Next:</B> <A NAME="tex2html2029" HREF="node100.html">Two-cosine carrier signal</A> <B> Up:</B> <A NAME="tex2html2023" HREF="node97.html">Examples</A> <B> Previous:</B> <A NAME="tex2html2017" HREF="node98.html">Wavetable pulse train</A> <B> <A NAME="tex2html2025" HREF="node4.html">Contents</A></B> <B> <A NAME="tex2html2027" HREF="node201.html">Index</A></B> <BR> <BR> <!--End of Navigation Panel--> <H2><A NAME="SECTION001052000000000000000"> Simple formant generator</A> </H2> <P> The next three examples demonstrate the sound of the varying pulse width, graph its spectrum, and contrast the waveshaping pulse generator. Skipping to Example F05.ring.modulation.pd (Figure <A HREF="#fig06.14">6.15</A>), we show the simplest way of combining the pulse generator with a ring modulating oscillator to make a formant. The pulse train from the previous example is contained in the <TT>pd pulse-train</TT> subpatch. It is multiplied by an oscillator whose frequency is controlled as a multiple of the fundamental frequency. If the multiple is an integer, a harmonic sound results. No attempt is made to control the relative phases of the components of the pulse train and of the carrier sinusoid. <P> <DIV ALIGN="CENTER"><A NAME="fig06.14"></A><A NAME="6976"></A> <TABLE> <CAPTION ALIGN="BOTTOM"><STRONG>Figure 6.15:</STRONG> Excerpt from example F05.ring.modulation.pd combining ring modulation with a stretched wavetable pulse generator</CAPTION> <TR><TD><IMG WIDTH="352" HEIGHT="285" BORDER="0" SRC="img614.png" ALT="\begin{figure}\psfig{file=figs/fig06.14.ps}\end{figure}"></TD></TR> </TABLE> </DIV> <P> The next example, F06.packets.pd (Figure <A HREF="#fig06.15">6.16</A>), shows how to combine the stretched wavetable pulse train with a sampled sinusoid to realize movable formants, as described in Section <A HREF="node95.html#sect6.carrier">6.3</A>. The pulse generator is as before, but now the carrier signal is a broken sinusoid. Since its phase is the fundamental phase times the center frequency quotient, the sample-to-sample phase increment is the same as for a sinusoid at the center frequency. However, when the phase wraps around, the carrier phase jumps to a different place in the cycle, as was illustrated in Figure <A HREF="node95.html#fig06.07">6.7</A>. Although the bandwidth quotient <!-- MATH ${\omega_b}/\omega$ --> <IMG WIDTH="38" HEIGHT="32" ALIGN="MIDDLE" BORDER="0" SRC="img588.png" ALT="${\omega_b}/\omega$"> must be at least one, the center frequency quotient <!-- MATH ${\omega_c}/\omega$ --> <IMG WIDTH="38" HEIGHT="32" ALIGN="MIDDLE" BORDER="0" SRC="img587.png" ALT="${\omega_c}/\omega$"> may be as low as zero if desired. <P> <DIV ALIGN="CENTER"><A NAME="fig06.15"></A><A NAME="6986"></A> <TABLE> <CAPTION ALIGN="BOTTOM"><STRONG>Figure 6.16:</STRONG> Using stretched wavetable synthesis to make a formant with movable center frequency.</CAPTION> <TR><TD><IMG WIDTH="361" HEIGHT="373" BORDER="0" SRC="img615.png" ALT="\begin{figure}\psfig{file=figs/fig06.15.ps}\end{figure}"></TD></TR> </TABLE> </DIV> <P> <HR> <!--Navigation Panel--> <A NAME="tex2html2028" HREF="node100.html"> <IMG WIDTH="37" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="next" SRC="next.png"></A> <A NAME="tex2html2022" HREF="node97.html"> <IMG WIDTH="26" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="up" SRC="up.png"></A> <A NAME="tex2html2016" HREF="node98.html"> <IMG WIDTH="63" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="previous" SRC="prev.png"></A> <A NAME="tex2html2024" HREF="node4.html"> <IMG WIDTH="65" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="contents" SRC="contents.png"></A> <A NAME="tex2html2026" HREF="node201.html"> <IMG WIDTH="43" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="index" SRC="index.png"></A> <BR> <B> Next:</B> <A NAME="tex2html2029" HREF="node100.html">Two-cosine carrier signal</A> <B> Up:</B> <A NAME="tex2html2023" HREF="node97.html">Examples</A> <B> Previous:</B> <A NAME="tex2html2017" HREF="node98.html">Wavetable pulse train</A> <B> <A NAME="tex2html2025" HREF="node4.html">Contents</A></B> <B> <A NAME="tex2html2027" HREF="node201.html">Index</A></B> <!--End of Navigation Panel--> <ADDRESS> Miller Puckette 2006-12-30 </ADDRESS> </BODY> </HTML>